Подключитесь к экземпляру Google Cloud SQL из CORE с прокси: произошла ошибка, связанная с сетью или экземпляром. Я могу подключиться через MySQL cmd - PullRequest
0 голосов
/ 14 сентября 2018

Я начинаю с запуска goole sql proxy с помощью следующей команды:

./cloud_sql_proxy -instances=dauntless-gate-xxxxxx:us-central1:redacted-dev=tcp:3306

I SUCCESSFULLY подключиться к нему, выполнив следующие команды:

mysql --host=127.0.0.1 --user=sa --password=<redacted>

или

mysql --host=127.0.0.1 --user=sa --password=<redacted>

Я пытаюсь и не могу подключиться с помощью ASP.net Core 2 со следующим:

startup.cs

public void ConfigureServices(IServiceCollection services)
{
    services.AddDbContext<UserContext>(opt => 
        opt.UseSqlServer("Server=127.0.0.1:3306; User Id=sa;Password=<redacted>;"));
...
}

Ошибка:

SqlException: ошибка, связанная с сетью или экземпляром, возникла при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен для разрешения удаленных подключений. (поставщик: поставщик TCP, ошибка: 35 - обнаружена внутренняя исключительная ситуация)

Я также пробую следующее и получаю немного другую ошибку:

startup.cs

public void ConfigureServices(IServiceCollection services)
{
    services.AddDbContext<UserContext>(opt => 
        opt.UseSqlServer("Server=127.0.0.1; User Id=sa;Password=<redacted>;"));
...
}

Произошло необработанное исключение при обработке запроса. SqlException: ошибка, связанная с сетью или экземпляром, возникла при установлении соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен для разрешения удаленных подключений. (поставщик: поставщик TCP, ошибка: 40 - не удалось открыть соединение с SQL Server)

Произошло необработанное исключение при обработке запроса. ExtendedSocketException: нет такого устройства или адреса System.Net.Dns.InternalGetHostByName (строка hostName)

1 Ответ

0 голосов
/ 19 сентября 2018

«SQL Server» - это название продукта Microsoft SQL Server, которое не совпадает с MySQL, который работает на вашем экземпляре. Вам нужно будет использовать MySQL Connector / NET для подключения. Проверьте на этой странице для получения более подробных рекомендаций для Entity Framework.

...