错误:26 - 错误定位服务器/实例指定。 (无法连接到我的本地数据库从我的主机服务器)(er

2019-07-30 19:34发布

我以前已经问过这个问题,但没有任何反应良好,我的问题是,我在我的App_Data文件夹中的本地数据库(ASPNETDB.MDF),这里是在web.config中的连接字符串:

<add name="ApplicationServices" 
     connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" 
     providerName="System.Data.SqlClient" />

所以我的网站在我的本地IIS服务器工作正常,但是当我把网站在我的主机服务器,我得到这个错误消息:与SQL Server建立连接时出现与网络相关的或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,以及SQL Server配置为允许远程连接。 (提供者:SQL网络接口,错误:26 - 错误定位服务器/实例指定)。

在其他的服务器我有SQL Server 2008中(远程连接被接受和我有相同的实例名称SQLEXPRESS)。 我真的什么都试过,我可以,但没有任何好的结果。 我真的很感谢你的帮助,THX。

Answer 1:

此格式表明本地连接:

.\SQLEXPRESS

从另一台服务器,你需要指定服务器名称或IP地址,例如:

192.168.1.205\SQLEXPRESS
YOURMACHINE\SQLEXPRESS

您还需要验证该实例的SQL Server Express。 从您的其他几乎相同的问题,它看起来像一个默认实例。

你也应该停止使用这种无聊的用户实例/ attachDbFilename技术。 附上您的数据库实例正确,然后使用引用逻辑数据库名称Initial Catalog=aspnetdb; 在您的连接字符串。 该用户实例功能被弃用出于多种原因,这当然是其中之一。

当然,可能还有其他的网络问题,以防止这一点,例如,如果服务器是在不同的领域,有防火墙设置的干扰等,但你的服务器是永远不会能够使用点来访问你的机器了服务器名称。

编辑提供婴儿的步骤,因为很明显我的建议没有被遵守。 假设你实际上已经附着在新服务器上的数据库aspnetdb的,试试这个请:

 connectionString="data source=192.168.85.124\SQLEXPRESS;
   Integrated Security=SSPI;
   Initial Catalog=aspnetdb;" 

如果您没有使用毕竟SQL Express的命名实例,请尝试:

 connectionString="data source=192.168.85.124;
   Integrated Security=SSPI;
   Initial Catalog=aspnetdb;" 

对于SQL身份验证使用在Management Studio中使用相同的用户名/密码:

 connectionString="data source=192.168.85.124;
   User ID=username; Password=password;
   Initial Catalog=aspnetdb;" 

这是故障排除101的东西。 如果仍然不能得到这个工作,你可能要聘请顾问10分钟,为您解决问题,因为这是不可能找出你做了什么,以及为什么你不能得到它的工作。



文章来源: error: 26 - Error Locating Server/Instance Specified. (Can't connect to my local Db From my host server)