server2005下复制一个数据库,结果最后一步出错,复制没成功反而导致数据库打不开了,
名称后出现"单个用户",估计是进行复制的时候自动将其改为了单用户模式,可通过执行如下语句恢复多用户模式。
原理是先kill占用了数据库的那个进程,然后设置数据库为多用户模式。
USE
master
GO
DECLARE
@SQL
VARCHAR(MAX)
SET
@SQL=''
SELECT
@SQL=@SQL+'
KILL
'+RTRIM(SPID)
FROM
mastersysprocesses
WHERE
dbid=DB_ID('数据库名')
EXEC(@SQL)
GO
ALTER
DATABASE
数据库名
SET
MULTI_USER
当博途访问数据库发生这种 *** 作故障时,可以按如下 *** 作步骤可解决此方法,打开数据库里的Sql 查询编辑器窗口,运行以下的命令(注意:jd13dafa为对应可疑的数据库名称,执行时,请改为你的可疑的数据库名称)。jd13dafa为数据库名称
1、修改数据库为紧急模式
ALTER DATABASE jd13dafa SET EMERGENCY
2、使数据库变为单用户模式
ALTER DATABASE jd13dafa SET SINGLE_USER
3、修复数据库日志重新生成,此命令检查的分配,结构,逻辑完整性和所有数据库中的对象错误。当您指定“REPAIR_ALLOW_DATA_LOSS”作为DBCC CHECKDB命令参数,该程序将检查和修复报告的错误。但是,这些修复可能会导致一些数据丢失。
DBCC CheckDB (jd13dafa , REPAIR_ALLOW_DATA_LOSS)
4、使数据库变回为多用户模式
2005往后那些所谓的系统表已经是一个视图,所以不能更新。1、改削数据库为紧迫模式
2、使数据库变为的暌姑户模式
Net
stop
mssqlserver
--遏制处事
3、修复数据库日志年夜头生成,此呼吁搜检的分配,结构,逻辑完整性和所稀有据库中的对象错误。当您指定“REPAIR_ALLOW_DATA_LOSS”作为DBCC
CHECKDB呼吁参数,该轨范将搜检和修复陈述的错误。可是,这些修复可能会导致一些数据丢失踪。
当数据库发生这种 *** 作故障时,按如下 *** 作轨范可解决此问题,打开数据库里的Sql
发芽编纂器窗口,运行以下的呼吁。
1
DBCC
CheckDB
(Sharepoint_Config
,
REPAIR_ALLOW_DATA_LOSS)
1
ALTER
DATABASE
Sharepoint_Config
SET
MULTI_USER
4、使数据库变回为多用户模式
1
ALTER
DATABASE
Sharepoint_Config
SET
SINGLE_USER
5、起头->运行->输入cmd->打开DOS呼吁窗口,输入以下呼吁重启数据库处事
1
ALTER
DATABASE
Sharepoint_Config
SET
EMERGENCY解决体例:
Net
start
mssqlserver
--启动处事
再次,打开Sql
Server
2005时被标识表记标帜为“可疑”的数据库已恢复正常状况。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)