欢迎来到天天文库
浏览记录
ID:50136131
大小:20.00 KB
页数:4页
时间:2020-03-04
《SQL 2000 数据库置疑修复语句.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据库置疑及修复Ø数据库置疑处理提要:在数据库置疑或者修复的处理过程中,须先将文中的数据库更改为真实的数据库名称.数据库置疑修复处理完成后,需执行第二步骤,使用DBCC语句对数据库进行检测并修复错误.对于损坏的数据库,可参照数据库修复处理方法进行处理.步骤1:停止SQL服务管理器,将原数据文件拷贝出来进行备份,然后将原数据库删除,使用思迅数据库安装程序创建一个新的数据库。步骤2:停止SQLServer服务管理器步骤3:用备份出来的老数据库的MDF文件替换新数据库相应的MDF文件,并把LDF文件删除。步骤4:重新启动SQLServer服务,然后运行如下命令:Us
2、eMasterGosp_configure'allowupdates',1reconfigurewithoverrideGobegintranupdatesysdatabasessetstatus=32768wherename='issfoodv6_branch'--Verifyonerowisupdatedbeforecommittingcommittran步骤5:停止SQL然后重新启动SQLServer服务,然后运行如下命令:DBCCTRACEON(3604)DBCCREBUILD_LOG('issfoodv6_branch','C:ProgramFil
3、esMicrosoftSQLServerMSSQLDataissfoodv6_branch_log.ldf')Go--注:此处的db_name一定要更换为需要修复的数据库名称,比如此实例中的issfoodv6_branch步骤6:停止SQL然后重新启动SQLServer服务,然后运行:usemasterupdatesysdatabasessetstatus=8wherename='issfoodv6_branch'Gosp_configure'allowupdates',0reconfigurewithoverrideGo步骤7:运行dbcccheck
4、db(issfoodv6_branch)检查数据库的完整性Ø数据库修复/******************************************************************本语句可以多次执行,一直到没有红色文字出现,则修复成功*这类故障是一般是由于磁盘读写问题造成的。*'issfoodv6_branch'代表要修复的数据库*下面的语句是修复总部数据库的SQL,如需要修复分部的数据库,请将'issfoodv6_branch'改为'issfoodv6_branch_branch'***************************
5、***************************************/--请在查询分析器中执行下列语句.执行前断开其它所有数据库连接,最好是断开网线USEmasterGo--单用户模式EXECsp_dboption'issfoodv6_branch','singleuser','TRUE'go--数据库检查DBCCCHECKDB('issfoodv6_branch')Go--如果返回结果出现了红色的提示文字,说明数据库中存在错误,需要修复--数据库修复DBCCCHECKDB('issfoodv6_branch',repair_rebuild)Go--
6、再次数据库检查,如果返回结果中没有了红色的提示文字,说明修复成功;DBCCCHECKDB('issfoodv6_branch')Go--否则意味着还需要更高级别的修复;尝试将上面修复语句的'repair_rebuild'换为'repair_allow_data_loss'再试,之后再次检查数据库。--如果还有错误未修复,--退出前请一定要执行以下语句返回到多用户模式EXECsp_dboption'issfoodv6_branch','singleuser','FALSE'GoØ数据库索引修复损坏后的数据库在通过以上语句修复数据库完后,一般都伴随着索引的损坏。所
7、以务必在数据库修复完后,执行以下语句修复索引。use'issfoodv6_branch'--可改成相应的数据库名godeclare@tablenamevarchar(100)declaretest_curcursorforselectobject_name(id)fromsyscolumnswherestatus=128opentest_curfetchtest_curinto@tablenamewhile@@fetch_status=0beginDBCCCHECKIDENT(@tablename,RESEED)fetchtest_curinto@tablen
8、ameendclosetest_cur
此文档下载收益归作者所有