linux中如何正确的修改MySQL密码

 我来答
懂视生活
2023-07-27 · 百度认证:湖南福仁科技有限公司官方账号
懂视生活
向TA提问
展开全部

本文章是在介绍在linux系统中出现忘记了mysql密码的解决办法,有碰到此类问题的朋友可来看看找回密码的方法。



如果你是没有忘记密码修改mysql密码的方法有多,如下面的

UPDATE user 语句(回目录)

这种方式必须是先用root帐户登入mysql,然后执行:

1.如果您没有忘记密码的情况下,可以通过UPDATE直接编辑user表来修改密码:进入


代码如下




mysql -u rootmysql> use mysql;
mysql> UPDATE user SET Pass = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;



忘记了密码

在使用skip-grant-tables参数的同时,还要加上skip-networking参数:


代码如下




shell> mysqld_safe --skip-grant-tables --skip-networking &



接着使用SQL重置密码后,记得去掉skip-networking,以正常方式重启MySQL服务:


代码如下




shell> /etc/init.d/mysqld restart



上面的方法需要重启两次服务,实际上还能更优雅一点,重启一次即可:

首先需要把用到的SQL语句保存到一个文本文件里(/path/to/init/file):


代码如下




UPDATE `mysql`.`user` SET `Password`=PASSWORD('yourpassword') WHERE `User`='root' AND `Host`= '127.0.0.1'; FLUSH PRIVILEGES;



接着使用init-file参数启动MySQL服务,


代码如下




shell> /etc/init.d/mysql stop shell> mysqld_safe --init-file=/path/to/init/file &



此时,密码就已经重置了,最后别忘了删除文件内容,免得泄露密码。

如果上面办法你无法找回密码可参考下面办法

如果您已经忘记密码:


代码如下




# /etc/init.d/mysql stop 1、结束当前正在运行的mysql进程。
# /usr/bin/mysqld_safe --skip-grant-tables 2、用mysql安全模式运行并跳过权限验证。
# mysql -u root 3、重开一个终端以root身份登录mysql。

mysql> use mysql;



4、修改root用户口令。


代码如下




Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set Password = PASSWORD('root') where User ='root';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0

mysql> exit

# /etc/init.d/mysql restart 5、结束mysql安全模式,用正常模式运行mysql。
mysql> update mysql.user set password=PASSWORD('新密码') where User='root';



6、试试你新修改的口令


代码如下



mysql> flush privileges;
mysql> quit


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式