MySQL如何重置密码/MySQL的初始密码

标签:
mysql重置密码初始密码5.78.0 |
分类: 计算机经验 |
忘记密码的重置方法,以修改root帐户的密码为例
例如C:\phpStudy\PHPTutorial\MySQL\bin>mysqld
--skip-grant-tables;
MySQL5.6以前的命令
例如update user set
password=password("newpassword") where
user="root";
MySQL5.7的版本
例如update mysql.user set
authentication_string=password('newpassword') where
user='root';
MySQL8.0的版本,同时修改密码认证方式为旧的native_password方式
例如ALTER USER 'root'@'localhost'
IDENTIFIED WITH mysql_native_password BY 'root';
刷新一下权限
FLUSH PRIVILEGES;
重启后可以用新密码登录
如果提示错误,注意查看root对应的是否为localhost
mysql> select user,host from
user;
+------------------+-----------+
| user
|
host
|
+------------------+-----------+
| root
|
%
|
| mysql.infoschema | localhost
|
|
mysql.session | localhost
|
| mysql.sys
|
localhost |
+------------------+-----------+
4 rows in set (0.00
sec)
这里的root对应的host是%,因此命令需修改为
ALTER USER 'root'@'%'
IDENTIFIED WITH mysql_native_password BY 'root';
MySQL的初始密码
MySQL从5.7版本以后初始密码不再为空,系统在初始化的时候会随机生成一个密码,第一次登陆时会要求更改密码,但很多人没看过文档,不知道初始密码,下面的方法供参考。
Linux下查看初始随机密码
方法一:
[root@VM_225_102_centos ~]#
grep 'temporary password'
/var/log/mysqld.log
2016-07-08T02:25:46.311098Z 1
[Note] A temporary password is generated for root@localhost:
MtPqF0/oN5zo
方法二:
[root@localhost src]# cat
/root/.mysql_secret
# The random password set for
the root user at Mon July 30 20:00:34 2018 (local time):
%Jq_sA2m
Windows下查看初始随机密码
方法一:查看以.err结尾的文件
C:\phpStudy\PHPTutorial\MySQL\data目录下,已windows登录用户名为文件名,已.err结尾,
方法二:初始化的时候使用console参数
在MySQL安装目录的 bin
目录下执行命令:
mysqld --initialize
--console
例如C:\phpStudy\PHPTutorial\MySQL\bin>mysqld
--initialize --console
2018-07-31T01:56:00.319708Z 0
[System] [MY-013169] [Server]
C:\phpStudy\PHPTutorial\MySQL\bin\mysqld.exe (mysqld 8.0.12)
initializing of server in progress as process 13772
2018-07-31T01:56:08.272392Z 5
[Note] [MY-010454] [Server] A temporary password is generated for
root@localhost: i,RX)f9s+Mez
2018-07-31T01:56:12.809383Z 0
[System] [MY-013170] [Server]
C:\phpStudy\PHPTutorial\MySQL\bin\mysqld.exe (mysqld 8.0.12)
initializing of server has completed
注意[Note] [MY-010454]
[Server] A temporary password
is generated for root@localhost: i,RX)f9s+Mez,其中root@localhost:后面的i,RX)f9s+Mez就是初始密码(不含冒号后面的空格)