阿里云 linux 找回mysql root密码
不小心手贱修改了密码,而且使用phpMyAdmin这种自动生成密码,又没记录密码,真实醉了
搜了半天,问题多多,想过回滚磁盘到昨天,在阿里云已经买了付费找密码
最后终于自己解决了,其实很简单
cd /ect
vi my.cnf
在[mysqld]末尾加上 skip-grant-tables
我是注释的,因为我已经改回密码了,当然要注释了。
然后cd init.d
mysqld restart
出现出错
Can't find messagefile /usr/share/mysql/english/errmsg.sys
就是因为这个问题,卡了我2小时,我都要回滚磁盘了,我买密码找回服务了。
如果你也遇到这个问题,不要惊慌。
首先网上有人说让你下载mysql包,找对应版本,覆盖同名errmsg.sys,这个就不要尝试了,解决不了。当你遇到这个报错的时候,很多情况是你误改了密码,其实你的mysql一切正常。
只是mysqld 没找到真正你mysql的安装位置,找到你的mysql安装位置,在[mysqld]下加上
basedir=/alidata/server/mysql
我是安装在这个目录下,然后我就解决了。能重启mysqld了
那么你的mysql安装在哪里呢?
使用ps -ef |grep -i mysql
找到你mysql安装位置,在[mysqld]下加上basedir=你的mysql路径
wq! 保存my.cnf
终于可以 mysqld restart 不报错了,整个世界终于干净了。
然后 mysql
提示还是需要输入密码
真实崩溃。。。。
万般无奈下,使用mysqld stop
再 mysqld start
然后再mysql
哈哈,无密码进入mysql
>use mysql;
>update user set password=password('12345') where user='root';
搞定了。
我真得开心吗? 我觉得太菜了!!