sql server2005数据库,恢复时报错“设备'XXXXXX'上的媒体家族的结构不正确。SQL Server无法处理此媒体家族。”
重建数据库、强制恢复等方法试过失败之后,硬着头皮上阵,用了一下论坛里( http://bbs.youkuaiyun.com/topics/210059893 )查到的命令:
|
分离出还原失败的数据库Geb
先创建一个同样的数据库Geb
停掉server服务,用旧的数据文件覆盖新创建的文件(只要mdf就可以)。
启动server服务
运行以下命令
sp_configure 'allow' ,1
reconfigure with override
update sysdatabases set status=32768 where name='Geb'
dbcc rebuild_log('Geb','d:\database\newlog.ldf')
update sysdatabases set status=0 where name='Geb'
sp_configure 'allow',0
reconfigure with override
dbcc checkdb('Geb')
若发现有错误,还要进一步找出出错的地方,可以先检查
DBCC CHECKTABLE (sysobjects)
DBCC CHECKTABLE (sysindexes)
DBCC CHECKTABLE (syscolumns )
DBCC CHECKTABLE (systypes)
|
|
用完了就好了,需要注意的是分离还原好像不需要,报错后会直接显示“置疑”状态,直接对master库进行操作就可以。执行完上面的命令就可以找到原数据库了,然后dbcc一下几个master表就可以了。
反思:学艺太不精了,幸好是网上有相关资料直接输命令才弄好了,如果没有这些资料,靠自己是无论如何也写不出这种命令的,虽然负责的系统多了点,还是应该加强学习,打好基本功才是正事。