本文給大家介紹一下使用sybase的backup server(備份服務器),做dump備份並還原數據庫。
首先,使用sybase的backup server(備份服務器),做dump備份
先介紹一下概念,轉儲數據庫(dump database),就是為整個數據庫(包括數據、表結構、觸發器、游標、存儲過程、事務日志等)做一次物理備份。轉儲數據庫時,系統自動執行一次checkpoint,即將日志和數據從緩沖區拷貝到硬盤(只拷貝髒頁),把已被分配的頁(日志和數據)轉儲到設備。
www.2cto.com
備份命令格式為:
dump database 數據庫名 to 路徑
比如:Dump database Test to "D:/Test.dmp"
此備份、還原方法的優缺點:
這種數據備份方式是將整個數據庫的運行環境完整的復制一份,包括數據庫的髒頁和碎片,在使用load命令恢復時,只能恢復到同樣大小的數據庫中(數據和日志的大小都只能和原來完全一致)。優點是數據庫完整無誤,缺點是不能直接查看備份內容。
理論部分到此結束,下面看看詳細的備份過程(有圖有真相)。
先看看我的數據庫,如下圖,下面我就以備份test數據庫為例,給大家演示一下詳細的備份過程。
www.2cto.com
打開SQL Advantage(這個類似於SQL Server中的查詢分析器)
接下來點擊Server菜單下的Connect
選擇數據庫所在的Server,輸入用戶名:sa,密碼默認為空(當然,如果你修改過sa密碼的話,就填修改後的),點擊Connect。
連接成功後,選擇master數據庫,在Session1中輸入如下命令:Dump database Test to "D:/Test.dmp"(將數據庫test備份到D:/Test.dmp文件中)。點擊執行按鈕。
不好,出錯了,錯誤如下:
原因是Sybase備份服務木有開啟,啟動即可!
出現如下提示,說明備份成功。
D盤下的Test.dmp文件就是我們的備份文件了。備份結束。
然後,數據庫恢復
Sybase的數據庫還原大體步驟如下:
1、建立與原來數據庫一樣的Database Devices (文件大小、Devices number都要一致,文件所在位置也最好一致),下圖是原來數據庫中的三個Database Devices文件。
www.2cto.com
雙擊上圖中的test文件,打開test文件的Properties頁面,查看test文件大小和設備編號。
2、創建與原數據庫同名且包含同樣Database Devices 的數據庫。
3、執行數據庫還原語句。
load database A from '\u\databak\a.dmp'
online database A
下面是具體的操作步驟:
一、打開Sybase Central Java Edition。
點擊工具——連接
輸入用戶名和密碼(我的密碼為空)
登錄成功後,點擊Database Devices ,創建與原數據庫一樣的Database Devices,創建過程比較簡單,這裡就不詳細給出了。但是創建過程中注意文件大小、Devices number、文件所在位置的設置(與原數據庫一致)。
二、接下來就是創建數據庫了,點擊Databases,雙擊AddDatabase。
創建過程中增加設備時,一定要注意下圖標出的位置,要與原數據庫一致。
下圖是原數據庫使用設備情況。
之後直接下一步、下一步,知道完成即可。
www.2cto.com
三、與備份過程一樣,打開SQL Advantage,連接Server,依次執行如下命令。
load database test from "D:/Test.dmp"
online database test
注:如果不執行online database test,test數據庫上會出現問號,數據庫不能正常使用。
到此為止,數據庫的備份與還原就全部結束了。