19

当尝试从 mysql 客户端连接到 Azure 中的 MySQL 服务器时,我收到以下错误,即使我使用了正确的用户名和服务器名称。我怎样才能解决这个问题?

连接字符串可能不正确。请访问门户以获取参考。

4

3 回答 3

30

<username@hostname>连接到 Azure Database for MySQL 的服务器实例时,无论是从 mysqlexe 客户端还是 MySQL 工作台,都需要遵循格式。我们建议您从 Azure 门户获取客户端的完整连接字符串,并在连接到 MySQL 服务器时使用它。

阅读如何获取连接信息以了解有关如何从各种客户端连接到 MySQL 服务器的更多信息。

于 2017-05-17T22:24:56.550 回答
9

我有同样的问题,这似乎与 MySQL Shell 有关。不是经典的 mysql.exe 命令行工具。我尝试从 MySQL Shell 中连接到我的 MySQL Azure 数据库,如下所示:

mysql-sql> \sql
mysql-sql> \connect -c myuser@myserver.mysql.database.azure.com
Creating a Classic Session to 'myuser@myserver.mysql.database.azure.com'
Enter password: *********
ERROR: 2001 (28000): The connection string may not be right. Please visit portal for references.
mysql-sql>

根据 Azure 文档(如上所述),应该将用户名指定为“username@servername”,但无法使用 MySQL Shell 指定这一点。

有没有人成功通过 MySQL Shell 连接到 Azure MySQL 数据库?

我可以补充一点,我已经使用经典的 mysql.exe 测试了相同的连接信息,并且以下工作正常:

mysql.exe -u myuser@myserver -h myserver.mysql.database.azure.com -p

我的猜测是,真正的问题是 MySQL Shell 不能接受用户名中的 at 符号 (@)。

于 2017-06-09T13:47:46.140 回答
5

它对我有用,在用户名部分使用用户名@主机名。

于 2018-03-26T13:23:18.020 回答