共计 744 个字符,预计需要花费 2 分钟才能阅读完成。
环境
CentOS6.6 X86_64
背景
忘记 root 怎么办,忘记初始化 MySQL 时生成的随机密码怎么办,或者压根就没注册那随机密码,别告诉我清除 data 下所有数据,重新初始化,当然你非要这么任性也可是可以的。
不扯了,下面是正题。
参考
http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html
操作
官方文档上有好几种方法,我看了下,你就记住下面我说的一种吧,其他的你自己试吧,好不好使我不管
使用 –skip-grant-tables 启动 mysql server
bin/mysqld_safe –user=mysql01 –skip-grant-tables –skip-networking &
两个选项是意思是
–skip-grant-tables 跳过授权
–skip-networking 不允许远程网络连接
skip-networking 可以不用,防止其他用户远程连接操作数据库,用不用看实际情况。就当多学一个选项吧。
客户端登录
bin/mysql -uroot -p
update mysql.user set authentication_string=password(‘root’), password_expired=’N’ where user=’root’;
flush privileges;
修改密码如果你还记得 ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘root’;
最好不要用,有可能提示匿名用户不允许修改密码之类的。
说明
所有相关的目录,链接,参数等请根据实际情况自行调整。
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-07/145344.htm