本片博客介绍 Linux 操作系统 Ubuntu 下,MySQL8 忘记密码怎么重新设置,笔者亲测有效,分享给大家。
查看 MySQL 版本
bash
$ mysql --version
停止 MySQL 服务器,并查看状态是否变更为 Server shutdown complete
bash
# 等价命令sudo systemctl stop mysql.service
sudo service mysql stop
# 等价命令sudo systemctl status mysql.service
sudo service mysql status
跳过 授权表 和 网络
在没有授权表和网络检查的条件下,启动 MySQL 服务器,设置 MySQL 启动的环境变量MYSQLD_OPTS,运行如下命令:
bash
sudo systemctl set-environment MYSQLD_OPTS="--skip-networking --skip-grant-tables"
启动 MySQL 服务
设置完成 MYSQLD_OPTS
后,启动 MySQL 服务,并确认服务状态。
bash
sudo service mysql start
sudo service mysql status
命令行登录 MySQL
bash
sudo mysql -u root
重新设置 root 用户密码
首先执行如下命令:
sql
UPDATE mysql.user SET authentication_string=null WHERE User='root';
flush privileges;
选中mysql数据库,执行下列命令设置 root 用户的新密码:
sql
-- BY 后面接你想设置的密码, 这里我设置密码为 root
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'root';
重启 MySQL 服务器
关闭所有 mysql 进程,重启 mysql 服务器
bash
sudo killall -u mysql
sudo systemctl restart mysql.service
登录 mysql,输入你更改后的 mysql 密码(这里密码我修改为了 root):
bash
sudo mysql -uroot -p
一切顺利的话,就可以使用 root 用户登录 mysql 了!