“Linux下忘记mysql的root用户密码解决方法 忘记mysql密码 mysql修改密码方法”的版本间的差异
跳到导航
跳到搜索
(→参考) |
(→解决过程) |
||
第4行: | 第4行: | ||
=解决过程= | =解决过程= | ||
<pre> | <pre> | ||
− | 首先 要把mysqld 进程停止 kill or killall 你自己选择 | + | 首先 要把mysqld 进程停止 最后是用正常的停止服务方法 实在不行 kill or killall 你自己选择 |
接着 | 接着 | ||
第42行: | 第42行: | ||
mysql -uroot -p | mysql -uroot -p | ||
</pre> | </pre> | ||
+ | |||
=mariadb= | =mariadb= | ||
<pre> | <pre> |
2021年6月10日 (四) 10:18的版本
原因
不小心 把自己在公司的测试机上的mysql root 密码给忘记了,网上有很多方法,但这个是我试过的 包成功哦
解决过程
首先 要把mysqld 进程停止 最后是用正常的停止服务方法 实在不行 kill or killall 你自己选择 接着 用--skip-grant-tables参数启动mysqld # 其中/usr/local/mysql/bin是我的mysql安装目录 [root@localhost /]#/usr/local/mysql/bin/mysqld_safe --skip-grant-tables& 新办法 也可用于 mariadb my.cnf 在[mysqld] 下添加 skip-grant-tables=1 #不用密码进入mysql [root@localhost /]/usr/local/mysql/bin/mysql #切换到mysql database good mysql> use mysql; #将mysql root密码该为123456#了 #mysql5.7 update mysql.user set authentication_string=PASSWORD('123456#') where user='root'; flush privileges; 特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了 #这个是mysql5.6之前 UPDATE user SET password=password('123456#') WHERE user='root'; FLUSH PRIVILEGES; killall mysqld #登录正常 mysql -uroot -p
mariadb
sudo /etc/init.d/mysql stop Stopping mysql (via systemctl): mysql.service. evan@myxps:~/python/jumpserver$ sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf skip-grant-tables=1 mysql -uroot 无密码登录 use mysql; update user set authentication_string=password('root'),plugin='mysql_native_password' where user='root'; flush privileges; vim /etc/mysql/mariadb.conf.d/50-server.cnf 将 skip-grant-tables=1 这句#注释掉
https://www.cnblogs.com/messhair/p/11782850.html