master数据库恢复问题

时间:2022-09-11 16:23:08
我在恢复master数据库时出现"RESTORE DATABASE must be used in single user mode when tying to restore the master database."请问是怎么回事啊?

8 个解决方案

#1


EXEC sp_dboption 'master', 'single user', 'TRUE'

#2


先进入单用户状态,然后再恢复。

#3


http://expert.csdn.net/Expert/topic/2290/2290385.xml?temp=.376034


如何恢复系统数据库? 
 
关于系统数据库的恢复总结如下: 
  在SQL Server数据库中,系统信息存储在系统数据库中,主要的系统数据库包括: 
  master-从整体上控制用户数据库和SQL Server操作,在创建了任何用户定义的对象后,都要备份它
  model-为新数据库提供模版和原型 
  msdb-包含了有关作业、报警及操作员等信息如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然可以启动SQL Server服务,则可以通过RESTORE语句从系统数据库的备份中恢复数据库。 
  如果master坏了,不能启动系统,可以按照下面步骤进行恢复 
1 重建系统数据库 运行c:\mssql7\binn\rebuildm.exe,按照提示进行即可,过

程中需要系统数据库样本的路径,可在安装光盘中找到; 

2 重建系统数据库后,启动SQL Server服务,用系统数据库的备份恢复数据库就

行了通常恢复顺序为master->msdb->model 
在恢复master的备份时要注意:必须在single user模式下进行,有以下几种方法

进入单用户模式: 
1 可以在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m 
  其中:-c 可以缩短启动时间,SQL Server 不作为Windows NT的服务启动 
        -f 用最小配置启动SQL Server 
        -m 单用户模式启动SQL Server 
2 可以在控制面板-服务-MSSQLServer的启动参数中输入-c -f -m或者输入-m,点

击开始 
  
3 还有一种更灵活的启动方法:用存在注册表里的启动参数启动 
  在MSSQLServer项下添加项SingleUser,具体内容如下所示: 
  HKEY_LOCAL_MACHINE 
    \Software 
       \Microsoft 
          \MSSQLServer 
            \SingleUser 
              \Parameters 
                   SQLArg0 : REG_SZ : -dC:\MSSQL7\DATA\MASTER.DAT 
                   SQLArg1 : REG_SZ : -eC:\MSSQL7\LOG\ERRORLOG 
                   SQLArg2 : REG_SZ : -lC:\MSSQL7\DATA\MASTLOG.DAT 
                   SQLArg3 : REG_SZ : -m 
在命令行下输入SQLServr -c -sSingleUser,注意:必须是在命令行下进入单用户模式后启动 Query Analyzer执行语句: 
RESTORE DATABASE master form disk='c:\(具体的备份文件名)
 


#4


1、使用完全备份,备份master数据库(恢复时较简单,生成.dat文件)
2、使用单用户模式恢复master数据库
开始---运行--CMD
进入sqlserver安装目录\MSSQL\Binn\sqlservr.exe -c -m <回车>
3、从备份文件恢复master数据库

#5


已经够详细了.

#6


我在控制面板-服务中加参数-m启动mssql server后,恢复数据库master后出错,说连不上server,然后server服务停止,再怎么启动都不行,重新启动机子也不行。怎么回事啊?

#7


今天正好解决我的问题,谢谢!

#8


jakieliu(边城浪子):
你的问题解决了吗?我也出现相同的问题.

#1


EXEC sp_dboption 'master', 'single user', 'TRUE'

#2


先进入单用户状态,然后再恢复。

#3


http://expert.csdn.net/Expert/topic/2290/2290385.xml?temp=.376034


如何恢复系统数据库? 
 
关于系统数据库的恢复总结如下: 
  在SQL Server数据库中,系统信息存储在系统数据库中,主要的系统数据库包括: 
  master-从整体上控制用户数据库和SQL Server操作,在创建了任何用户定义的对象后,都要备份它
  model-为新数据库提供模版和原型 
  msdb-包含了有关作业、报警及操作员等信息如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然可以启动SQL Server服务,则可以通过RESTORE语句从系统数据库的备份中恢复数据库。 
  如果master坏了,不能启动系统,可以按照下面步骤进行恢复 
1 重建系统数据库 运行c:\mssql7\binn\rebuildm.exe,按照提示进行即可,过

程中需要系统数据库样本的路径,可在安装光盘中找到; 

2 重建系统数据库后,启动SQL Server服务,用系统数据库的备份恢复数据库就

行了通常恢复顺序为master->msdb->model 
在恢复master的备份时要注意:必须在single user模式下进行,有以下几种方法

进入单用户模式: 
1 可以在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m 
  其中:-c 可以缩短启动时间,SQL Server 不作为Windows NT的服务启动 
        -f 用最小配置启动SQL Server 
        -m 单用户模式启动SQL Server 
2 可以在控制面板-服务-MSSQLServer的启动参数中输入-c -f -m或者输入-m,点

击开始 
  
3 还有一种更灵活的启动方法:用存在注册表里的启动参数启动 
  在MSSQLServer项下添加项SingleUser,具体内容如下所示: 
  HKEY_LOCAL_MACHINE 
    \Software 
       \Microsoft 
          \MSSQLServer 
            \SingleUser 
              \Parameters 
                   SQLArg0 : REG_SZ : -dC:\MSSQL7\DATA\MASTER.DAT 
                   SQLArg1 : REG_SZ : -eC:\MSSQL7\LOG\ERRORLOG 
                   SQLArg2 : REG_SZ : -lC:\MSSQL7\DATA\MASTLOG.DAT 
                   SQLArg3 : REG_SZ : -m 
在命令行下输入SQLServr -c -sSingleUser,注意:必须是在命令行下进入单用户模式后启动 Query Analyzer执行语句: 
RESTORE DATABASE master form disk='c:\(具体的备份文件名)
 


#4


1、使用完全备份,备份master数据库(恢复时较简单,生成.dat文件)
2、使用单用户模式恢复master数据库
开始---运行--CMD
进入sqlserver安装目录\MSSQL\Binn\sqlservr.exe -c -m <回车>
3、从备份文件恢复master数据库

#5


已经够详细了.

#6


我在控制面板-服务中加参数-m启动mssql server后,恢复数据库master后出错,说连不上server,然后server服务停止,再怎么启动都不行,重新启动机子也不行。怎么回事啊?

#7


今天正好解决我的问题,谢谢!

#8


jakieliu(边城浪子):
你的问题解决了吗?我也出现相同的问题.