我有一个Laravel应用程序,它使用MySQL作为主数据库。我们现在正在尝试实现Azure MySQL服务,但用户名中带有"@"。
例如,如果我的服务器名称是"test",那么要从cli进行连接:
mysql -htest.mysql.database.azure.com -u'someuser@test' -p
我可以从Java和Go进行连接,但Laravel无法处理用户名中的"@"。它将'@'之后的字符串作为主机,并尝试连接到它,但它没有解析为任何IP,因此连接失败。
我曾试图转义"user\@test"、"user@test
"one_answers"userU+00040test"等符号,但都不起作用。服务器总是返回此错误:
SQLSTATE[HY000] [9002] The connection string may not be right. Please visit portal for references
Azure门户显示了使用mysqli
进行连接的代码,这很有效,但我不能使用Laravel中的代码(我想是吗?(。
我如何使这种连接正常工作?
感谢
尝试在用户名周围使用双qoutes。喜欢例如"someuser@test">