首页数据库数据库修复 数据库如何修复

数据库修复 数据库如何修复

编程之家2023-10-22104次浏览

大家好,今天小编来为大家解答数据库修复这个问题,数据库如何修复很多人还不知道,现在让我们一起来看看吧!

数据库修复 数据库如何修复

如何修复 SQL 数据库置疑

修复sql2000数据库置疑

在实际的操作中由于突然断电或者突然断网造成数据库置疑(在企业管理器中数据库后面出现置疑两个字),下面我们通过以下方法来进行修复置疑的数据库。

A.我们使用默认方式建立一个供恢复使用的数据库(如test)。可以在SQL Server Enterprise Manager里面建立。

B.停掉数据库服务器。

C.将刚才生成的数据库的日志文件test_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据库数据文件test_data.mdf。

D.启动数据库服务器。此时会看到数据库test的状态为“置疑”。这时候不能对此数据库进行任何操作。

数据库修复 数据库如何修复

E.设置数据库允许直接操作系统表。此操作可以在SQL Server Enterprise Manager里面选择数据库服务器,按右键,选择“属性”,在“服务器设置”页面中将“允许对系统目录直接修改”一项选中。也可以使用如下语句来实现。

use master

go

sp_configure'allow updates',1

go

reconfigure with override

数据库修复 数据库如何修复

go

F.设置test为紧急修复模式

update sysdatabases set status=-32768 where dbid=DB_ID('test')

此时可以在SQL Server Enterprise Manager里面看到该数据库处于“只读\置疑\脱机\紧急模式”可以看到数据库里面的表,但是仅仅有系统表

G.下面执行真正的恢复操作,重建数据库日志文件

dbcc rebuild_log('test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf')

执行过程中,如果遇到下列提示信息:

服务器:消息 5030,级别 16,状态 1,行 1

未能排它地锁定数据库以执行该操作。

DBCC执行完毕。如果 DBCC输出了错误信息,请与系统管理员联系。

说明您的其他程序正在使用该数据库,如果刚才您在F步骤中使用SQL Server Enterprise Manager打开了test库的系统表,那么退出SQL Server Enterprise Manager就可以了。

正确执行完成的提示应该类似于:

警告:数据库'test'的日志已重建。已失去事务的一致性。应运行 DBCC CHECKDB以验证物理一致性。将必须重置数据库选项,并且可能需要删除多余的日志文件。

DBCC执行完毕。如果 DBCC输出了错误信息,请与系统管理员联系。

此时打开在SQL Server Enterprise Manager里面会看到数据库的状态为“只供DBO使用”。此时可以访问数据库里面的用户表了。

H.验证数据库一致性(可省略)

dbcc checkdb('test')

一般执行结果如下:

CHECKDB发现了 0个分配错误和 0个一致性错误(在数据库'test'中)。

DBCC执行完毕。如果 DBCC输出了错误信息,请与系统管理员联系。

I.设置数据库为正常状态

sp_dboption'test','dbo use only','false'

如果没有出错,那么恭喜,现在就可以正常的使用恢复后的数据库啦。

J.最后一步,我们要将步骤E中设置的“允许对系统目录直接修改”一项恢复。因为平时直接操作系统表是一件比较危险的事情。当然,我们可以在SQL Server Enterprise Manager里面恢复,也可以使用如下语句完成

sp_configure'allow updates',0

go

reconfigure with override

go

数据库如何修复

可能有文件缺失或损坏,可以停掉SQL Server服务,先将数据库文件夹复制一份并安全存储,对数据库所在磁盘执行CHKDSK,排除磁盘错误,然后启动SQL Server服务,尝试修复数据库:

1.在SQL Server Management Studio中随便创建一个数据库,例如:PVLink。

2.停止SQL Server服务。

如果不停止此服务,刚才创建的PVLink数据库将即不能被拷贝,也不能被覆盖。

3.把已经损坏的数据库的mdf文件拷贝并覆盖刚才新建的数据库产生的mdf文件。

4.启动SQL Server服务。

此时可以看见刚才创建的PVLink数据库名字后面没有加号,无法察看其任何信息,其实目前它已经处于无法使用的状态。

5.把数据库设置为紧急状态。

通过在“查询分析器”中执行:alter database PVLink set EMERGENCY可以将数据库设置为紧急状态,此时数据库PVLink的图标改变成粉红色并出现“紧急”字样。

6.将数据库设置为单用户模式。

如果不设置为单用户模式,我们将无法使用带有效repair选项的DBCC CHECKDB来检查/修复数据库,SQL Server 2005设置单用户模式比SQL Server 2000容易,只要在“查询分析器”中执行:

use master

go

sp_dboption'PVLink',single,true

7.修复数据库

修复数据库主要使用DBCC来操作,一般来讲,我们可以使用以下三个选项来修复:

●REPAIR_ALLOW_ DATA_LOSS

尝试修复报告的所有错误。这些修复可能会导致一些数据丢失。

●REPAIR_FAST

仅为保持向后兼容性而保留。

●REPAIR_REBUILD

执行由 REPAIR_FAST执行的所有修复,包括需要较长时间的修复(如重建索引)。执行这些修复时不会有丢失数据的危险。

一般我们通过执行:DBCC CHECKDB('PVLink',REPAIR_REBUILD)即可完成修复工作,此时 SQL Server 2005会给出很多提示,因为这个过程可能会导致一些数据库设计或者数据的丢失,并且在这个过程中,会产生新的以ldf为扩展名的数据库日志文件。

8.完成以上的步骤后,一般情况下数据库应该可用了,如果数据库此时仍然是紧急状态,可以通过:alter database PVLink set ONLINE,把数据库变成在线状态。

检查PVLink数据库内数据是否正常,是的话换回原数据库即可。

电脑上数据库坏了该如何恢复正常

如果没有主数据库,您就无法成功地启动SQL Server。在本文里,我将向您介绍在发生崩溃的情况下如何修复主数据库,并告诉您如何重建主数据库,如果有必要的话。

制定预案

制定一个应对崩溃和/或主数据库故障的预案十分重要。这将有助于您在碰到灾难的情况下按照既定的方法进行处理,而不是迫于压力仓促作出反应。我碰到过很多很容易就陷入惊慌的状况,但是由于保持冷静并按照正确的方法来处理问题,我最后成功地度过了所有的困境。

怎么才能知道您的主数据库已经崩溃?

在正式开始讨论碰到系统故障如何修复和重建的主数据库之前,我们需要先了解如何辨别它已经崩溃了。要说明这一点,我会弄垮一个主数据库,告诉您主数据库崩溃会发生什么样的症状。

现在让我们假设您的公司碰到了电涌,造成SQL Server重启。在重新启动的时候,SQL Server却没有正常启动。如果查看错误日志,您会看到主数据库崩溃或者丢失。既然您知道需要查看什么信息,那就让我们看看如何修复主数据库。

修复您的主数据库

修复主数据库的第一步是使用“重建向导(Rebuild Wizard,Rebuildm.exe),它放在\Program Files\Microsoft SQL Server\80\Tools\BINN目录下。现在就让我们来看看重建向导是如何工作的。

双击Rebuildm.exe启动对话框。

在这个对话框里,您可以指定数据库服务器的修复设置,以及原始安装的数据文件的位置。要让这一过程更容易和更快,就要把x86目录从SQL的光盘上复制到硬盘上,并把指向改到本地的副本。一旦验证完了所有的信息,点击“重建(Rebuild)”。然后系统就会提示您确认操作

点击“确定(Yes)”。一旦重建过程完成,您会看到一条重建成功的消息。您现在就有了一个全新的主数据库,准备好修复主数据库了。

首先,打开命令行提示符,输入\Program Files\Microsoft SQL Server\MSSQL\BINN\目录下的sqlservr.exe–c–m命令,启动单用户模式下的SQL Server。

在单用户模式下启动SQL Server之后,您可以利用备份文件修复主数据库。您可以用“查询分析器(Query Analyzer)”或者“SQL企业管理器(SQL Enterprise Manager)”来修复它。

如果使用企业服务器,就要右击主数据库,选择“所有任务|修复数据库(All Tasks| Restore Database)”,浏览到您设备所在的位置,点击两次“OK”,您就可以成功地修复主数据库了。

如果由于某种原因您的修复操作无法成功完成,那么您可以试试别的方法。只用简单地重建主数据库并添加驻留在数据目录下的所有数据库就可以了。您可以用企业管理器或者查询分析器来添加数据库。在企业管理器里,右击“数据库(Databases)”,选择“添加数据库(Attach Database)”

关于数据库修复和数据库如何修复的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

access数据库引擎(wps未安装access数据库引擎)数据库操作工具,mysql数据库管理工具有哪些