MySqlException - Доступ запрещен для пользователя: MySQL, ASP.NET Core 3 - PullRequest
0 голосов
/ 07 мая 2019

Я использую NET Core 2.1 и MySQL с установленным MySql.Data. Это appsettings.json:

"ConnectionStrings": {
     "DefaultConnectionString": 
        "server=localhost;port=3306;database=database_name;user=root;password=password"
}

И Startup.cs -> ConfigureServices:

services.AddDbContext<CardsContext>(options =>

  options.UseMySQL(Configuration.GetConnectionString("DefaultConnectionString")));

Все приложение представляет собой простое CRUD-приложение на скаффолде, но когда я пытаюсь получить доступ к некоторым GET маршрутам, таким как /api/persons/5, я получаю эту ошибку:

Произошло необработанное исключение при обработке запроса. MySqlException: доступ запрещен для пользователя 'root' @ 'localhost' (с использованием пароля: ДА) MySql.Data.MySqlClient.MySqlStream.ReadPacket ()

MySqlException: аутентификация на хосте «localhost» для пользователя «root» с использованием метода «mysql_native_password» завершилась неудачно с сообщением: доступ запрещен для пользователя «card_root» @ «localhost» (с использованием пароля: YES) MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.AuthenticationFailed (Exception ex)

Я уверен, что это конфигурация, потому что я могу соединиться с PHP с тем же пользователем / pass / database / port / host

1 Ответ

0 голосов
/ 07 мая 2019

Проверьте пароль в строке подключения! Если это правильно:

  1. В phpmyadmin, в User Accounts создайте нового пользователя!

  2. Убедитесь, что вы определяете Host Name как %!

  3. Объявите ясный пароль, который вы сможете использовать позже.

  4. Проверка глобальных привилегий!

...