IT序号网

mysql-5.7之Mysql陷入密码过期循环

bluestorm 2024年02月27日 编程语言 19 0

我无法再使用 macOS 10.13.1 上的 mysql 5.70.20 连接到我的数据库,因为我收到以下消息。

您的密码已过期。要登录,您必须使用支持过期密码的客户端更改密码。

现在,这看起来很简单 fix .但不幸的是,我认为我陷入了一个循环。

这是我正在尝试的。 mysql -u root 这按预期工作。连接后我尝试 ALTER USER 'script'@'localhost' PASSWORD EXPIRE NEVER; 这给了我一个 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement .

在之前我尝试了 SET GLOBAL default_password_lifetime = 0; 打印出 Query OK, 0 rows affected (0.00 sec) 这也没有解决问题,因为什么都没有做作的。

然后我尝试了 SET PASSWORD = PASSWORD('root'); 打印了 ERROR 3009 (HY000): Column count of mysql.user is wrong。预期 45,发现 46。使用 MySQL 50718 创建,现在运行 50720。请使用 mysql_upgrade 修复此错误。

因此,我尝试运行它向我推荐的mysql_upgrade,这让我回到原来的位置mysql_upgrade: Got error: 1862: Your password has expired.要登录,您必须使用支持过期密码的客户端更改它。连接到 MySQL 服务器时升级过程遇到错误,将不会继续。

请您参考如下方法:

在 Ubuntu 上对我有效的解决方案是完全删除 mysql:

sudo rm -rf /var/lib/mysql/mysql 
sudo apt-get remove --purge mysql-server mysql-client mysql-common 
sudo apt-get autoremove 
sudo apt-get autoclean 
sudo apt-get install mysql-server 

这还将删除系统表,以便您可以从头开始。
有人可以将其翻译成 macOS 吗?


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!