在 Ubuntu 上修改 MySQL 密码,常见情况如下,你可以按需选择。
mysql -u root -p
进入 MySQL 后执行:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
FLUSH PRIVILEGES;
sudo systemctl stop mysql
sudo mysqld_safe --skip-grant-tables &
mysql -u root
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
UPDATE mysql.user SET authentication_string=PASSWORD('新密码')
WHERE User='root';
FLUSH PRIVILEGES;
exit
sudo systemctl restart mysql
很多 Ubuntu 默认 root 用 auth_socket,不能直接用密码登录。
查看:
SELECT user, host, plugin FROM mysql.user;
如果是 auth_socket,改为密码登录:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
FLUSH PRIVILEGES;
ALTER USER '用户名'@'localhost' IDENTIFIED BY '新密码';
如果你愿意,可以告诉我:
我可以给你精确命令。