第一次安装完percona5.7.11,遇到root用户登录数据库就需要输入密码的问题(这是5.7root账号安全机制)
网上有人说在/root/.mysql_secret文件中有root账号的默认密码,但是我没有发现这个文件,于是只能暴力破解了。
1、修改/etc/my.cnf文件,在[mysqld]下面添加skip-grant-tables并重启
登录:
[root@trcloud-gtt-dw ~]# mysql -uroot -p
Enter password:
这里直接回车
2、修改数据字段信息
mysql>update mysql.user set authentication_string=password(‘123456‘) where user=‘root‘ ; (5.7以后以前的password字段改成了authentication_string)
mysql>flush privileges;
3、删除/etc/my.cnf文件中的skip-grant-tables并重启
登录:
[root@trcloud-gtt-dw ~]# mysql -uroot -p
Enter password:(输入刚设置的密码)
第一登录需要后重新设置密码才能进行数据库操作
mysql>set password=password(‘123456‘)
注:除了修改/etc/my.cnf文件的方式,也是可以用关闭数据使用mysqld_safe --skip-grant-tables & mysql -uroot -p进入数据库修改root密码,两中方法原理一样,操作方式不同而已
本文出自 “梦想照进现实” 博客,请务必保留此出处http://lookingdream.blog.51cto.com/5177800/1886769
原文地址:http://lookingdream.blog.51cto.com/5177800/1886769