我无法再使用 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 吗?