- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一台旧服务器,上面有一个已失效的 SQL 2000 评估版(从 2006 年开始),上面有两个数据库。
由于某些未知原因,LDF 日志文件丢失。假定已删除。
我有该服务器上曾经存在的数据库的 mdf 文件(在一种情况下还有一个 ndf 文件),我正试图让它们在我周围的另一个 SQL 2000 机器上运行。
sp_attach_db
提示日志文件丢失,并且不会附加数据库。试图通过使用同名数据库中的日志文件来愚弄它的尝试不幸地失败了。 sp_attach_single_file_db
也不起作用。 mdf 文件显然没有完全分离。
如何使数据库附加并可读?
最佳答案
我找到了这个答案,它适用于我的 SQL 2000 机器:
如何使用未完全分离的 MDF 文件附加数据库。
第 1 步:在新服务器上创建一个同名的新数据库,并使用与旧数据库相同的文件。
第 2 步:停止 SQL 服务器,并将您的 mdf 文件(以及您拥有的任何 ndf 文件)移动到您刚刚创建的新文件之上。删除任何日志文件。
第 3 步:启动 SQL 并运行它以将数据库置于紧急模式。
sp_configure 'allow updates', 1
go
reconfigure with override
GO
update sysdatabases set status = 32768 where name = 'TestDB'
go
sp_configure 'allow updates', 0
go
reconfigure with override
GO
第 4 步: 重启 SQL 服务器,观察数据库是否成功进入紧急模式。
第 5 步:运行此未记录的 dbcc 选项以重建日志文件(在正确的位置)
DBCC REBUILD_LOG(TestDB,'D:\SQL_Log\TestDB_Log.LDF')
第 6 步:您可能需要重置状态。即使您不这样做,这样做也不会造成任何伤害。
exec sp_resetstatus TestDB
第 7 步:停止并启动 SQL 以查看新恢复的数据库。
关于sql-server - 如何附加一个只有 MDF 文件的 MSSQL 2000 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/126587/
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我有一个 .mdf 文件,以及同一个 mdf 文件的两个 .ndf 文件。是否可以在不丢失任何数据的情况下将这些文件合并为一个 .mdf 文件? 最佳答案 是的,您可以使用 DBCC SHRINKFI
我有一个 .mdf 文件,以及同一个 mdf 文件的两个 .ndf 文件。是否可以在不丢失任何数据的情况下将这些文件合并为一个 .mdf 文件? 最佳答案 是的,您可以使用 DBCC SHRINKFI
因为我们需要在我们的数据库中移动很多(比如用代码生成的新行更新它,然后更新它 prod db 和反向过程)。 SQL Server CE 作为一个基于文件的系统非常有帮助。 我们想升级以使用 SQL
sql server 2005 express .mdf + .ldf 的最大限制为 4 GB 还是仅适用于 .mdf?请澄清。谢谢。 最佳答案 MDF + NDF - 基本上是数据文件。 日志不算数
在我的数据库中,最初我有一个包含三列的表,当时没有数据,MDf 文件大小为 5122 KB。 然后我在这个表中插入了 500000 条记录,MDF 文件大小增加到 19456 KB 然后我更新了我的表
由于某种原因,我的 MDF 文件有 154gig,但是,我只从平面文件加载了 7GB 的数据。为什么 MDF 文件比实际源数据大很多? 更多信息: 只有几个表约有 2500 万行。没有大型 varch
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭10 年前。 Improve th
当我转到在 mysql 中创建的数据库时,我只看到 db.opt、.frm 和 .ibd 文件类型。有没有办法创建 .mdf 数据库文件,以便我可以在 Visual Studio 中进一步创建我的项目
我在下面添加了对静态ROLES类的引用,以将角色分配给加入该网站的人员。当我按下JOIN ASP.Net控件上的按钮时,我测试了代码,并且应用程序挂起。当然,我立即尝试调试以查找问题,但我无法再访问S
我想知道当数据库未附加时如何通过 C# 创建跨表查询(开发) 我知道 .mdf 文件在您执行时会临时附加到数据库中——但这才是真正造成困惑的根源。如果您的数据库连接全部用于分隔导致它们动态附加的数据库
方法一(只有mdf没有日志文件的可以恢复) 证明有效 1.新建同名数据库。 2.把该数据库设置为脱机。 3.删除其日志文件(.LDF),不删除后边的过程执行通不过
我在一个网站上工作,该网站可以从数据库 (sql server) 访问数据。它还将添加、更新删除数据库中的记录。似乎创建了一个 MDF 文件,其中包含数据库模式和我猜的所有记录?一旦开发完成并且我想将
我正在开发一个 Web 应用程序(它在 Visual Studio 2008 中的 asp.net mvc 框架测试版中)并希望对其进行版本控制。如何版本控制 App_Data 文件夹中的数据库文件(
我正在使用 C# 为大学项目创建 .Net 应用程序,需要一些帮助! 我有一个托管在网络驱动器上的 mdf 文件,需要多个客户端才能从他们的应用程序访问该数据库。每台客户端计算机都将运行自己的 sql
我在 SQL 服务器上运行了碎片整理报告,数据库的 mdf 文件被报告为 99% 的碎片。我问了一位同事,他们说这可能是正常的,因为这正是这种文件在内部工作的方式。 这是一个问题吗?为此文件运行磁盘碎
我正在尝试自动执行分离和删除数据库的过程(通过 VBS objshell.run)如果我手动使用 SSMS 进行分离和删除,然后我可以将数据库文件复制到另一个位置...但是,如果我使用: sqlcmd
我需要在用户点击时插入数据。但是,我的代码没有这样做。即使它显示数据已插入消息,也不会插入数据。我怎样才能找到错误? private void bunifuFlatButton2_Click(obje
我正在使用 SQL Server 2008 R2 和 VS2010。我使用这个工具制作了简单的应用程序。我在我的应用程序中将数据库作为 .mdf 附加,并将该应用程序部署在其他机器上,它工作正常。现在
我有 .mdf 文件。 数据库名称 - 人 .mdf 文件路径 - D:\db\People.mdf 接下来我尝试连接到 mdf DbProviderFactory df = DbProviderFa
我是一名优秀的程序员,十分优秀!