1

我正在接管一个网站的维护。几乎没有文档。我希望这种问题在这里是“好的”......

现在,我正在尝试查找/查看数据库,但我找不到它。

这是 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 的答案是“是”,那么我应该在 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 数据库并且易于连接。在这里,它在一个专用的云服务器(非托管)上,我被推到了一个新的领域,我什至找不到数据库...... ;-(

任何帮助是极大的赞赏 ...

  • 纳米
4

2 回答 2

2

停止,停止,停止,停止,停止使用User InstanceAttachDbFileName胡说八道。请。如果你忘记它们的存在,你会更加清醒。我是认真的。用户实例功能已被弃用是有原因的。

获取您的 MDF 文件,您可以通过使用 Windows 资源管理器搜索找到该文件(如果您一直在使用此user instance功能,您可能会找到多个,我不建议确定哪个是正确的)。找到要使用的实例后,使用CREATE DATABASE Marco ... FOR ATTACH_REBUILD_LOG. 然后,您的连接字符串应该指向您的服务器(是的,.\SQLEXPRESS如果您在本地连接应该没问题),并且应该通过逻辑名称引用您的数据库(例如Marco,没有特定 MDF 文件的路径信息)。

您还需要为 SQL Server 2008 R2 安装 Service Pack 1。看起来您在 SQL Server 2008 R2 的 RTM 后构建中创建了一个数据库(或在 2008 年使用 SP2+)。

于 2012-07-05T23:22:08.233 回答
1

“但是当我不知道 SQL 服务器地址等时,如何从我的开发计算机访问这个数据库?”

  • 我找到了 Marco 数据库。它位于位于非托管 Web 服务器帐户上的 SQL Server 上。访问数据库的方法是使用远程桌面连接,然后使用位于服务器(不是我的开发桌面)上的 SQL Server Management Studio。SSMS 然后找到了服务器/数据库,瞧,已连接...我的困惑是尝试直接从我的开发桌面使用 SSMS 进行连接,而不是通过 RDC 使用位于服务器上的 SSMS ...
于 2012-08-24T18:02:24.970 回答