mysql的root怎么样都无法重置密码(操作不当导致)

在/etc/my.cnf 添加了skip-grant-tables  以安全模式免密码登陆时没有问题(mysql的库是在),然后在mysql里面重置了密码后退出,将刚才在/etc/my.cnf的配置去掉后重启mysql服务,用重置了的正确密码一直提示密码不正确。。。后来发现不加skip-grant-tables的配置也可以无密码登陆Mysql,show database;还要丢失mysql的库

mysql的排障之二_第1张图片

mysql的排障之二_第2张图片

mysql的排障之二_第3张图片

mysql的排障之二_第4张图片

通过忘记密码,修改密码的方法
(1)编辑mysql主配置文件 my.cnf 
# vim /etc/my.cnf 在[mysqld]字段下添加参数 skip-grant 
(2)重启数据库服务 
service mysqld restart 
(3)这样就可以进入数据库不用授权了
# /usr/local/mysql/bin/mysql -uroot 
(4)修改相应用户密码
> use mysql;
> update user set password=password('your password') where user='root'; 
> quit;

mysql的排障之二_第5张图片

mysql的排障之二_第6张图片

原因:把mysql库里面的user表给损坏了,数据丢失了。 解决办法:先把mysql库重命名,然后重新初始化一下。再重新重置一下密码登录就成功了

mysql的排障之二_第7张图片