为什么我的数据库备份还原之后变成了(备用/只读) ,SQL Server 备份还原

为什么我的数据库备份还原之后变成了(备用/只读)

麻烦哪位帮忙解答下,不胜感激!

--可以用我下面这个脚本修复一下数据库试试
--如果不行的话 建议楼主分离一下这个数据库 重新附加一下
--有什么问题可以随时问我 希望采纳
--DataBaseName为修复的数据名
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
ALTER DATABASE [DataBaseName] SET EMERGENCY
GO
sp_dboption 'DataBaseName', 'single user', 'true'
GO
DBCC CHECKDB('DataBaseName','REPAIR_ALLOW_DATA_LOSS')
GO
ALTER DATABASE [DataBaseName] SET ONLINE
GO
sp_configure 'allow updates', 0 reconfigure with override
GO
sp_dboption 'DataBaseName', 'single user', 'false'
GO追问

谢谢你的回答,很有用!
不过能不能麻烦你帮忙解释下这些代码的意思,之前没有接触过,是用于数据库修复使用的吗?

在我提问之后。我又试着去解决,重新执行了
restore database database_name
with recovery
go

追答

--1) 使用指定值强制重新配置:(1、0表示为真假)
sp_configure 'allow updates', 1 reconfigure with override
--2) 设置为紧急状态:
alter database DataBaseName set emergency
--3) 设置为单用户模式:
alter database [DataBaseName] set single_user
--或者:Sp_dboption 'DataBaseName', 'single user', 'true'
--4) 修复发现的错误:
DBCC CHECKDB('DataBaseName','REPAIR_ALLOW_DATA_LOSS')
--5) 设置为联机、在线:
ALTER DATABASE [DataBaseName] SET ONLINE
--记得采纳啊 兄弟 有什么问题还可以问我

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-04
新建一个,重新还原
相似回答