忘记 mysql 数据库连接密码(解决方案)

本文详细介绍了当忘记MySQL数据库密码时,如何通过命令行操作来重置密码。步骤包括停止MySQL服务、跳过权限表认证、连接数据库、修改root用户的密码、刷新权限、重启服务等。建议初学者参照图文教程进行操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


由于 优快云 的目录只在固定地方显示,并不是很方便阅读,又占空间,所以本文章已同步更新到个人博客上,在个人博客上的文章,有滑动侧边目录栏,阅读体验更加,而且文章的样式也更为丰富,推荐各位同学前往我的个人博客读阅。

个人博客地址:忘记 mysql 数据库连接密码,怎么办? | 东Ge博客


忘记 mysql 数据库连接密码



简单粗暴:直接修改密码。

本次操作所有需要用到的密令行:

bin>net stop mysql

bin>mysqld --skip-grant-tables

bin>mysql

mysql>use mysql

mysql>update user set password=password(“123456”) where user=“root”;

(或者:update mysql.user set authentication_string=password(‘root’) where user=‘root’ ;)

mysql>flush privileges;

mysql>quit

bin>mysqladmin -u root -p shutdown

bin>net start mysql

如果你不是大神,看不懂这命令行是干嘛用,请直接看下面的图文详解。

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

1.进入 mysql 的 bin 目录下,打开 cmd ,关闭 mysql 数据库。

2.输入 mysqld --skip-grant-tables 回车。

(–skip-grant-tables 的意思是启动 MySQL 服务的时候跳过权限表认证)

注意:这时候,刚刚打开的 cmd 窗口已经不能使用了。重新再 bin 目录下打开一个新的 cmd 窗口进行下面的操作。

3.重新打开一个 cmd 窗口。输入 mysql 回车。下面是成功后的显示图。

4.连接权限数据库:use mysql

5.修改数据库连接密码:

update user set password=password(“123456”) where user=“root”;

注释:这里的“123456”为新密码,请根据自己的需求,输入新的密码。注意语句后面的“;”不能遗漏。

6.刷新权限(必须步骤)

flush privileges;

7.退出 mysql

8.修改 root 密码后,需要执行下面的语句和新修改的密码。不然开启 mysql 时会出错。

mysqladmin -u root -p shutdown

9.重启 mysql

### 如何重置 MySQL root 密码忘记 MySQL 的 `root` 用户密码时,可以按照以下方法重新设置密码: #### 1. 停止 MySQL 服务 首先需要停止正在运行的 MySQL 服务。这可以通过操作系统的服务管理工具完成。例如,在 Linux 上可以使用以下命令停止 MySQL 服务: ```bash sudo systemctl stop mysql ``` 或者在某些系统上可能需要使用: ```bash sudo service mysql stop ``` 此步骤确保当前没有任何实例占用 MySQL 数据库[^1]。 #### 2. 启动 MySQL 安全模式 启动 MySQL 并跳过权限验证表加载的过程。这样可以让用户无需提供密码即可访问数据库修改配置。执行如下命令: ```bash mysqld_safe --skip-grant-tables & ``` 该命令会在后台以安全模式启动 MySQL 实例[^2]。 #### 3. 登录到 MySQL 控制台 通过无密码方式登录到 MySQL 控制台: ```bash mysql -u root ``` #### 4. 修改 root 密码 进入控制台后,切换至 `mysql` 数据库,并更新用户的密码字段。以下是具体的操作过程: ```sql USE mysql; UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES; ``` 注意:如果使用的 MySQL 版本较高(如 8.x),则应改为以下语句: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES; ``` 上述 SQL 脚本用于更改指定账户的认证字符串或直接设定新密码[^3]。 #### 5. 关闭并重启 MySQL 服务 退出 MySQL 控制台 (`EXIT;`) ,终止先前的安全模式进程 (通常 kill 掉对应的 PID),最后恢复正常启动 MySQL 服务: ```bash sudo systemctl start mysql ``` 完成后尝试用新设好的密码连接测试是否成功。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值