1

我在使用 mysql 创建程序时遇到了一个问题。我使用“root@localhost”来创建程序。命令执行成功。之后我删除过程 A 并想使用“root@127.0.0.1”创建 A,然后遇到错误:1820 - 您必须在执行此语句之前设置密码。

实际上我已经为此设置了密码,但仍然错误。其他使用“root@127.0.0.1”的程序都成功,没有任何错误。该问题仅在 A 上面临。

据我所知,此错误通常在创建数据库中发现。但是这一次... :(

任何人都可以帮助我吗?非常感谢!!!

4

2 回答 2

3

在手册中

帐户密码过期后,在使用该帐户与服务器的后续连接中执行的所有操作都会导致错误,直到用户发出 SET PASSWORD 语句来建立新的帐户密码:

mysql> SELECT 1;
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

mysql> SET PASSWORD = PASSWORD('new_password');
Query OK, 0 rows affected (0.01 sec)

mysql> SELECT 1;
+---+
| 1 |
+---+
| 1 |
+---+
1 row in set (0.00 sec)
于 2013-07-30T08:17:19.187 回答
1

最后通过以下语句解决了问题:

++++++++++++++++++++++++++++++++++++++

为 'some_user'@'some_host' 设置密码 = PASSWORD('newpwd');

++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++

于 2013-08-01T01:26:51.347 回答