master库损坏如何恢复

2024-12-26 07:58:32
推荐回答(3个)
回答1:

关于master数据库: master 数据库记录 SQL Server 系统的所有系统级别信息.它记录所有的登录帐户和系统配置设置. master 数据库是这样一个数据库.它记录所有其它的数据库.其中包括数据库文件的位置. master 数据库记录 SQL Server 的初始化信息.它始终有一个可用的最新 master 数据库备份. 也就是说这个数据库损失或丢失的话.你的SQLSERVER根本就没法启动了.那么我们看看正常的修复方法. 一:重建master数据库【SQL Server 2005 】 版本中更改了使用 Setup 命令重新生成 master 数据库的用法。 在"浏览文件夹"对话框中.选择 SQL Server 2000 光盘上或用于安装 SQL Server 2000 的共享网络目录中的 \Data 文件夹.然后单击"确定"按钮. 单击"设置"按钮.在"排序规则设置"对话框中.验证或更改用于 Master 数据库或其它数据库的设置. 最初.显示的是默认排序规则设置.但这些设置有可能与安装期间选择的排序规则不匹配.可以选择与安装期间使用的排序规则相同的设置.也可以选择新的排序规则设置.完成后单击"确定"按钮. 在"重建 Master"对话框中单击"重建"按钮以启动进程. 重建 Master 实用工具重新安装 master 数据库. 说明:若要继续.则可能需要终止正在运行的服务器.按照上述方法执行后.SQL服务能正常启动. 重建数据库后.启动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:\(具体的备份文件名)

回答2:

遇到损坏或者错误的master数据库是最难解决情况之一。
Master数据库包含了SQL Server需要的关键信息。如果master数据库出错,那么SQL Server就不能启动。要在这种情况下还原master数据库,可以按照下面这些步骤来从灾难中恢复过来:
1. 使用\PRogram Files\Microsoft SQL Server\80\Tools\Binn目录下的rebuidm.exe文件重建master数据库。重建master数据库可以使数据库文件完整无缺。为以防万一,经常把数据和日志文件备份到一个单独的目录是个不错的主意。
2. 使用-m参数启动SQL Server,这样可以以单用户模式重新启动SQL Server。
3. 从最近一次已知最好的备份来还原master数据库。
4. 核实master数据库是不是已经成功还原:确认所有数据库都已恢复正常运行。从最近一次已知最好的备份来还原msdb数据库。
5. 以普通模式停止和启动SQL Server。
6. 向生产用户开放数据库。
如果这样做没有效,那么重建master数据库然后附加这个数据库。master数据库出现问题,那么服务器上所有的数据库都会出现问题。
总的来说,恢复时要完成的第一个步骤就是安装一个新的master数据库,使服务器至少能够启动。

回答3:

正常的恢复修复方法:
重建master数据库。

【SQL Server 2005 】 版本中更改了使用 Setup 命令重新生成 master 数据库的用法。运行 Setup.exe 重新生成、验证和修复 SQL Server 实例,并重新生成系统数据库。此过程通常用于为损坏的 SQL Server 安装重新生成 master 数据库。 该程序位于X:\Program Files\Microsoft SQL Server\90\Setup Bootstrap目录中.

【SQL Server 2000】中运行Rebuildm.exe.该程序位于X:\Program Files\Microsoft SQL Server\80\Tools\Binn 目录中.
1.在"重建 Master"对话框中单击"浏览"按钮。
2.在"浏览文件夹"对话框中.选择 SQL Server 2000 光盘上或用于安装 SQL Server 2000 的共享网络目录中的 \Data 文件夹.然后单击"确定"按钮.
3.单击"设置"按钮.在"排序规则设置"对话框中.验证或更改用于 Master 数据库或其它数据库的设置.
4.最初.显示的是默认排序规则设置.但这些设置有可能与安装期间选择的排序规则不匹配.可以选择与安装期间使用的排序规则相同的设置.也可以选择新的排序规则设置.完成后单击"确定"按钮.
5.在"重建 Master"对话框中单击"重建"按钮以启动进程. 重建 Master 实用工具重新安装 master 数据库.
6.说明:若要继续.则可能需要终止正在运行的服务器.按照上述方法执行后.SQL服务能正常启动.
7.重建数据库后.启动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

4)在命令行下输入SQLServr -c -sSingleUser.注意:必须是在命令行下进入单用户模式后启动 Query 。

5)Analyzer执行语句:
RESTORE DATABASE master form disk=''''c:\(具体的备份文件名)。