LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

紧急恢复SQL Server主master数据库

admin
2011年2月28日 11:51 本文热度 3172

  本文介绍如何紧急恢复SQL Server主数据库,这样就不用再在SQL Server的主数据库崩溃导致数据库服务器停止工作的情况下不知所措了。


  如果主数据库发生故障,那么微软的SQL Server可能会怦然倒下。看看如何面对这种事件,了解如何用企业管理器和查询分析器修复主数据库。


  作为一名微软SQL Server的管理员,您必须知道如何修复一个崩溃的主数据库。主数据库保存有您的登录信息,以及最重要的、指向您所有数据库的指针。如果没有主数据库,您就无法成功地启动SQL Server。在本文里,我将向您介绍在发生崩溃的情况下如何修复主数据库,并告诉您如何重建主数据库,如果有必要的话。


  制定预案


  制定一个应对崩溃和/或主数据库故障的预案十分重要。这将有助于您在碰到灾难的情况下按照既定的方法进行处理,而不是迫于压力仓促作出反应。我碰到过很多很容易就陷入惊慌的状况,但是由于保持冷静并按照正确的方法来处理问题,我最后成功地度过了所有的困境。


  怎么才能知道您的主数据库已经崩溃?


  在正式开始讨论碰到系统故障如何修复和重建的主数据库之前,我们需要先了解如何辨别它已经崩溃了。要说明这一点,我会弄垮一个主数据库,告诉您主数据库崩溃会发生什么样的症状。


  现在让我们假设您的公司碰到了电涌,造成SQL Server重启。在重新启动的时候,SQL Server却没有正常启动。如果查看错误日志(图A),您会看到主数据库崩溃或者丢失。既然您知道需要查看什么信息,那就让我们看看如何修复主数据库。


  图A


  


  修复您的主数据库


  修复主数据库的第一步是使用“重建向导(Rebuild Wizard,Rebuildm.exe),它放在Program FilesMicrosoft SQL Server80ToolsBINN目录下。现在就让我们来看看重建向导是如何工作的。


  双击Rebuildm.exe启动图B所示的对话框。


  图B


  


  在这个对话框里,您可以指定数据库服务器的修复设置,以及原始安装的数据文件的位置。要让这一过程更容易和更快,就要把x86目录从SQL的光盘上复制到硬盘上,并把指向改到本地的副本。一旦验证完了所有的信息,点击“重建(Rebuild)”。然后系统就会提示您确认操作,如图C所示。


  图C


  


  点击“确定(Yes)”。一旦重建过程完成,您会看到一条重建成功的消息。您现在就有了一个全新的主数据库,准备好修复主数据库了。


  首先,打开命令行提示符,输入Program FilesMicrosoft SQL ServerMSSQLBINN目录下的sqlservr.exe –c –m命令,启动单用户模式下的SQL Server。结果如图D所示。


  图D


  


  在单用户模式下启动SQL Server之后,您可以利用备份文件修复主数据库。您可以用“查询分析器(Query Analyzer)”或者“SQL企业管理器(SQL Enterprise Manager)”来修复它。如果使用查询分析器,您就要像图E一样运行查询。


  图E


  


  如果使用企业服务器,就要右击主数据库,选择“所有任务|修复数据库(All Tasks | Restore Database)”,浏览到您设备所在的位置,如图F所示。点击两次“OK”,您就可以成功地修复主数据库了。


  图F


  


  修复完主数据库,退出单用户模式,在正常的操作模式下重新启动SQL Server。


  如果由于某种原因您的修复操作无法成功完成,那么您可以试试别的方法。只用简单地重建主数据库并添加驻留在数据目录下的所有数据库就可以了。您可以用企业管理器或者查询分析器来添加数据库。在企业管理器里,右击“数据库(Databases)”,选择“添加数据库(Attach Database)”,如图G所示。图G


  


  结束语


  既然已经知道了如何在碰到灾难的情况下成功地重建主数据库,那么您可以把这些技术增加到灾难修复预案中去。这样的话,您就不用



----


SQL Server 中4个系统数据库,Master、Model、Msdb、Tempdb。



(1)Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其他系统数据库及用户数据库的相关信息。因此,如果 master 数据库不可用,则 SQL Server 无法启动。在 SQL Server 2005 中,系统对象不再存储在 master 数据库中,而是存储在 Resource 数据库中。
(2)model 数据库用作在 SQL Server 实例上创建的所有数据库的模板。因为每次启动 SQL Server 时都会创建 tempdb,所以 model 数据库必须始终存在于 SQL Server 系统中。当发出 CREATE DATABASE(创建数据库)语句时,将通过复制 model 数据库中的内容来创建数据库的第一部分,然后用空页填充新数据库的剩余部分。 如果修改 model 数据库,之后创建的所有数据库都将继承这些修改。例如,可以设置权限或数据库选项或者添加对象,例如,表、函数或存储过程。
(3)Msdb数据库是代理服务数据库,为其报警、任务调度和记录操作员的操作提供存储空间。
(4)Tempdb是一个临时数据库,它为所有的临时表、临时存储过程及其他临时操作提供存储空间。Tempdb数据库由整个系统的所有数据库使用,不管用户使用哪个数据库,他们所建立的所有临时表和存储过程都存储在tempdb上。SQL Server每次启动时,tempdb数据库被重新建立。当用户与SQL Server断开连接时,其临时表和存储过程自动被删除。

该文章在 2011/2/28 11:51:08 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved