今天在使用 doccker 修改自己的 mysql 镜像密码的时候 开始的步骤
docker exec -it mysql mysql -u root -p
# 输入密码
alter user 'root'@'localhost' identified by "newPassword"
然后在docker 中进入 mysql 的密码确实变成了我的新密码,但是在我使用 sqlAce 远程连接自己的 服务器的 mysql 的时候,却发现仍然使用的是旧密码
搜索一番之后发现:
mysql 中可能有多个主机权限 使用
SELECT User, Host FROM mysql.user WHERE User = 'root';
所以这里需要将我的所有主机权限的密码也要修改才会生效
-- 修改 localhost 的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
-- 修改 %(远程访问)的密码
ALTER USER 'root'@'%' IDENTIFIED BY 'new_password';
FLUSH PRIVILEGES;
然后就可以了