我有自己的虚拟服务器,并且希望在其上部署一个网站。
我遇到的问题是设置数据库。通常在托管网站上,我只需上传 mdf 文件,然后从他们那里获取连接字符串。
我尝试将使用 Management Studio 通过 VS2010 创建的 mdf 文件附加到虚拟服务器上的“本地”服务器。
它使用文件“c:\inetpub\wwwroot...”的路径名称来创建该文件
如何获取在我的 Web 配置文件中使用它所需的连接字符串?
我想我也需要为此创建一个用户登录?
我确实尝试过让它使用快速连接字符串,但出现此错误:无法打开物理文件“C:\inetpub\wwwroot\gtro\App_Data\ASPNETDB.MDF”。操作系统错误 5:“5(无法检索此错误的文本。原因:15105)”。尝试为文件 C:\inetpub\wwwroot\gtro\App_Data\ASPNETDB.MDF 附加自动命名的数据库失败。存在同名的数据库,或无法打开指定的文件,或该文件位于 UNC 共享上。
我已将 IIS7 中的应用程序池更改为使用 Identity 中的网络服务。
肯定也没有已用相同名称附加的数据库。
答案1
请在服务器上创建数据库。备份本地数据库并在服务器上上传 .bak 文件。使用 SQL 管理工作室恢复备份。
如果您的 VPS 上没有安装 SQL Express,您可以从 Microsoft 网站下载并安装它。
请检查以下网址:
答案2
由于新数据库具有不同的架构,因此在恢复数据库时,您需要访问选项选项卡并选择覆盖现有数据库。
答案3
系统错误 5 是拒绝访问。您使用的是 SQL 2005 或更高版本吗?当您创建数据库然后将其分离以将其附加到另一台服务器时,其权限会发生变化,因此只有同一个帐户才能使用它。我相信简单的解决方法是更改文件本地副本的权限以允许管理员完全控制。 更多信息请访问此博客
编辑:博客现已死亡。
希望有所帮助。