分类: 数据库开发技术
2011-01-13 10:14:28
我有个数据库名称为houseclient.mdf,houseclient_log.ldf;
新建一同名数据库(文件名,文件组都和原来的一样)(此处可以先新建数据库houseclient,然后备份,删掉houseclient数据库,在从刚才备份的文件里还原,因为拿到的数据文件名可
能是houseclient.mdf,而不是houseclient_data.mdf,了个去!),然后停止数据库服务,用原来文件替换新建的数据库文件,启动数据库,该数据库被设未suspect
把数据库改成紧急模式:
sp_configure 'allow',1
reconfigure with override
update sysdatabases set status=32768 where name ='houseclient'--这三条语句单个执行,houseclient为数据库名称
把LDF文件改名(或者删除原来的LDF文件),再执行:
DBCC REBUILD_LOG('houseclient','D:\Program Files\Microsoft SQL Server\MSSQL\Data\houseclient_log.ldf')
--D:\Program Files\Microsoft SQL Server\MSSQL\Data\houseclient_log.ldf为地址,houseclient为数据库名称
恢复数据库紧急模式:
update sysdatabases set status=0 where name='houseclient'
restore database houseclient WITH RECOVERY
sp_configure 'allow',0
reconfigure with override--上三条单个执行
用
DBCC CHECKDB ('houseclient')--houseclient为数据库名称
查看有没有错误
如果上面还是不行,试试吧数据库设为紧急模式,应该可以看到数据了,在把数据导出到一个新的数据库
chinaunix网友2011-03-07 14:22:03
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com