MySQL8.0.16 account password experimental one case of double

Starting MySQL 8.0.14, to allow the user account has a dual password, designated as primary and secondary passwords password.

Dual password function can be performed seamlessly change the credentials in the following scenarios:

There are a lot of MySQL server system, may be involved in master-slave replication

A plurality of application servers connect to different MySQL

Must conduct regular account password to connect to the server application for change 

Experiments are as follows: 

mysql version:

mysql>select version();

+-----------+

| version() |

+-----------+

| 8.0.16    |

+-----------+

1 row in set (0.00 sec)

mysql>create user root@'%' identified by '123456';

Query OK, 0 rows affected (0.25 sec)

mysql>grant all privileges on *.* to root@'%';

Query OK, 0 rows affected (0.10 sec)

mysql>alter user root@'%' identified by 'root' RETAIN CURRENT PASSWORD;

Query OK, 0 rows affected (0.28 sec)

Open another session:

Zhengzhou Women's Hospital: http: //byby.zztjyy.com/zztjyy///

Two password can log:

# mysql -uroot -p123456 -h 192.168.140.52

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 21

Server version: 8.0.16 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>\q

Bye

[root@test2 ~]# mysql -uroot -proot -h 192.168.140.52

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 22

Server version: 8.0.16 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>\q

Bye

丢弃旧密码:

mysql>alter user root@'%' DISCARD OLD PASSWORD;

Query OK, 0 rows affected (0.12 sec)开另外一个会话,用旧密码登录报错:

# mysql -uroot -p123456 -h 192.168.140.52

mysql: [Warning] Using a password on the command line interface can be insecure.

ERROR 1045 (28000): Access denied for user 'root'@'192.168.140.52' (using password: YES)

新密码可以登录:

# mysql -uroot -p123456 -h 192.168.140.52

mysql: [Warning] Using a password on the command line interface can be insecure.

ERROR 1045 (28000): Access denied for user 'root'@'192.168.140.52' (using password: YES)

[root@test2 ~]# 

[root@test2 ~]# 

[root@test2 ~]# mysql -uroot -proot -h 192.168.140.52

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 27

Server version: 8.0.16 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>\q

Bye

备注:

RETAIN CURRENT PASSWORD保留帐户当前密码作为其辅助密码,替换任何现有的二级密码。新密码将成为主密码,

但客户端可以使用该帐户使用主密码或辅助密码连接到服务器。

对于ALTER USER, DISCARD OLD PASSWORD丢弃二级密码(如果存在)。该帐户仅保留其主密码,客户端可以使用

该帐户仅使用主密码连接到服务器。


Guess you like

Origin blog.51cto.com/14337177/2407422