Я начинаю с запуска прокси-сервера gool, выполняя следующую команду:
./cloud_sql_proxy -instances=dauntless-gate-xxxxxx:us-central1:redacted-dev=tcp:3306
Я УСПЕШНО подключаюсь к нему из следующих команд:
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(string hostName)
"SQL Server" - это имя для продукта сервера Microsoft SQL, который не совпадает с MySQL, который работает на вашем экземпляре. Вам нужно будет использовать MySQL Connector/NET для подключения. Ознакомьтесь с этой страницей для получения более конкретных указаний для Entity Framework.