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


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

个人博客地址:忘记 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` 用户密码的情况,可以通过多种方式来重置该密码。以下是几种常见且有效的方法。 #### 方法一:通过跳过权限表重置密码 为了能够无需提供现有密码就可访问 MySQL 服务器,在 MySQL 配置文件 (通常是 my.ini 或者 my.cnf 文件) 的 `[mysqld]` 下添加 `skip-grant-tables` 参数[^3]。这使得可以在不验证身份的情况下进入 MySQL 数据库。完成之后重启 MySQL 服务以便使更改生效。接着可以直接登录到 MySQL 控制台而不会被提示输入密码,并执行如下 SQL 命令: ```sql USE mysql; FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; ``` 最后一步是从配置文件中移除之前加入的 `skip-grant-tables` 行并再次重启 MySQL 服务以应用新的安全设置[^1]。 #### 方法二:直接更新 user 表中的认证字符串 如果希望更直接地处理这个问题,则可以选择直接编辑存储着所有账户信息的 `mysql.user` 表内的数据。具体来说就是运行下面这条语句来改变 root 用户的身份验证凭证: ```sql UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root'; FLUSH PRIVILEGES; quit ``` 这里需要注意的是 `'new_password'` 应当替换成实际想要设定的新密码值[^2]。 #### 方法三:利用SET PASSWORD命令 还有一种简单的方式是在成功连接MySQL 后端后立即发出以下指令来进行快速变更: ```sql set password=password ('123456'); ``` 这里的 `'123456'` 是示例性的新密码,请将其更换成更加复杂的安全字符组合[^4]。 以上便是针对不同场景所提供的几项解决方案,每种都有其适用范围和特点,可以根据实际情况和个人偏好选择最合适的一种实施操作。
评论 89
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值