MySQL修改root密码详解(4种修改密码方法)

MySQL修改root密码详解(4种修改密码方法)-mikechen

方法1 :用SET PASSWORD命令

1、打开终端win+r输入cmd回车即可打开;

2、通过mysql -u用户名 -p指定root用户登录MySQL,输入后回车会提示输入密码。

3、修改MySQL的root用户密码,格式:

mysql> set password for 用户名@localhost = password(‘新密码’);

比如:

mysql> set password for root@localhost = password(‘mikechen’);

上面例子将用户root的密码更改为:mikechen,重新登录,输入新密码mikechen就ok了。

 

方法2:用mysqladmin

root 用户可以使用 mysqladmin 命令来修改密码,mysqladmin 的语法格式如下:

mysqladmin -u username -h hostname -p password "newpwd"

例子:

例子:mysqladmin -uroot -p mikechen password 123456

也可以不输入,直接回车,提示的时候再输入,这样会安全些,别人无法通过dos下的doskey/history查看到你的新密码。

 

方法3 :用UPDATE直接编辑user表

首先登录MySQL:

mysql> use mysql

修改密码:

update user set password=password('mikechen') where user='root' and host='localhost';

刷新权限:

flush privileges

这个是必须的步骤,修改后记得刷新权限,然后重新登录,输入新密码mikechen就ok了。

 

 方法4 :忘记root密码

1、停止MySQL Server

$ systemctl stop mysqld
$ ps -ef|grep mysqld

2、建立init-file,并编码修改密码的语句

$ touch /var/lib/mysql/mysql-init-password

在mysql-init-password中增加以下语句

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEWPASSWORD';

限制mysql-init-password只对mysql用户可读

$ sudo chmod 400 /var/lib/mysql/mysql-init-password
$ sudo chown mysql:mysql /var/lib/mysql/mysql-init-password

3、使用init-file重启MySQL Server

$ sudo -u mysql /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid --user=mysql --init-file=/var/lib/mysql/mysql-init-password

4、查看启动日志

查看MySQL Server启动日志,一般是/var/log/mysqld.log,如果执行init-file成功,一般会存在Execution of init_file…Started/Ended的日志。

5、验证密码修改的有效性

$ mysql -u root -p'NEWPASSWORD'

6、删除init-file

删除init-file或者不带init-file参数重启MySQL Server,否则root密码会在每次启动时修改。

$ sudo rm -rf /var/lib/mysql/mysql-init-password

作者简介

陈睿|mikechen,10年+大厂架构经验,BAT资深面试官,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

👇阅读更多mikechen架构文章👇

阿里架构 |双11秒杀 |分布式架构 |负载均衡 |单点登录 |微服务 |云原生 |高并发 |架构师

以上

关注作者「mikechen」公众号,获取更多技术干货!

后台回复架构,即可获取《阿里架构师进阶专题全部合集》,后台回复面试即可获取《史上最全阿里Java面试题总结

评论交流
    说说你的看法