我正在接管一个网站的维护工作。几乎没有文档。我希望这种问题在这里“没问题”......
现在,我正在尝试定位/查看数据库,但找不到。
这是 web.config 中唯一的连接字符串:
<connectionStrings>
<add connectionString="Data Source=YPOC\SQLEXPRESS;Database=Marco;User ID=yyy;Password=xxx;" name="DefaultConnectionString" />
</connectionStrings>
问题:
1) 这些参数是否等价?
a) Database=Marco
b) AttachDbFilename=|DataDirectory|\Marco.mdf
c) Initial Catalog=Marco
2) 如果#1 的答案是"is",那么我应该在 App_Data 文件夹中找到一个名为 Marco.mdf 的数据库文件,对吧?
3) 但#2 不正确,因为我在 App_Data 文件夹中没有看到名为 Marco 的数据库文件...;-x
4) 世界上哪里有 carmen sandi ...哎呀,我是说 Marco.mdf?!
相关问题:
我必须从名为 YPOC 的生产服务器复制所有文件。在 web.config 中,我想我需要更改“Data Source=YPOC\SQLEXPRESS”...我的 SQL Server 实例名称是“SQLEXPRESS”...因此,我是否应该将 DS 更改为“Data Source=.\SQLEXPRESS” “?
在 App_Data 文件夹中,我发现 ASPNETDB.MDF ... 在服务器资源管理器中,我尝试连接以查看表,但收到错误消息:
“...无法打开,因为它是 661 版本。此服务器支持 655 及更早版本”
我做了一些研究,似乎版本 661 意味着它需要 SQL Server 2008 R2 ...但我已经安装了 ...;-(
我习惯了一个共享的托管环境,其中设置了 SQL Server 数据库并且很容易连接。在这里,它位于专用的云服务器(非托管)上,我被推向了一个新的领域,在那里我什至找不到数据库......;-(
非常感谢任何帮助......
- 纳米
最佳答案
停止,停止,停止,停止,停止使用 User Instance
和 AttachDbFileName
废话。请。如果您忘记它们的存在,您会更加理智。我是认真的。由于某种原因,用户实例功能已被弃用。
拿你的 MDF 文件,你可以使用 Windows 资源管理器搜索找到它(如果你一直在使用这个 user instance
特性,你可能会找到多个,我没有关于确定哪个的建议一个是正确的)。找到要使用的数据库后,使用 CREATE DATABASE Marco ... FOR ATTACH_REBUILD_LOG
将其附加到 SQL Server 的正确实例。然后你的连接字符串应该指向你的服务器(是的,.\SQLEXPRESS
如果你在本地连接应该没问题),并且应该通过逻辑名称引用你的数据库(例如 Marco
,没有特定 MDF 文件的路径信息)。
您还需要安装 Service Pack 1 for SQL Server 2008 R2 .您似乎是在 SQL Server 2008 R2(或 2008 年的 SP2+)的后 RTM 版本中创建了一个数据库。
关于asp.net - 我找不到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11353720/