新版本MySQL的明码批改形式

1.5.7后的版本批改明码的代码如下:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '批改后明码';

查看本机 MySQL 的版本号:

select version() from dual;

因为过后装docker版MySQL的时候没指定版本,所以装的MySQL是 8.0的新版本,导致始终更新账号密码报错

上面是5.7版本的批改形式

MySQL批改初始密码三种办法:

办法一:

1、应用空的初始密码登录mysql账号:

mysql-uroot -p

2、批改root明码:

SETPASSWORD = PASSWORD('123456');

办法二:

1、应用空的初始密码登录mysql账号:

mysql-uroot -p

2、批改root明码:

mysqladmin -u root password '123456'

办法三:

1、应用空的初始密码登录mysql账号:

mysql-uroot -p

2、批改root明码:

mysql> update user set Password=password("123456") where User='root';
Query OK, 4 rows affected (0.01 sec)Rows matched: 4  Changed: 4  Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.04 sec)
mysql> select Host,User,password from user where user='root';
+-----------------------+------+-------------------------------------------+| Host                  | User | password                                  |+-----------------------+------+-------------------------------------------+| localhost             | root | *5626ED34B75C6C508BA2A3D0A4F6E4C58823138C || localhost.localdomain | root | *5626ED34B75C6C508BA2A3D0A4F6E4C58823138C || 127.0.0.1             | root | *5626ED34B75C6C508BA2A3D0A4F6E4C58823138C || ::1                   | root | *5626ED34B75C6C508BA2A3D0A4F6E4C58823138C |+-----------------------+------+-------------------------------------------+4 rows in set (0.00 sec)