程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

恢復Master

編輯:SyBase綜合文章
 本實驗描述了如何在master數據庫毀壞的情況下,如何重建主設備,恢復master數據庫,得以重新恢復系統。

這裡假定:

Master數據庫已損壞,或主設備已損壞。
有系統表的最新打印輸出。
主設備只包括master數據庫、tempdb和model
有master數據庫的最新備份,且上次轉儲master數據庫後沒有初始化任何設備或創建、變更任何數據庫。
關於恢復過程

將主設備重建為第一次安裝服務器時的缺省狀態;
將master數據庫恢復為缺省狀態;
將master數據庫恢復為上次備份時的狀態;
注意:在恢復master數據庫的早期階段,不能使用系統存儲過程。

恢復步驟

步驟1:查找系統表

  查找已保存到文件的系統表sysdatabases、sysdevices、sysusages、sysloginroles和syslogins的副本。用這些副本可以保證在此過程結束時系統已經全部恢復。

步驟2:建立新的主設備

  如果Adaptive Server正在運行,關閉它,然後重建主設備。重建主設備時,必須指定設備大小。開始重建前,記住以下幾點:

保留舊設備,以防遇到問題,舊設備可提供至關重要的信息。
使用buildmaster命令之前應關閉Adaptive Server。
不同操作系統上創建主設備的命令有所不同,如:buildmast(unix)、bldmaster(Windows NT),並安裝通用master數據庫的副本。
命令中給出主設備的全名和大小。
示例:重建一個30兆(15360個2k的頁)

在Window NT上:

bldmastr -d d:\devices\master.dat –s15360

步驟3:以主恢復方式啟動Adaptive Server

  使用-m選項以主恢復方式啟動Adaptive Server。在Window NT上,使用sqlsrvr命令從命令行啟動Aadaptive Server。

Sqlsrvr.exe –d:\devices\master.dat –sserver_name –ed:\sybase\install\errorlog –id:\sybase\ini –MD:\Sybase –m

說明:以主恢復方式啟動Adaptive Server時,只允許一個用戶(系統管理員)登錄。

步驟4:重建master的設備分配

  檢查sysusages系統表的書面副本,如果有多行dbid=1的記錄,則需要增加master的大小以便裝載轉儲。最簡單情況下,對master進行額外分配只需要使用alter database即可。復雜情況,必須為其它數據庫分配空間,以便重新構造恢復master所需的正確的vstart值。

示例:



alter datbase master on master=2

步驟5:檢查Backup Server和sysservers系統表信息。

  使用空口令以“sa“用戶登錄服務器(如果Backup Server的網絡名不是SYB_BACKUP,則必須更新sysservers以便Adaptive Server可以與其Backup Server通信)。

檢查interfaces文件中Backup Server的名稱;
並發出下面的命令:
select * from sysservers
where srvname=”SYB_BACKUP”

檢查此命令中輸出結果的srvnetname。是否與服務器的backup Server的interfaces文件條目匹配,若匹配跳過步驟5;
如不同,則必須更新sysservers
示例:

begin tranaction

updata sysserver

set srvnetname=”backupserver_name”

where srvname=”SYB_BACKUP”

l核實該命令,如果updata修改了多行,或者修改了不應修改的行,則發出rollback tranaction命令,然後嘗試再次更新。

如果該命令正確修改了Backup Server的行,則發出commit transaction命令。

步驟6:核實Backup Server正在運行

Window NT平台上,本地安裝的Sybase Central和服務管理器可以顯示Backup Server是否正在運行。



步驟7:裝載master數據庫的備份

在Window NT上:

load database master from “d:\device\master.bck”

在load database成功完成後,Adaptive Server將關閉。

步驟8:更新number of devices配置參數

僅當使用的數據庫設備比缺省值多時才執行此步驟。

步驟9:以主恢復方式方式重新啟動Adaptive Server

Sqlsrvr.exe –d:\devices\master.dat –sserver_name –ed:\sybase\install\errorlog –id:\sybase\ini –MD:\Sybase –m

注意:裝載master的備份將使“sa”帳號恢復到以前的狀態。如果sa帳號有口令,則口令恢復。

步驟10:檢查系統表以檢驗master的當前備份

如果發出最新的disk init、create database或alter database命令以後已備份了master數據庫,則sysusages、sysdatabases、和sysdevice的內容將與書面副本匹配。
如果副本中的任何設備未包含在已恢復的sysdevices中,則上次備份以後已添加了設備,必須運行disk reinit和disk refit。
步驟11:重新啟動Adaptive Server

以常規(多用戶)模式重新啟動Adaptive Server

步驟12:檢查Adaptive server

將sysusages的書面副本與新聯機版本比較
將sysdatabase的書面副本與新聯機版本比較
在每個數據庫上運行dbcc checkalloc
檢查每個數據庫中重要的表
完全恢復master數據庫並運行全部的dbcc完整性檢查後,使用常規轉儲命令備份此數據庫。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved