iis 使用 LocalDB 报错:provider: SQL Network Interfaces, error: 50

   在使用asp.net core读取localdb数据库时,报以下错误:

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: SQL Network Interfaces, error: 50 - 发生了 Local Database Runtime 错误。无法创建自动实例。有关错误详细信息,请参阅 Windows 应用程序事件日志。
)

最后解决方式是在IIS中使用LocalDB需要在应用程序池中加载用户配置文件。

中途试过添加用户权限,没解决问题。貌似在网站目录下是不用单独给线程池一个用户权限的。有一个iis用户权限就够了。

参考文章:LocalDB with IIS : https://blog.ianli.site/2012/09/localdb-with-iis/

给iis不同网站单独权限: http://www.cnblogs.com/jfzhu/p/4067297.html

Using LocalDB with Full IIS, Part 1: User Profile: https://blogs.msdn.microsoft.com/sqlexpress/2011/12/08/using-localdb-with-full-iis-part-1-user-profile/

Using LocalDB with Full IIS, Part 2: Instance Ownership:https://blogs.msdn.microsoft.com/sqlexpress/2011/12/08/using-localdb-with-full-iis-part-2-instance-ownership/#UseSSE

注意看 Part2这篇文章,里面有给出三个解决iis下无法访问sqllocaldb的方法。其实主要原因是LocalDB的访问权限是根据访问者来变化的。在开发模式下,LoacalDB的创建一般是Administrator用户,开发工具VS的权限也是Administrator用户,所以访问LocalDB没有出现问题。当部署到IIS后,访问LocalDB的用户变成了IIS对应的用户,即‘IIS Pool\Your APPPoolName’,这时候由于IIS没有对应的访问权限,所以会报无法登陆的错误。解决方式可以参照Part2 的第二个方法。

 

转载于:https://www.cnblogs.com/jidanfan/p/5897937.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值