日期:2014-05-17  浏览次数:20603 次

SQL SERVER 2000 数据库维护计划
SQL SERVER 2000 SP4
我建立了一个数据库计划。
对一个用户数据库执行日常维护操作。
但是遇到一个问题
SQL code
 
/*Microsoft (R) SQLMaint 实用工具(Unicode),版本 登录到 SQL Server“WWW-1B7B6C4F3C6”以“WWW-1B7B6C4F3C6\Administrator”(受信任)身份
开始维护计划“XMMDS”(在 2012-10-20 18:00:01 上)
[Microsoft SQL-DMO (ODBC SQLState: 42000)] 错误 5070: [Microsoft][ODBC SQL Server Driver][SQL Server]如果其他用户正使用数据库 'XMMDS',则数据库状态不能更改
[Microsoft][ODBC SQL Server Driver][SQL Server]ALTER DATABASE 语句失败。
[Microsoft][ODBC SQL Server Driver][SQL Server]sp_dboption 命令失败。
[1] 数据库 XMMDS: 检查数据和索引链接...
[Microsoft SQL-DMO (ODBC SQLState: 42000)] 错误 7919: [Microsoft][ODBC SQL Server Driver][SQL Server]未处理修复语句。数据库需要处于单用户模式下。

    发现下列错误:

[Microsoft][ODBC SQL Server Driver][SQL Server]未处理修复语句。数据库需要处于单用户模式下。
    ** 执行时间: 0 小时,0 分钟,1 秒 **

[2] 数据库 XMMDS: 事务日志 备份...
    因为发现数据验证错误,所以未进行备份。

正在删除旧的文本报告...   已删除 0 个文件。

结束维护计划“XMMDS”(在 2012-10-20 18:00:02 上)
SQLMAINT.EXE 进程退出代码: 1 (失败)

正在将报告以电子邮件的形式发送给操作员“dlf”
*/

我手动调整为单用户模式
并且 使用DBCC 进行修复,修复结果无任何错误
依然出现下面代码
SQL code

/*

Microsoft (R) SQLMaint 实用工具(Unicode),版本 登录到 SQL Server“WWW-1B7B6C4F3C6”以“WWW-1B7B6C4F3C6\Administrator”(受信任)身份
开始维护计划“XMMDS”(在 2012-10-20 16:00:03 上)
[1] 数据库 XMMDS: 检查数据和索引链接...
[Microsoft SQL-DMO] 错误 22285: [SQL-DMO]数据库“XMMDS”已打开,并且一次只能有一个用户。

    发现下列错误:

[Microsoft][ODBC SQL Server Driver][SQL Server]数据库 'XMMDS' 已打开,并且同一时刻只能有一个用户。
    ** 执行时间: 0 小时,0 分钟,4 秒 **

[2] 数据库 XMMDS: 事务日志 备份...

    因为发现数据验证错误,所以未进行备份。

正在删除旧的文本报告...   已删除 0 个文件。

结束维护计划“XMMDS”(在 2012-10-20 16:00:08 上)
SQLMAINT.EXE 进程退出代码: 1 (失败)

正在将报告以电子邮件的形式发送给操作员“dlf”


*/


现在我已经无奈了,请各位大侠帮忙看下

------解决方案--------------------
重启一下电脑或者服务试试.
------解决方案--------------------
第二个错误提示和明显了

虽然你切换到了单用户模式,但是连接它的用户不是一个
你从FROM sysprocesses 中查出来 dbid=db_id('XMMDS') 的spid
然后kill 掉


------解决方案--------------------
数据库需要处于单用户模式下,你这个连接的用户不止一个,你直接重启下sql server 服务试试