mysql密码的初始化,修改与重置
目录[*]mysql密码的初始化,修改与重置
[*]郑重说明:
[*]初始化密码(第一次使用前要初始化密码)
[*]查看密码(已登录状态)
[*]修改密码(已知原密码)
[*]忘记密码(密码找回)
[*]
[*]诺mysql装在Windows
[*]诺mysql装在Linux
[*]结尾systemctl为什么可以管理mysql附件
mysql密码的初始化,修改与重置
郑重说明:
文章guixiang原创,全部实操过,不会的留言问。
初始化密码(第一次使用前要初始化密码)
1.进入mysql命令行
mysql -uroot
2.执行
ALTER USER'root'@'localhost'IDENTIFIED BY 'your_password';
3.提交
flush privileges;
4.退出
quit;查看密码(已登录状态)
mysql> select * from mysql.user;
#找到这个:
| 127.0.0.1 | root | *FD408300A2CBA95D1FCBB97C4E21D38D4B7E446D |
| % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
#进入网站:https://md5.cc将md5加密的密文解密
#列如*FD408300A2CBA95D1FCBB97C4E21D38D4B7E446D 为密文修改密码(已知原密码)
1.进入mysql命令行
mysql -uroot -p
2.执行
set password for root@localhost = password('your_new_password');
#此方法请确认有root@localhost用户
#用户查看
SELECT user, host FROM mysql.user;
#如只是更新当前用户(这个方法肯定行)
SET PASSWORD = PASSWORD('your_new_password');
3.退出
quit;[!CAUTION]
诺之前:
2.执行use mysql;
3.执行update user set host = '%' where user = 'root';
4.执行FLUSH PRIVILEGES;登录为
# mysql -uroot -h127.0.0.1忘记密码(密码找回)
诺mysql装在Windows
1.打开cmd,停止mysql
net stop mysql
2.进入mysqld(CMD命令行窗口要转到mysql\bin目录)
mysqld --skip-grant-tables
3.新开CMD,进入mysql命令行
mysql -uroot
4.执行
use mysql;
5.修改密码
set password for root@localhost = password('your_password');
或者
SET PASSWORD = PASSWORD('your_new_password');
6.刷新权限表
flush privileges;
7.退出
quit;[!CAUTION]
上面的停止mysql第二种方式
在任务管理器中找到MySQL对应的服务,然后将其停止https://ucc.alicdn.com/pic/developer-ecology/8e94269ae90f46c883d7e44e731e3e7f.png?x-oss-process=image/resize,w_1400/format,webp
诺mysql装在Linux
1.停止mysql
service mysqld stop
#也有可能是像我这样(因为之前特地写了一个启动文件,这个我放到后面)
# systemctl stop mysqld
2.修改
vim /etc/my.cnf
在mysqld下添加
skip-grant-tables
3.重启
service mysqld start
#也有可能是像我这样(因为之前特地写了一个启动文件,这个我放到后面)
# systemctl start mysqld
4.进入mysql
mysql -uroot
5.执行
use mysql;
6.修改密码
use mysql;
UPDATE user SET authentication_string=PASSWORD("your_new_password") WHERE User="root";
#mysql5.7以前的版本请使用(极为重要)
update user set password=password("your_new_password") where user="root";
#查看版本:
mysql --version
7.刷新权限表
flush privileges;
8.退出
quit;
9.停止mysql
service mysqld stop
#也有可能是像我这样(因为之前特地写了一个启动文件,这个我放到后面)
# systemctl stop mysqld
10.删除( 注意,是删除skip-grant-tables 这一段)
vim /etc/my.cnf
skip-grant-tables
11.重启mysql
service mysqld start
#也有可能是像我这样(因为之前特地写了一个启动文件,这个我放到后面)
# systemctl restart mysqld[!CAUTION]
第6步,不要两个都试,因为新建的列会扰乱密码导致登录不上
结尾systemctl为什么可以管理mysql附件
vim /usr/lib/systemd/system/mysqld.service
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
WantedBy=multi-user.target
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
来源:https://www.cnblogs.com/guixiangyyds/p/18339277/guixiangyyds
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页:
[1]