none
sqlserver localDB 2016 在IIS10上的使用问题 RRS feed

  • 问题

  • 我VS2017自带的sqlserver localDB 2016做数据库,能够成功在VS中使用。但是到了IIS中就报了权限错误。经查发现可以通过sqllocaldb.exe共享解决。但是每次重启系统,共享默认关闭,需要写计划任务开启,感觉有点蠢。不知道有没有其他解决方案?

    在文档中有一句:由于 Windows 文件系统重定向,NT AUTHORITY\SYSTEM 等内置帐户拥有的 LocalDB 的一个实例可能具有管理性问题;请改用常规 Windows 帐户作为所有者。不知道如何更改常规 Windows 帐户,以及这个方法是否可能能让IIS有权限使用?

    (所有操作均在VS2017中设置,不安装额外SQL SERVER)

    谢谢各位大佬!!!

    2018年9月2日 2:42

答案

  • Hi ENASFDSAF AS,

     您遇到的是下面这个错误吗?

    Windows API call SHGetKnownFolderPath returned error code: 5. Windows system error message is: Access is denied. 
    Reported at line: 401.

    您需要在您的app中添加以下字段:

    <add name="DefaultAppPool">
            <processModel identityType="ApplicationPoolIdentity" loadUserProfile="true" setProfileEnvironment="true" />
     </add>

    请参考一下这篇博客:https://blogs.msdn.microsoft.com/gaurav/2013/12/21/deployment-of-sql-express-localdb-on-iis/

    Best Regards,

    Teige


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2018年9月3日 5:30
    版主