Не удается подключиться к Azure MySQL из приложения Laravel - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть приложение Laravel, которое использует MySQL в качестве основной БД. Сейчас мы пытаемся реализовать службу MySQL Azure, но имена пользователей поставляются с «@».

Например, если мое имя сервера «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 (я думаю?).

Как я могу заставить это соединение работать?

Спасибо

1 Ответ

0 голосов
/ 12 ноября 2018

Попробуйте использовать двойные qoutes вокруг вашего имени пользователя.Например, "someuser @ test"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...