我最近在azure中创建了两个虚拟机。
运行服务的机器似乎无法与数据库通信。在服务开始时,我得到SqlConnection
例外(下面)。
我尝试的事情:
但是,[Machine 2]上运行的程序无法连接到[Machine 1]
这是我的[编辑]连接字符串
<add name="XXXX"
connectionString="data source=XXXX;initial catalog=XXXX;
persist security info=True;user id=sa;password=XXXX;
multipleactiveresultsets=True;
application name=XXXX"
providerName="System.Data.SqlClient" />
SQL Server配置管理器&gt; SQL Server网络配置
这是我得到的例外
描述:由于未处理的异常,进程终止。 异常信息:System.Data.SqlClient.SqlException
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(System.Data.ProviderBase.DbConnectionPoolIdentity,System.Data.SqlClient.SqlConnectionString,System.Data.SqlClient.SqlCredential,System.Object,System.String,System.Security .SecureString,Boolean,System.Data.SqlClient.SqlConnectionString, System.Data.SqlClient.SessionData,System.Data.ProviderBase.DbConnectionPool,System.String,Boolean)
在System.Data.SqlClient.SqlConnectionFactory.CreateConnection(System.Data.Common.DbConnectionOptions,System.Data.Common.DbConnectionPoolKey,System.Object,System.Data.ProviderBase.DbConnectionPool,System.Data.Common.DbConnection,System.Data .Common.DbConnectionOptions)
在System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(System.Data.ProviderBase.DbConnectionPool,System.Data.Common.DbConnection,System.Data.Common.DbConnectionOptions,System.Data.Common.DbConnectionPoolKey,System.Data.Common.DbConnectionOptions )
在System.Data.ProviderBase.DbConnectionPool.CreateObject(System.Data.Common.DbConnection,System.Data.Common.DbConnectionOptions,System.Data.ProviderBase.DbConnectionInternal)
在System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(System.Data.Common.DbConnection,System.Data.Common.DbConnectionOptions,System.Data.ProviderBase.DbConnectionInternal)
在System.Data.ProviderBase.DbConnectionPool.TryGetConnection(System.Data.Common.DbConnection,UInt32,Boolean,Boolean,System.Data.Common.DbConnectionOptions,System.Data.ProviderBase.DbConnectionInternal ByRef)
在System.Data.ProviderBase.DbConnectionPool.TryGetConnection(System.Data.Common.DbConnection,System.Threading.Tasks.TaskCompletionSource1<System.Data.ProviderBase.DbConnectionInternal>, System.Data.Common.DbConnectionOptions, System.Data.ProviderBase.DbConnectionInternal ByRef)
1,System.Data.Common.DbConnectionOptions,System.Data.ProviderBase.DbConnectionInternal,System .Data.ProviderBase.DbConnectionInternal ByRef)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(System.Data.Common.DbConnection, System.Threading.Tasks.TaskCompletionSource
在System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(System.Data.Common.DbConnection,System.Data.ProviderBase.DbConnectionFactory,System.Threading.Tasks.TaskCompletionSource1<System.Data.ProviderBase.DbConnectionInternal>, System.Data.Common.DbConnectionOptions)
1) 在 System.Data.SqlClient.SqlConnection.TryOpen(System.Threading.Tasks.TaskCompletionSource
at System.Data.SqlClient.SqlConnection.TryOpenInner(System.Threading.Tasks.TaskCompletionSource1<System.Data.ProviderBase.DbConnectionInternal>) at System.Data.SqlClient.SqlConnection.Open() at SiloHost.SiloConfigurationFactory.OrleansTablesExists() at SiloHost.SiloConfigurationFactory.CreateOrleansTables() at SiloHost.SiloConfigurationFactory.CreateSqlConfiguration() at SiloHost.BifrostService..ctor() at SiloHost.Program+<>c.<Main>b__0_2(Topshelf.Runtime.HostSettings) at Topshelf.Builders.DelegateServiceBuilder
1 [[System .__ Canon,mscorlib, 版本= 4.0.0.0,文化=中立, 公钥= b77a5c561934e089]]。构建(Topshelf.Runtime.HostSettings)异常信息:Topshelf.ServiceBuilderException at Topshelf.Builders.DelegateServiceBuilder
1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].Build(Topshelf.Runtime.HostSettings) at Topshelf.Builders.RunBuilder.Build(Topshelf.Builders.ServiceBuilder)
1) 在SiloHost.Program.Main()
at Topshelf.HostFactory.New(System.Action
我无法在本地计算机上复制此内容,但如果我将配置中的数据库IP更改为不存在的IP,我会得到一个相同的错误信息,并提供更多信息:
发生与网络相关或特定于实例的错误 建立与SQL Server的连接。找不到服务器或 无法访问。验证实例名称是否正确 SQL Server配置为允许远程连接。 (提供者:命名 管道提供程序,错误:40 - 无法打开与SQL Server的连接)