MySQL 修改 user 表后无法登录

MySQL 修改 user 表后无法登录

温馨提示:本文最后更新于2025-10-15 05:16:42,某些文章具有时效性,若有错误或已失效,请在下方留言

修改my.cnf文件

打开my.cnf文件

vim /etc/my.cnf

把 sql-mode 的STRICT_TRANS_TABLES去掉

修改sql-mode
修改sql-mode

停止MySQL服务

输入以下的命令,停止MySQL服务。

systemctl stop mysqld.service
停止MySQL服务
停止MySQL服务

安全模式启动MySQL

输入以下的命令,以安全模式启动MySQL

mysqld_safe --skip-grant-tables --skip-networking &
安全模式启动MySQL
安全模式启动MySQL

登录MySQL

另开一个终端,在终端中输入以下命令,进入MySQL。

mysql -uroot -p

直接回车,无需输入密码

登录MySQL
登录MySQL

恢复root账户权限

# 使用mysql实例
mysql> use mysql;
Database changed
# 查看有多少表
mysql> show tables;
# 更新root用户
mysql> update user set host='localhost' where user='root';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0
# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

停止mysql服务

ps aux|grep mysql
kill -9 [线程ID]
停止MySQL服务
停止MySQL服务

恢复my.cnf文件

打开my.cnf文件

vim /etc/my.cnf

把 sql-mode 的STRICT_TRANS_TABLES加上

修改sql-mode
修改sql-mode

重启MySQL服务

使用命令或者在宝塔面板中,重启MySQL服务即可。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容