在安装了新的mysql 5.7后,我遇到root pw问题。
我正在尝试使用mysqld_safe --skip-grant-tables &
启动mysql并进入mysql mysql -u root
尝试使用
设置密码root@localhost [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
root@localhost [(none)]> ALTER USER 'root@localhost' IDENTIFIED BY 'password';
我得到了这个错误;
ERROR 1396 (HY000): Operation ALTER USER failed for 'root@localhost'@'%'
我也尝试过这种方式;
root@localhost [mysql]> update user set authentication_string=password('password') where user='root';
Query OK, 0 rows affected, 1 (0.00 sec)
Rows matched: 0 Changed: 0 Warnings: 1
两个都不起作用请帮助..
答案 0 :(得分:1)
尝试此操作(用户和主机必须分为''):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
如果您使用DML更改了privelages:
update user set authentication_string=password('password') where user='root';
你必须跑:
FLUSH PRIVILEGES;