mysql修改密码

本文介绍如何在已知和未知原有密码的情况下重置MySQL root用户的密码。包括编辑配置文件、临时跳过授权表检查、更新密码及恢复配置等步骤。

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

1、拥有原来的myql的root的密码;


mysql -uroot -p
Enter password: 【输入原来的密码】(如果安装完mysql第一次设置root密码,则直接回车)
mysql>use mysql;
mysql> update user set password=password("123456") where user='root';
mysql> flush privileges;
mysql> exit;

注意:有版本差异
update user set password=password(‘123456’) where user=’root’;
update user set authentication_string=password(‘123456’) where user=’root’;(5.7)
(最好在记事本总过滤下样式或者重新打一遍)
2、忘记原来的myql的root的密码;


首先,你必须要有操作系统的root权限了。也就说需要以root的身份登录到操作系统,然后进行一下操作。
(1)编辑MySQL配置文件my.cnf

  vi /etc/my.cnf

编辑文件,找到[mysqld],在下面添加一行skip-grant-tables

[mysqld]
skip-grant-tables
:wq!  #保存退出
service mysql restart  #重启MySQL服务

(2)进入MySQL控制台

mysql -uroot -p

直接按回车,这时不需要输入root密码。
(3)修改root密码
mysql>use mysql;
mysql> update user set password=password(“123456”) where user=’root’;
mysql> flush privileges;刷新权限(必须步骤)
mysql> exit;
注意:有版本差异
update user set password=password(‘123456’) where user=’root’;
update user set authentication_string=password(‘123456’) where user=’root’;(5.7)
(最好在记事本总过滤下样式或者重新打一遍)
(4)取消/etc/my.cnf中的skip-grant-tables

vi /etc/my.cnf

编辑文件,找到[mysqld],删除skip-grant-tables这一行
:wq! #保存退出
(5)重启mysql

service mysql restart

重启mysql,这个时候mysql的root密码已经修改为123456

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值