mysql5.7及以后版本设置密码

mysql5.7及以后版本设置密码

-----------------2025/6/6更新----------------------------------

运行mysqld --initialize xxx命令的时候会有一个密码回显,那个就是初始密码

输入:mysql -u root -p
然后输入密码登录

用下面这句直接改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password(新密码)';

---------------如果找不到密码了,可以参考后面的内容,但是现在测试skip-grant-tables这个参数没有起作用---------------------

开启skip-grant-tables配置

由于安装时没有指定密码,需要配置/etc/my.cnf(或者/etc/mysql/my.cnf等已存在的配置文件)
在[mysqld]下一行加上:
skip-grant-tables
表示无密码登入
vim /etc/my.cnf
输入“:wq”保存退出

完成后重启mysql
systemctl restart mysqld
重启后,重新登录mysql
mysql -u root -p
提示要输入密码,直接回车就能成功连上了

选中mysql数据库

use mysql;

设置密码为空

用命令将密码设置为空

update user set  authentication_string = '',host = '%' where user = 'root';

执行完成后,刷新权限

flush privilege;

退出mysql

quit

关闭skip-grant-tables配置

用vim打开刚才的my.cnf文件,将刚才加上的内容注释掉(前面加“#”)
输入“:wq”保存退出
重启mysql
systemctl restart mysqld

设置密码,并再次登录

mysql -u root -p

ALTER USER 'root'@'%' IDENTIFIED BY '密码';
flush privilege
quit

重启mysql服务
systemctl restart mysqld

重新登录,输入密码并回车
mysql -u root -p

参考博文:
https://blog.csdn.net/weixin_43660088/article/details/131605212

posted @ 2024-10-14 19:29  小鱼圆又圆  阅读(120)  评论(0)    收藏  举报