修改mysql的root密码后还不能登陆怎么办?

好奇怪的一天,上午腾讯QQ空间挂掉,下午全国网络挂掉,

我的mysql,早上挂掉了,重启后,下午又挂掉了,并且mysql进程死掉就起不来了,想修复数据库发现root都进不去了。

以为被黑了,结果改密码也进不去。mysql启动的时候没有什么错误,跑着跑着就死了。

有时候日志里有

MySQL: Incorrect information in file: ‘.\mysql\tables_priv.frm’

或者很多行
forcing close of thread * user:’user1′
forcing close of thread * user:’user2′
…………

半夜了,我也要记录一下,这个问题解决的太离谱了。

MySQL密码正确却无法本地登录怎么办?
即使是从服务器上登录也提示
ERROR 1045 (28000): Access denied for user ‘root’@’127.0.0.1’ (using password: YES)
密码明明正确,却登录不了。

修改mysql root密码 修改很多遍了
方法
在mysql的bin目录 mysqld –skip-grant-tables
启动mysql
最好是加上具体的my.ini的地址 并且加上 –console
mysqld –defaults-file=”E:\MySql\MySQL Server 5.1\my.ini” –console –skip-grant-tables
启动mysqld
然后,修改密码 update mysql.user set password=password(‘新密码’) where User=”root” ;

这样修改 可以提示 1行 生效,密码确实修改成功了。
但是登录的时候 总是提示 ERROR 1045 (28000): Access denied for user ‘root’@’127.0.0.1’ (using password: YES)
仔细比较
跟另一台的差别
另一台 如果输入错误密码 会提示 ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
一个是 127.0.0.1 一个是 localhost
就这个差别。
照着复制一份出来 user表里 再加一行:把localhost 改成 %
这样 127.0.0.1 就没问题了。

其实有人可能会有 跟我相反的情况,比如 user表里有127.0.0.1 没有localhost 这样也对应加一个应该就可以了。

威海养蜂人 ooo.max.ooo

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据