收藏 分享(赏)

SQL 2000 数据库置疑修复语句.doc

上传人:精品资料 文档编号:11046411 上传时间:2020-02-05 格式:DOC 页数:4 大小:20KB
下载 相关 举报
SQL 2000 数据库置疑修复语句.doc_第1页
第1页 / 共4页
SQL 2000 数据库置疑修复语句.doc_第2页
第2页 / 共4页
SQL 2000 数据库置疑修复语句.doc_第3页
第3页 / 共4页
SQL 2000 数据库置疑修复语句.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、数据库置疑及修复 数据库置疑处理提要:在数据库置疑或者修复的处理过程中,须先将文中的数据库更改为真实的数据库名称.数据库置疑修复处理完成后,需执行第二步骤,使用 DBCC 语句对数据库进行检测并修复错误.对于损坏的数据库,可参照数据库修复处理方法进行处理.步骤 1:停止 SQL 服务管理器,将原数据文件拷贝出来进行备份,然后将原数据库删除,使用思迅数据库安装程序创建一个新的数据库。步骤 2:停止 SQL Server 服务管理器步骤 3:用备份出来的老数据库的 MDF 文件替换新数据库相应的 MDF 文件,并把 LDF 文件删除。步骤 4:重新启动 SQL Server 服务,然后运行如下命令

2、:Use MasterGosp_configure allow updates, 1reconfigure with overrideGobegin tranupdate sysdatabases set status = 32768 where name = issfoodv6_branch-Verify one row is updated before committingcommit tran步骤 5:停止 SQL 然后重新启动 SQL Server 服务,然后运行如下命令:DBCC TRACEON(3604)DBCC REBUILD_LOG(issfoodv6_branch,C:Pr

3、ogramFilesMicrosoft SQL ServerMSSQLDataissfoodv6_branch_log.ldf)Go-注:此处的 db_name 一定要更换为需要修复的数据库名称,比如此实例中的issfoodv6_branch步骤 6:停止 SQL 然后重新启动 SQL Server 服务,然后运行:use masterupdate sysdatabases set status = 8 where name = issfoodv6_branchGosp_configure allow updates, 0reconfigure with overrideGo步骤 7:运行 d

4、bcc checkdb(issfoodv6_branch) 检查数据库的完整性 数据库修复/* 本语句可以多次执行,一直到没有红色文字出现,则修复成功* 这类故障是一般是由于磁盘读写问题造成的。* issfoodv6_branch代表要修复的数据库* 下面的语句是修复总部数据库的 SQL,如需要修复分部的数据库,请将 issfoodv6_branch 改为 issfoodv6_branch_branch*/-请在查询分析器中执行下列语句.执行前断开其它所有数据库连接,最好是断开网线USE masterGo-单用户模式EXEC sp_dboption issfoodv6_branch, sing

5、le user, TRUEgo-数据库检查DBCC CHECKDB (issfoodv6_branch)Go-如果返回结果出现了红色的提示文字,说明数据库中存在错误,需要修复-数据库修复DBCC CHECKDB (issfoodv6_branch,repair_rebuild)Go-再次数据库检查,如果返回结果中没有了红色的提示文字,说明修复成功;DBCC CHECKDB (issfoodv6_branch)Go-否则意味着还需要更高级别的修复;尝试将上面修复语句的repair_rebuild 换为repair_allow_data_loss再试,之后再次检查数据库。-如果还有错误未修复,-退

6、出前请一定要执行以下语句返回到多用户模式EXEC sp_dboption issfoodv6_branch, single user,FALSEGo 数据库索引修复损坏后的数据库在通过以上语句修复数据库完后,一般都伴随着索引的损坏。所以务必在数据库修复完后,执行以下语句修复索引。use issfoodv6_branch-可改成相应的数据库名godeclare tablename varchar(100)declare test_cur cursor forselect object_name(id) from syscolumns where status=128open test_curfetch test_cur into tablenamewhile fetch_status=0begin DBCC CHECKIDENT (tablename, RESEED) fetch test_cur into tablenameendclose test_curdeallocate test_curgo

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报