相关版本
- 操作系统:Alibaba Cloud Linux 3.2104 LTS 64位
- MySQL:mysql Ver 8.0.34 for Linux on x86_64 (Source distribution)
MySQL版本可通过下方命令查询
mysql --version
一、修改my.cnf文件
- 文件位置:etc/my.cnf
- 进入远程连接后可以打开文件树后找到这个文件双击进行修改,也可以通过vim方式进行修改
- 在[mysqld]下添加一行
skip-grant-tables
- 注意:我这里已经改完了,所以加了#号进行了注释。修改的时候不能加注释
- 保存完这个配置,重启MySQL服务
service mysqld restart
二、进入MySQL命令行,清空密码
- 通过以下命令直接进入MySQL,不需要输入密码
mysql -u root -p
- 清空authentication_string字段
update user set authentication_string='' where user='root';
三、修改密码
- 重复步骤一,打开my.cnf文件,注释掉
skip-grant-tables
后,重启MySQL服务器
service mysqld restart
- 输入命令进入MySQL,这里不用输入密码,因为步骤二已经把密码清空了
mysql -u root -p
- 修改密码,在这里请把你命令行中的“新密码”替换成你的密码
- 注意:我的项目是spring-boot3,使用了yml作为配置文件,这里数据库的连接密码需要包含特殊字符、数字还有字母,并且不能以特殊字符开头。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
- 刷新权限
flush privileges;
- 退出MySQL,重启MySQL服务器,用新密码登录MySQL