我有一个Laravel应用,它使用MySQL作为其主要数据库。现在,我们正在尝试实施Azure MySQL服务,但是用户名中带有“ @”。
例如,如果我的服务器名称是“ test”,则从cli连接:
mysql -htest.mysql.database.azure.com -u'someuser@test' -p
我可以从Java和Go正常连接,但是Laravel无法处理用户名中的'@'。它以'@'之后的字符串为主机,并尝试连接到它,但是它不能解析为任何IP,因此连接失败。
我试图转义'user \ @test','user@test
'和'userU + 0040test'这样的符号,但是没有任何效果。服务器始终返回此错误:
SQLSTATE[HY000] [9002] The connection string may not be right. Please visit portal for references
Azure门户显示了使用mysqli
进行连接的代码,并且可以正常工作,但是我不能在Laravel中使用它(我认为吗?)。
如何使该连接正常工作?
谢谢
答案 0 :(得分:0)
尝试在用户名周围使用双qoutes。喜欢 例如“ someuser @ test”