Ошибка аутентификации с использованием метода mysql_native_password

Попытка подключения к MySQL на моем веб-хостинге с использованием Connector/Net С#/WinForms в Visual Studio 2012 Update 3, но получение ниже сообщения об ошибке:

Аутентификация на хост "1.1.1.1" для пользователя "[email protected]" с использованием метода "mysql_native_password" не удалась с сообщением: доступ запрещен для пользователя "[email protected]" @ "2.2.2.2" (с использованием пароля: ДА)

string connectionString = "SERVER=1.1.1.1;PORT=3306;DATABASE=databaseName;[email protected];PASSWORD=mypassword;";

MySqlConnection connection = new MySqlConnection(connectionString);
connection.Open();

Я подключаюсь удаленно, включил свой IP-адрес (и даже временный белый список всех (%) для проверки), тройной проверил имя пользователя и пароль и IP-адрес.

Я изначально попробовал имя пользователя без домена (имя пользователя, а не имя пользователя@mydomain.com), но это дало мне ошибку ниже:

Аутентификация со старым паролем больше не поддерживается, используйте пароли стиля 4.1.

Любая помощь будет очень признательна, спасибо!

Ответ 1

Его проблема "Удаленные хосты доступа к базе данных". "Вы можете разрешить внешним веб-серверам обращаться к вашим базам данных MySQL, добавив их доменное имя в список хостов, которые могут обращаться к базам данных на вашем веб-сайте".

Доступ к MySql не предоставляется IP-адресу системы, в которой выполняется приложение (в вашем случае это "2.2.2.2" ).

Примечание. - "2.2.2.2" - ваш общедоступный IP-адрес.

Ответ 2

Две возможные вещи:

  • MySQL чувствителен к регистру, убедитесь, что случай Database= в строке подключения совпадает с фактическим именем базы данных
  • Возможно, вам придется предоставить привилегии пользователю.

Надеюсь, это поможет вам.

Ответ 3

Проверьте файл настроек приложения (или там, где вы сохранили строку подключения).

В моем случае приложение использовало старую строку подключения (это было недопустимо). Я предполагал, что изменение, внесенное мной в код файла настроек, отражается разработчику (файла настроек). Но это не так!

Ответ 4

Это может быть связано со случаем конкретных инструкций на основе членства SQL Server на ASP.NET 4.5, обходным путем является создание нового членства в web.config, drop mvc 4 AccountControler и использование старого из MVC3 здесь или в Интернете:

http://www.nsilverbullet.net/2012/11/06/using-mysql5-as-membership-backend-for-aspnet45-mvc4-application/

Ответ 5

В моем случае обновленный пароль не использовался. Я просто сгенерировал пароль с помощью генератора паролей и скопировал его, но забыл нажать "Сменить пароль".

Также проверьте, что пользователь добавлен в базу данных и имеет привилегии.