色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

Web環(huán)境下的SQL Server數(shù)據(jù)備份與恢復(fù)

瀏覽:128日期:2023-11-04 16:51:11
1、前言

實現(xiàn)磁帶備份數(shù)據(jù)的功能有兩方面的困難:首先,MS SQL Server(以下簡稱SQL)所提供的數(shù)據(jù)庫的整體備份及恢復(fù)功能不能直接滿足本系統(tǒng)要求的數(shù)據(jù)滾動備份。其次,需要解決如何在Web環(huán)境下實現(xiàn)磁帶數(shù)據(jù)備份功能。

利用SQL中現(xiàn)有的數(shù)據(jù)庫備份和恢復(fù)的命令以及NT中的IDC技術(shù),實現(xiàn)SQL數(shù)據(jù)庫中數(shù)據(jù)滾動備份到磁帶的功能。本系統(tǒng)所實現(xiàn)功能既能保證近一段時間的數(shù)據(jù)總在數(shù)據(jù)庫中,又能保證系統(tǒng)管理員可隨時恢復(fù)備份數(shù)據(jù),供用戶查詢。本文所實現(xiàn)的功能具有普遍的意義,特別適用于中小型企業(yè)開發(fā)基于Intranet技術(shù)的管理信息系統(tǒng)。

2、磁帶數(shù)據(jù)備份及恢復(fù)的工作過程

為了充分利用SQL中現(xiàn)有的數(shù)據(jù)庫備份與恢復(fù)功能,以降低實現(xiàn)磁帶數(shù)據(jù)備份的代價,我們特地在硬盤上建立了一個與磁帶的容量相當(dāng)?shù)臄?shù)據(jù)庫,我們稱之為橋數(shù)據(jù)庫,如FJJDBBK。可方便地實現(xiàn)數(shù)據(jù)的滾動備份了。其工作過程是:管理員把某月的數(shù)據(jù)從主數(shù)據(jù)庫移到橋數(shù)據(jù)庫中;然后用SQL的備份功能把橋數(shù)據(jù)庫備份到磁帶上。用戶需要查看磁帶中的歷史數(shù)據(jù)時,系統(tǒng)又用SQL的恢復(fù)備份功能把磁帶中的數(shù)據(jù)恢復(fù)到橋數(shù)據(jù)庫中,用戶直接在橋數(shù)據(jù)庫中查閱歷史數(shù)據(jù)。此外,在數(shù)據(jù)備份到磁帶后,在進(jìn)行下次數(shù)據(jù)備份前,必須清空備份數(shù)據(jù)庫中的數(shù)據(jù)。為了提高工作效率,我們建立了一個空白橋數(shù)據(jù)庫(沒有數(shù)據(jù)時的橋數(shù)據(jù)庫)。每次進(jìn)行磁帶備份數(shù)據(jù)之前,就用此空白數(shù)據(jù)庫恢復(fù)橋數(shù)據(jù)庫。空白數(shù)據(jù)庫文件建立后要保存好,不可隨便刪除。

建立該備份空白數(shù)據(jù)庫過程為:先建立主數(shù)據(jù)庫FJJDBBK,然后在FJJDBBK中建立與當(dāng)前數(shù)據(jù)庫中一樣結(jié)構(gòu)的表。建立這些表結(jié)構(gòu)時最好的方法是先用Enterprise Manager的Object菜單下的Generate SQL Scripts功能生成建立這些表的Scripts文件,然后選擇FJJDBBK數(shù)據(jù)庫,用Enterprise Manager的Tools菜單下的Query Analyzer功能運行該文件,就建立了這些所需表。顯然,這時的FJJDBBK為空數(shù)據(jù)庫。我們再利用備份命令或運行Tools菜單下的Backup/Restore功能備份該空數(shù)據(jù)庫。

3、磁帶數(shù)據(jù)備份及恢復(fù)的實現(xiàn)

在NT中,Web服務(wù)器IIS(Internet Information Server)提供了完善的訪問SQL的技術(shù)IDC。IDC是一個DLL文件(HTTPODBC.DLL),其實,它通過ODBC接口可訪問各種數(shù)據(jù)庫。在具體實現(xiàn)Web頁面訪問數(shù)據(jù)庫時,需建立兩種類型的文件:IDC文件(*.idc)和HTML模板文件(*.htx)。IDC文件用于控制數(shù)據(jù)庫的訪問。它一般由兩部分組成:

◆文件頭 

指明系統(tǒng)數(shù)據(jù)源,模板文件名,用戶名及口令。有時還包括一些有關(guān)檢索數(shù)據(jù)庫方面的參數(shù)設(shè)置。

◆文件主體 

這部分內(nèi)容以“SQLStatement:”為起始標(biāo)志,然后寫操縱數(shù)據(jù)庫的標(biāo)準(zhǔn)SQL語句。注意,每條語句以“+”號開頭,它作為區(qū)分每條SQL語句的標(biāo)志。需要強(qiáng)調(diào)的是,對于MS SQL數(shù)據(jù)庫,IDC可用其任何標(biāo)準(zhǔn)的命令及函數(shù)。例如定義變量,控制數(shù)據(jù)流等(見實例)。

IDC的處理流程如下:首先,Web服務(wù)器IIS分析瀏覽器傳來的URL字符串。如果當(dāng)前字符串以“*.idc”結(jié)尾,就將該IDC請求傳給IDC接口模塊,IDC將依次讀取并解釋IDC文件的內(nèi)容,通過ODBC模塊向數(shù)據(jù)庫服務(wù)器發(fā)服務(wù)請求;數(shù)據(jù)庫服務(wù)器將執(zhí)行結(jié)果通過ODBC接口返回給IDC模塊。接著IDC模塊把結(jié)果插入指定的的模板文件,形成一個實際的HTML文件交給IIS;最后由IIS將該HTML返回瀏覽器。

在Web信息系統(tǒng)中要實現(xiàn)完整的磁帶數(shù)據(jù)備份及恢復(fù)功能需要實現(xiàn)以下三個功能:“數(shù)據(jù)備份”功能、“數(shù)據(jù)恢復(fù)”功能和“清理數(shù)據(jù)”功能。“數(shù)據(jù)備份”功能在保證系統(tǒng)管理員操作的前提下,根據(jù)用戶輸入的所要備份數(shù)據(jù)的起始日期和終止日期,從主數(shù)據(jù)庫把要備份的數(shù)據(jù)轉(zhuǎn)存到橋數(shù)據(jù)庫中,然后運用SQL的DUMP命令實現(xiàn)該功能。“數(shù)據(jù)恢復(fù)”功能則在保證系統(tǒng)管理員操作的前提下,提供“恢復(fù)橋數(shù)據(jù)庫”和“恢復(fù)空白橋數(shù)據(jù)庫”的功能。只要運用SQL的LOAD命令就可實現(xiàn)上述功能;同樣,“清理數(shù)據(jù)”功能也要保證在系統(tǒng)管理員操作的前提下,根據(jù)用戶輸入的所要刪除數(shù)據(jù)的起始日期和終止日期,運用SQL中的DELETE命令刪除當(dāng)前數(shù)據(jù)庫中數(shù)據(jù)。因此。為了“數(shù)據(jù)備份”功能和“清理數(shù)據(jù)”功能的順利實施,要求每個表都有歸檔時間字段。

實現(xiàn)本系統(tǒng)磁帶數(shù)據(jù)備份與恢復(fù)功能的部分IDC文件如下:

/*BKUP.IDC*/

Datasource: Web SQL

Template: BKUP.htx

Username: sa

Password: sa

SQLStatement:

+if %jb%=1

+/*判斷系統(tǒng)維護(hù)員*/

+SELECT qsrq=convert(varchar(12),getdate(),1),

zzrq=convert(varchar(12),+dateadd(day,1,getdate()),1)

+/*預(yù)置起始日期和終止日期*/

/*BKUPCZ.IDC*/

Datasource: Web SQL

Template: BKUPCZ.htx

Username: sa

Password: sa

SQLStatement:

+INSERT FJJDBBK.DBO.JKLD SELECT * FROM FJJDB.DBO.JKLD

+where convert(varchar(12),gdsj,1)>=′%QSRQ%′

and convert(varchar(12),gdsj,1)< =′%ZZRQ%′

…………

+/*把當(dāng)前數(shù)據(jù)庫中選定的數(shù)據(jù)轉(zhuǎn)存到橋數(shù)據(jù)庫中*/

+DUMP DATABASE FJJDBBK TO TAPE = ′.tape0′ WITH INIT, NOUNLOAD

+/*備份數(shù)據(jù)*/

+SELECT TS=′備份數(shù)據(jù)庫操作已完成!′

/*HUIF.IDC*/

Datasource: Web SQL

Template: HUIF.htx

Username: sa

Password: sa

SQLStatement:

+if %jb%=1

+begin

+LOAD DATABASE FJJDBBK FROM TAPE=′.TAPE0′ WITH

NOUNLOAD

+/*恢復(fù)備份數(shù)據(jù)*/

+SELECT TS=′恢復(fù)數(shù)據(jù)庫操作已完成!′+/*

+end

/*QLSJKCZ.IDC*/

Datasource: Web SQL

Username: sa

Password: sa

Template: QLSJKCZ.htx

SQLStatement:

+delete FJJDB.DBO.JKLD

where convert(varchar(12),gdsj,1)>=′%QSRQ%′ and

convert(varchar(12),gdsj,1)<=′%ZZRQ%′

…………

+/*刪除當(dāng)前數(shù)據(jù)庫中選定的數(shù)據(jù)*/

+SELECT TS=′刪除操作已完成!′

在本系統(tǒng)中,主數(shù)據(jù)庫保證存儲4個月數(shù)據(jù)。系統(tǒng)規(guī)定,系統(tǒng)管理員每月月初備份上月的數(shù)據(jù)到磁帶。然后刪除前第4個月的數(shù)據(jù)。實現(xiàn)了當(dāng)前數(shù)據(jù)與歷史數(shù)據(jù)的同步查閱,這是Web系統(tǒng)的一個顯著的優(yōu)點。

4、結(jié)束語

本文介紹了一種特殊的數(shù)據(jù)磁帶備份與恢復(fù)的具體實現(xiàn)方法。需要指出的是,數(shù)據(jù)庫備份操作是數(shù)據(jù)庫管理系統(tǒng)非常重要的環(huán)節(jié),而數(shù)據(jù)庫備份操作過程又比較復(fù)雜,因此,要求我們必須建立完善的規(guī)章制度,由專業(yè)的系統(tǒng)管理員進(jìn)行數(shù)據(jù)庫備份和恢復(fù)操作。

標(biāo)簽: Sql Server 數(shù)據(jù)庫
主站蜘蛛池模板: 玖玖色视频 | 亚洲国产精品成人综合久久久 | 亚洲欧美中文字幕在线网站 | 国产爽的冒白浆的视频高清 | 台湾三级在线播放 | 成人精品在线观看 | 久久精品在线观看 | 国产精品久久精品 | 国产免费黄视频 | 亚洲国产大片 | 欧美在线看欧美高清视频免费 | 网友自拍第一页 | 精品视频一区二区三三区四区 | 国内精品久久影视 | 日本美女视频韩国视频网站免费 | 看一级特黄a大片日本片 | 一级特级aaaa毛片免费观看 | 国产成人在线小视频 | 国产一区二区高清在线 | 国产三级精品久久三级国专区 | 婷婷三级| 国产一区国产二区国产三区 | 香蕉久久夜色精品国产2020 | 久久免费特黄毛片 | 国产成人精品综合久久久 | 成人网18免费看 | 午夜性片 | 亚洲国产欧美精品一区二区三区 | 超级碰碰碰在线观看 | 久久亚洲私人国产精品 | 久久久久久综合对白国产 | 欧美一级www毛片 | 国产男女交性视频播放免费bd | 男人的天堂视频在线观看 | 国产精品视频永久免费播放 | 亚洲夜色夜色综合网站 | 国产成在线观看免费视频成本人 | 久久久久久久国产 | 亚洲成年人专区 | 99精品免费在线观看 | 日韩在线观看一区 |