Sybase數(shù)據(jù)庫(kù)備份方案_第1頁(yè)
Sybase數(shù)據(jù)庫(kù)備份方案_第2頁(yè)
Sybase數(shù)據(jù)庫(kù)備份方案_第3頁(yè)
Sybase數(shù)據(jù)庫(kù)備份方案_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Sybase數(shù)據(jù)庫(kù)備份方案Sybase數(shù)據(jù)備份方案,Sybase數(shù)據(jù)庫(kù)產(chǎn)品自從1987年問世以來(lái),它的客戶機(jī)/服務(wù)器(client/server)工作模式、分布處理的基礎(chǔ)體系結(jié)構(gòu)、完善的安全保密性能、高速快捷的運(yùn)行方式、多平臺(tái)跨操作系統(tǒng)的廣泛應(yīng)用等優(yōu)點(diǎn),迅速被IT界接受并推廣應(yīng)用。我們作為金融業(yè)的用戶,也在1995年開始使用Sybase10版本。在具體的使用中,發(fā)現(xiàn)集中式的數(shù)據(jù)管理有其優(yōu)點(diǎn),就是數(shù)據(jù)風(fēng)險(xiǎn)范圍大為縮小,但是作為Sybase的服務(wù)器一端,數(shù)據(jù)風(fēng)險(xiǎn)比較集中,如何做好數(shù)據(jù)庫(kù)的數(shù)據(jù)備份,成為至關(guān)重要的問題。在實(shí)際應(yīng)用中,我們總結(jié)出了兩種全量備份方案:一、Sybase數(shù)據(jù)備份方案之使用Sy

2、base的BackupServer(備份服務(wù)器),做Dump備份轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)(Dumpdatabase),就是為整個(gè)數(shù)據(jù)庫(kù)(包括數(shù)據(jù)、表結(jié)構(gòu)、觸發(fā)器、游標(biāo)、存儲(chǔ)過(guò)程、事務(wù)日志等)做一次物理備份。轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)時(shí),系統(tǒng)自動(dòng)執(zhí)行一次checkpoint,即將日志和數(shù)據(jù)從緩沖區(qū)拷貝到硬盤(只拷貝臟頁(yè)),把已被分配的頁(yè)(日志和數(shù)據(jù))轉(zhuǎn)儲(chǔ)到設(shè)備。命令格式為:dumpdatabase數(shù)據(jù)庫(kù)名to設(shè)備文件名with參數(shù)如果備份到硬盤的文件上,可以不預(yù)先估算備份文件的大小,只要硬盤有足夠的存儲(chǔ)空間就可以。如果是備份到dds磁帶上,那么就要估算一下備份后的大小,90米的dds磁帶壓縮存儲(chǔ)空間為4G,120米的磁帶壓縮

3、存儲(chǔ)空間為8G,如果數(shù)據(jù)庫(kù)的備份文件超過(guò)了這個(gè)尺寸,就要考慮多文件轉(zhuǎn)儲(chǔ),使用stripe參數(shù)。命令格式為:dumpdatabase數(shù)據(jù)庫(kù)名to設(shè)備文件名1stripeon設(shè)備文件名2stripeon設(shè)備文件名3with參數(shù)這種數(shù)據(jù)備份方式是將整個(gè)數(shù)據(jù)庫(kù)的運(yùn)行環(huán)境完整的復(fù)制一份,包括數(shù)據(jù)庫(kù)的臟頁(yè)和碎片,在使用load命令恢復(fù)時(shí),只能恢復(fù)到同樣大小的數(shù)據(jù)庫(kù)中(數(shù)據(jù)和日志的大小都只能和原來(lái)完全一致),適用于在每天的日終營(yíng)業(yè)網(wǎng)點(diǎn)下班后的日常備份。優(yōu)點(diǎn)是數(shù)據(jù)庫(kù)完整無(wú)誤,缺點(diǎn)是不能直接查看備份內(nèi)容。二、Sybase數(shù)據(jù)備份方案之分?jǐn)?shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)記錄做兩次備份在一般情況下,生產(chǎn)機(jī)的數(shù)據(jù)庫(kù)都比較龐大,而實(shí)驗(yàn)機(jī)

4、則相對(duì)較小,難以在實(shí)驗(yàn)環(huán)境中以load命令恢復(fù)工作機(jī)的內(nèi)容。所以,在工作實(shí)踐中,我們摸索出了第二種全量備份方案。1、數(shù)據(jù)結(jié)構(gòu)備份在windows平臺(tái)的SybaseSQLServerManager(數(shù)據(jù)庫(kù)管理)平臺(tái)中選擇ServerGenerateddl則產(chǎn)生整個(gè)數(shù)據(jù)庫(kù)服務(wù)器的所有信息,如果選擇databasegenerateddl則產(chǎn)生所選定數(shù)據(jù)庫(kù)的信息,以master庫(kù)為例,產(chǎn)生的文件主要包括:config.ddl(配置)、devices.ddl(設(shè)備)、database.ddl(數(shù)據(jù)庫(kù))、logins.ddl(用戶)、remote.ddl(遠(yuǎn)程)、cache.ddl(緩沖)、segment

5、.ddl()、group.ddl(用戶組)、user.ddl(用戶)、default.ddl(確省)、rule.ddl(規(guī)則)、udt.ddl、table.ddl(表)、view.ddl(視圖)、proc.ddl(存儲(chǔ)過(guò)程)、triger.ddl(觸發(fā)器)。2、數(shù)據(jù)記錄備份將數(shù)據(jù)庫(kù)各表以Sybase自代的bcp(bulkcopy)工具的方式導(dǎo)成一定格式的文本文件,命令格式:bcp表名out路徑名文件名-c-t分隔符-u(用戶名)-p(密碼)-S(服務(wù)器名)如果將一個(gè)數(shù)據(jù)庫(kù)中的所有表都做一個(gè)bcp備份,就需要針對(duì)每一個(gè)表都做一次bcp,在一般情況下,一個(gè)數(shù)據(jù)庫(kù)有100多個(gè)表,工作量比較大??梢岳?/p>

6、用數(shù)據(jù)庫(kù)中的系統(tǒng)表信息做一個(gè)bcp備份腳本。原理是每一個(gè)用戶表在系統(tǒng)表中都有信息記載,可以通過(guò)isql語(yǔ)句查詢得到?,F(xiàn)舉一例說(shuō)明:1)、先編輯一個(gè)名為mkbcpout.sql的文件,內(nèi)容如下:selectechobcp+name+out+bcp+name+out./+name+.table-c-t|-Uuser-Ppassword-SSERVERfromsysobjectswheretype=Ugo2)、執(zhí)行isql命令,以此文件作為輸入,執(zhí)行結(jié)果輸出到另外一個(gè)文件里:isql-Uuser-Ppassword-Sserver-Imkbcpout.sql-Obcpout3)、對(duì)bcppout文件

7、稍微修改,增加可執(zhí)行權(quán)限chmod+xbcpout4)、執(zhí)行bcpout,導(dǎo)出數(shù)據(jù)文本./bcpout3、數(shù)據(jù)庫(kù)恢復(fù)業(yè)務(wù)生產(chǎn)機(jī)可能為小型機(jī),而實(shí)驗(yàn)開發(fā)環(huán)境的硬件環(huán)境為PCserver,安裝好winnt或SCOunix下的Sybase服務(wù)器后,根據(jù)需要?jiǎng)?chuàng)建空間足夠大的數(shù)據(jù)庫(kù)和tempdb(系統(tǒng)臨時(shí)數(shù)據(jù)庫(kù)),創(chuàng)建數(shù)據(jù)庫(kù)用戶,并將其更改為此數(shù)據(jù)庫(kù)的所有者,要注意兩點(diǎn):1)此數(shù)據(jù)庫(kù)允許bcp拷貝,2)此數(shù)據(jù)庫(kù)自動(dòng)清除log。命令格式為:1sp_dboptiondatabasedbname,selectinto/bulkcopy,true2go1sp_dboptiondatabasename,trunc

8、logonchkpt,true2go上述兩個(gè)配置可能與生產(chǎn)機(jī)的配置不同。然后以新創(chuàng)建的數(shù)據(jù)庫(kù)用戶登錄,導(dǎo)入數(shù)據(jù)結(jié)構(gòu),注意要首先導(dǎo)入表結(jié)構(gòu),然后才是存儲(chǔ)過(guò)程、觸發(fā)器等等。命令格式:1、isql-Uusername-Ppassword-Itable.ddl-oerror.log.table2、isql-Uusername-Ppassword-Ic為了提高bcp導(dǎo)入數(shù)據(jù)的速度,需要將比較大的表的索引和主鍵刪除,否則的話,每bcp進(jìn)一條數(shù)據(jù),數(shù)據(jù)庫(kù)都自動(dòng)寫一條log日志,記載此數(shù)據(jù)的上一條和下一條記錄,確定本記錄在此表中的準(zhǔn)確位置,一是影響bcp速度,二是

9、數(shù)據(jù)庫(kù)的log飛速膨脹。數(shù)據(jù)庫(kù)的自動(dòng)清除log功能只有在一個(gè)事務(wù)結(jié)束后才起作用。準(zhǔn)備工作做完后,開始倒入數(shù)據(jù)記錄。使用類似做bcpout的方法做一個(gè)bcpin的腳本,然后執(zhí)行:./bcpin|teeerror.bcpin使用tee管道輸出的目的是讓計(jì)算機(jī)完整記錄下倒入過(guò)程,自動(dòng)存入error.bcpin文件中,待倒入結(jié)束后,我們只需要檢查日志文件,不需要一直緊盯著計(jì)算機(jī)屏幕。所有工作做完之后,不要忘記重新將刪除的主鍵和索引建上。如果有現(xiàn)成的數(shù)據(jù)庫(kù),只需要單純地導(dǎo)入數(shù)據(jù)記錄,則首先將數(shù)據(jù)庫(kù)中所有用戶表(也就是所有type=U的表)清空,命令格式:1truncatetabletablename2g

10、o當(dāng)然最好也是利用做bcpout腳本的做一個(gè)truncate腳本,通過(guò)執(zhí)行此腳本將所有用戶表清空。然后的數(shù)據(jù)導(dǎo)入、處理索引和主鍵的過(guò)程與上面類似。三、Sybase數(shù)據(jù)備份方案之利用做bcp備份腳本的方法做數(shù)據(jù)庫(kù)碎片整理Sybase數(shù)據(jù)庫(kù)作為聯(lián)機(jī)事務(wù)處理應(yīng)用服務(wù)器,每天應(yīng)用程序都對(duì)數(shù)據(jù)庫(kù)做大量的插入、修改和刪除等操作,不可避免的在數(shù)據(jù)庫(kù)的物理存儲(chǔ)介質(zhì)上留下頁(yè)碎片和擴(kuò)展單元碎片,從而影響數(shù)據(jù)庫(kù)的存儲(chǔ)效率和運(yùn)行速度。具體表現(xiàn)為:業(yè)務(wù)繁忙時(shí)出現(xiàn)死鎖(deadlock),數(shù)據(jù)庫(kù)的輸入/輸出資源被大量占用,業(yè)務(wù)處理速度慢。其解決辦法是:1、清空數(shù)據(jù)庫(kù)中的所有表,命令格式:isql-Uusername-Ppassword-Itruncate.sql-oerror.truncate2、刪除所有表的索引和主鍵isql-Uusername-Ppassword-Idropindex.sql-oerror.dropindex3、導(dǎo)入數(shù)據(jù)./bcpin4、添加索引和主鍵isql-Uusername-Ppassword-Iaddindex.sql

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論