我首先通过运行以下命令启动goole sql代理:
./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进行连接,但失败,原因如下:
启动.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-捕获到内部异常)
我还尝试了以下方法,得到了稍微不同的错误:
启动.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(字符串主机名)
1条答案
按热度按时间g9icjywg1#
“sql server”是microsoft的sql server产品的名称,与在您的示例上运行的mysql不同。您需要使用mysql connector/net进行连接。有关实体框架的更具体指导,请查看此页。