当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 恢复系统数据库

MSSQL
优化SQL Server索引的小技巧
SQL Server的空值处理策略
Windows上的MySQL UDF开发
MS SQLSERVER中如何快速获取表的记录总数
MS SQLSERVER 中如何得到表的创建语句
使用索引调节向导调整应用程序的性能
使用查询分析器调整SQL服务器脚本
SQL Server到Oracle连接服务器的实现
数据库查询结果的动态排序(6)
数据库查询结果的动态排序(7)
保持Oracle数据库优良性能的若干诀窍
数据库管理员制胜之宝
在Linux下访问MS SQL Server数据库
关于如何在查询结果中添加自动编号
如何提取除最新十条记录之外的所有记录?
一个有关DISTINCT的问题解答
关于MSSQL Server中DATETIME类型数据的处理
TOP N 和SET ROWCOUNT N 哪个更快?
金额阿拉伯数字转换为中文的存储过程
谈谈数据从sql server数据库导入mysql数据库的体验

MSSQL 中的 恢复系统数据库


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 90 ::
收藏到网摘: n/a

  msdb-包含了有关作业、报警及操作员等信息如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然可以启动SQL Server服务,则可以通过RESTORE语句从系统数据库的备份中恢复数据库。

  关于系统数据库的恢复总结如下:

  在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:\(具体的备份文件名)

'