在SQL Server中的master数据库是整个SQL Server的核心。如果此数据库被破坏,那么SQL Server就无法再启动和运行了。那么当master数据库出现问题后我们该如何处理呢?本文就专门针对这个问题提出相应的解决方法。
一、利用rebuildm.exe工具重建master数据库
1.通常来说当master数据库出问题后,SQL Server服务是无法启动的。但有的时候也可以启动,只是客户无法连接到SQL Server,当这种情况出现的时候我们必须将SQL Server服务停止。
2.在系统盘中找到“\Program Files\Microsoft SQL Server\80\Tools\Bin”目录,请注意这里的Microsoft SQL Server目录不是你指定的安装目录,这个目录是固定在系统盘中的Program Files目录中。
3.双击目录下的rebuildm.exe文件,然后会出现相应的窗口。
4.然后点“浏览”按钮后,将安装光盘放入光驱中,选择光盘中的“\x86\DATA”目录,通常来说我们都是使用的默认排序规则(在这里也可以选择其他的排序规则,如:bin二进制,区分大小写等),所以只要点击“重建”按钮就可以了。随后开始重建master数据库。等待片刻后,系统会告诉你重建数据库成功。
提示:在使用此方法的时候,除了master数据库会被重建外,msdb,model等系统数据库都会重建。另外重建后的数据库会丢掉用户建立的数据库,比如在重建以前有一个数据库g,重建后数据库g将不再包含在SQL Server中。但是数据库g的数据和日志文件并没丢失,我们只要右击“数据库”节点选择“附加数据库”后指定g的位置就可以将它添加到SQL Server中了。
二、用备份恢复master数据库
这种情况用于SQL Server可以启动,但是数据库数据有问题的情况,其操作和一般的数据库的备份恢复一样,这里就不多说了。
提示:如果你在备份后修改了数据库中的数据,比如备份后建立了一个新的数据库,那么,在恢复master数据库后,那个数据库就不会存在了。同样可以使用附加数据库的方法将它添加到SQL Server中。其原因在于,新建数据库后,SQL Server会在master数据库的多个表中记录这个数据库的各种信息。如果备份后新建的数据库不包含在备份中,自然以前的备份就不会包含这些表的数据。
三、合二为一
如果你有master数据库的备份,那么在使用了rebuildm.exe后可以再次使用备份的master数据库备份来恢复到以前的状态。
四、重装SQL Server
这是一个万般无赖的方法,当你使用了上面的rebuildm.exe后仍然无法启动数据库的时候,那么你可以尝试重装SQL Server。
不过在重装前我们一定要将用户自己建立的数据库复制到另一个地方,重装后使用“附加数据库”的方法将自己的数据库添加进去即可。
五、小结
本文讲述了四种方法来恢复master数据库,其中方法一和二是用得最多的,希望大家可以掌握。另外对于数据库的备份,最好是将所有的数据库都做备份,这样在出现问题的时候,可以将修复时间减到最少。
一、利用rebuildm.exe工具重建master数据库
1.通常来说当master数据库出问题后,SQL Server服务是无法启动的。但有的时候也可以启动,只是客户无法连接到SQL Server,当这种情况出现的时候我们必须将SQL Server服务停止。
2.在系统盘中找到“\Program Files\Microsoft SQL Server\80\Tools\Bin”目录,请注意这里的Microsoft SQL Server目录不是你指定的安装目录,这个目录是固定在系统盘中的Program Files目录中。
3.双击目录下的rebuildm.exe文件,然后会出现相应的窗口。
4.然后点“浏览”按钮后,将安装光盘放入光驱中,选择光盘中的“\x86\DATA”目录,通常来说我们都是使用的默认排序规则(在这里也可以选择其他的排序规则,如:bin二进制,区分大小写等),所以只要点击“重建”按钮就可以了。随后开始重建master数据库。等待片刻后,系统会告诉你重建数据库成功。
提示:在使用此方法的时候,除了master数据库会被重建外,msdb,model等系统数据库都会重建。另外重建后的数据库会丢掉用户建立的数据库,比如在重建以前有一个数据库g,重建后数据库g将不再包含在SQL Server中。但是数据库g的数据和日志文件并没丢失,我们只要右击“数据库”节点选择“附加数据库”后指定g的位置就可以将它添加到SQL Server中了。
二、用备份恢复master数据库
这种情况用于SQL Server可以启动,但是数据库数据有问题的情况,其操作和一般的数据库的备份恢复一样,这里就不多说了。
提示:如果你在备份后修改了数据库中的数据,比如备份后建立了一个新的数据库,那么,在恢复master数据库后,那个数据库就不会存在了。同样可以使用附加数据库的方法将它添加到SQL Server中。其原因在于,新建数据库后,SQL Server会在master数据库的多个表中记录这个数据库的各种信息。如果备份后新建的数据库不包含在备份中,自然以前的备份就不会包含这些表的数据。
三、合二为一
如果你有master数据库的备份,那么在使用了rebuildm.exe后可以再次使用备份的master数据库备份来恢复到以前的状态。
四、重装SQL Server
这是一个万般无赖的方法,当你使用了上面的rebuildm.exe后仍然无法启动数据库的时候,那么你可以尝试重装SQL Server。
不过在重装前我们一定要将用户自己建立的数据库复制到另一个地方,重装后使用“附加数据库”的方法将自己的数据库添加进去即可。
五、小结
本文讲述了四种方法来恢复master数据库,其中方法一和二是用得最多的,希望大家可以掌握。另外对于数据库的备份,最好是将所有的数据库都做备份,这样在出现问题的时候,可以将修复时间减到最少。