关键词不能为空

当前您在: 主页 > 英语 >

如何恢复数据库文件

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-24 15:02
tags:

-

2021年2月24日发(作者:elong)


仅有日志文件的数据修复处理示例


.sql


USE


master



--


创建数据库



CREATE



DATABASE


db


ON



PRIMARY


(


NAME


=


'db_data'


,


FILENAME


=



'c:db_'


)


LOG



ON


(


NAME


=


'db_log'


,


FILENAME


=


'c:'


)


GO




--


创建表



CREATE



TABLE


(id


int


)


INSERT



SELECT


id


FROM


sysobjects


GO



--


做文件组备份



BACKUP



DATABASE


db


TO



DISK


=


'c:'



WITH


FORMAT



--


备份后


,


再做数据 处理



CREATE



TABLE


(id


int


)


INSERT



SELECT


id


FROM


sysobjects


GO




/* --


下面演示了破坏数据文件的处理,这些操作在操作系统中进行




1.


停止


SQL Server


服务


(msqlserver


服务


)


2.


删除文件


c:db_ (


模拟破坏


)


3.


重新


SQL Server


服务


,


此时数据库


DB


置 疑



--*/



GO




--


下面演示了如何恢复数据



--


首先要备份当前日志



BACKUP



LOG


db


TO



DISK


=


'c:db_'



WITH


FORMAT,NO_TRUNCATE


--


利用文件组备份恢复破坏的文件



RESTORE



DATABASE


db


FROM



DISK

< br>=


'c:'



WITH


NORECOVERY


--


还原到日志点



RESTORE



LOG


db


FROM



DISK

< br>=


'c:db_'



WITH


RECOVERY


--


显示已经恢复的数据



SELECT



COUNT

< p>
(


*


)


FROM



SELECT



COUNT

< p>
(


*


)


FROM



GO




--


删除测试



DROP



DATABASE


db




无数据库日志文件恢复数据库方法两则



================================================= =====================


方法一




1.


新建一个同名的数据库




2.


再停掉


sql server(


注意不要分离数据库


)



3.


用原数据库的数据文件覆盖掉这 个新建的数据库




4.


再重启


sql server



5.


此时打开企业管理器时会出现置 疑,


先不管,


执行下面的语句


(注意修 改其中的数据库名


)



6.


完成后一般就可以访问数据库中的数据了


,


这时


,


数据库本身一般还要问题


,


解决办法是


,





数据库的脚本创建一个新的数据库


,


并将数据导进去就行了


.



USE MASTER


GO



SP_CONFIGURE 'ALLOW UPDA


TES',1 RECONFIGURE WITH OVERRIDE


GO



UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='


置疑的数据库名


'


Go



sp_dboption '


置疑的数据库名


', 'single user', 'true'


Go



DBCC CHECKDB('


置疑的数据库名


')



Go



update sysdatabases set status =28 where name='


置疑的数据库名


'


Go



sp_configure 'allow updates', 0 reconfigure with override


Go




sp_dboption '


置疑的数据库名


', 'single user', 'false'


Go


================= ================================================== ===


方法二



< br>1


,把数据库设置为


emergency mode




2


,重新 建立一个


log


文件




3


,把


SQL Server


重新启动一下




4


,把应用数据库设置成单用户模式




5


,做


DBCC CHECKDB



6


,如果没有什么大问题就可以把数 据库状态改回去了,记得别忘了把系统表的修改选项关





我实践了一下,把应用数据库的数据文件移走,重新建立一个 同名的数据库


XXX


,然后停



SQL


服务,把原来的数据文件再覆盖回来。之后,按照怡红公子的步 骤走。




但是,也很遗憾,除了第< /p>


2


步之外,其他步骤执行非常成功。可惜,重启

< br>SQL Server


之后,


这个应用数据库仍然是置疑 !




不过,让我欣慰的是,这么做之 后,倒是能够


Select


数据了,让我大出一口气。只不过, 组


件使用数据库时,报告说:


“发生错误:

-2147467259,


未能在数据库



'XXX'


中运行



BEGIN


TRANSACTION


,因为该数据库处于回避恢复模式。








最终成功恢复的全部步骤



设置数据库为紧急模式



停掉


SQL Server


服务;




把应用数据库的数据文件


XXX_


移走;

< p>



重新建立一个同名的数据库

< br>XXX




< br>停掉


SQL


服务;




把原来的数据文件再覆盖回来;


-


-


-


-


-


-


-


-



本文更新与2021-02-24 15:02,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/670295.html

如何恢复数据库文件的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文