目录
1.运行 net stop mysql 时提示“服务名无效”
1. 停止 MySQL 服务
首先,停止 MySQL 服务:
Linux:
sudo systemctl stop mysql
Windows:
使用服务管理器或命令行:net stop mysql
2. 以跳过权限检查的方式启动 MySQL
启动 MySQL 并跳过权限检查:
Linux:
sudo mysqld_safe --skip-grant-tables &
Windows:
找到 MySQL 安装目录,运行:mysqld --skip-grant-tables
3. 连接到 MySQL
使用 root 用户连接到 MySQL 服务器:
mysql -u root
4. 更新 root 用户密码
在 MySQL 提示符下,选择 mysql
数据库并更新密码:
USE mysql;
-- MySQL 5.7.6 及以上版本
UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root';
-- MySQL 5.7.5 及以下版本
UPDATE user SET password=PASSWORD('新密码') WHERE User='root';
刷新权限并退出:
FLUSH PRIVILEGES;
EXIT;
5. 重启 MySQL 服务
重启 MySQL 服务以应用更改:
Linux:
sudo systemctl start mysql
Windows:
net start mysql
6. 使用新密码登录
使用新密码登录 MySQL:
mysql -u root -p
注意事项
确保新密码足够安全。
在生产环境中操作前,建议备份数据。
通过这些步骤,你可以成功重置 MySQL 密码。
一些错误情况及解决方法
1.运行 net stop mysql
时提示“服务名无效”
查找 MySQL 服务名称
打开“服务”管理器:
按
Win + R
,输入services.msc
,然后按回车。或者在任务栏搜索框中输入“服务”并打开。
在服务列表中找到 MySQL 服务,通常名称可能是:
MySQL、MySQL80、MySQL57、
或者其他自定义名称。
记下正确的服务名称。
2. “服务”管理器中无MYSQL
按 Win + R
,输入cmd ,进入MySQL的bin目录 ,运行命令:
mysqld.exe install
运行结果为:Service successfully installed。此时再查看计算机服务项,就有MySQL服务了。
直接双击MySQL服务,点击启动即可启动MySQL服务。
3.datadir 数据目录
如果 data
目录不存在,可以手动创建:
在
C:\Program Files\MySQL\MySQL Server 8.2\
下新建一个名为data
的文件夹。确保 MySQL 服务有权限访问该目录:
右键点击
data
文件夹,选择“属性”。切换到“安全”选项卡,确保
NETWORK SERVICE
或MySQL
用户有完全控制权限。