mysql密码修改限制怎么解_mysql密码修改限制解除后修改教程

来源:这里教程网 时间:2026-02-28 20:21:44 作者:

MySQL密码修改限制通常出现在安装后默认配置中,尤其是某些Linux发行版或集成环境(如WAMP、XAMPP)会设置临时密码或禁止远程修改。解除限制并成功修改密码需按步骤操作,以下是具体方法。

1. 停止MySQL服务

要修改密码,先停止正在运行的MySQL服务,避免冲突。

Linux系统:执行命令
sudo systemctl stop mysql
sudo service mysql stop
Windows系统:打开“服务”管理器,找到 MySQL 服务,右键选择“停止”;或使用命令
net stop mysql

2. 跳过权限验证启动MySQL

以跳过权限表的方式启动MySQL,允许无需密码登录。

在终端或命令行中进入MySQL的bin目录,例如:
/usr/local/mysql/bin
C:\xampp\mysql\bin
执行以下命令启动MySQL(不加载权限检查):
mysqld --skip-grant-tables --shared-memory
保持该窗口运行,另开一个终端进行后续操作

3. 登录MySQL并修改密码

此时可无密码登录MySQL,直接进入修改密码流程。

新开终端,输入:
mysql -u root -p
,回车后直接进入MySQL命令行
执行以下命令切换到系统数据库:
use mysql;
根据MySQL版本不同,修改密码方式略有差异: MySQL 5.7及以上版本:
UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root';
MySQL 8.0+ 版本注意:不再使用 PASSWORD() 函数,应使用:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
若需修改所有主机访问权限的用户,也可更新
'root'@'%'
刷新权限使更改生效:
FLUSH PRIVILEGES;

4. 重启MySQL服务

完成密码修改后,正常重启MySQL服务。

先关闭之前用
--skip-grant-tables
启动的进程(Ctrl+C)
正常启动MySQL服务: Linux:
sudo systemctl start mysql
Windows:
net start mysql
或通过服务管理器启动
使用新密码登录测试:
mysql -u root -p

基本上就这些。关键是跳过权限表登录后,用正确的SQL语句更新密码字段,并注意版本差异。操作完成后记得关闭调试模式,避免安全风险。整个过程不复杂但容易忽略版本语法区别。

相关推荐