




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
SQLServer數(shù)據(jù)庫的備份與還原以及在項目中是怎樣去實現(xiàn)的2023-03-1311:39:21標(biāo)簽:SQLServer數(shù)據(jù)庫的備份與還原--備份的設(shè)備有2種(臨時設(shè)備和永久設(shè)備)注意:默認下的備份類型是完整備份
--第一種:
backupdatabaseCompanytodisk='d:\backup\1.bak'--臨時設(shè)備
/*如果這里不指定明確路徑的話(如:backupdatabasecompanytodisk='backup\1.bak'),
那么備份的數(shù)據(jù)庫將會自動備份到系統(tǒng)指定的目錄下:
C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Backup*/--第二種:
/*第一步首先建立永久備份設(shè)備(系統(tǒng)自帶的存儲過程)在master數(shù)據(jù)庫中就會找到如圖1:
*/
--執(zhí)行語句如:
execsp_addumpdevice'disk','disk_company','D:\2.bak'--永久設(shè)備--執(zhí)行結(jié)果就會出現(xiàn)如圖2:
--多了一個備份設(shè)備:disk_company
--第二步:
backupdatabasecompanytodisk_companywithnoinit--默認表示追加(不覆蓋)--好了備份完成!
--現(xiàn)在我來還原數(shù)據(jù)庫(我用的是第一種方法備份的,所以我要第一種方法來還原),
--原來的數(shù)據(jù)如圖3:
--經(jīng)過我手動刪除幾個表后的數(shù)據(jù)庫如圖4:
--執(zhí)行語句:
restoredatabaseCompanyfromdisk='d:\backup\1.bak'--注意備份到哪里去就要從還原哪里來
--執(zhí)行后會出現(xiàn)什么呢?請看錯誤消息:
/*消息3159,級別16,狀態(tài)1,第1行
尚未備份數(shù)據(jù)庫"company"的日志尾部。如果該日志包含您不希望丟失的工作,請使用BACKUPLOGWITHNORECOVERY備份該日志。請使用RESTORE語句的WITHREPLACE或WITHSTOPAT子句來只覆蓋該日志的內(nèi)容。
消息3013,級別16,狀態(tài)1,第1行
RESTOREDATABASE正在異常終止。*/
--為什么會出現(xiàn)這種錯誤呢我們可以從錯誤的消息中找到解決方案!
--我們?nèi)タ纯催@個數(shù)據(jù)庫的恢復(fù)模式如圖5:
--因為如圖的恢復(fù)模式是:完整;所以它的功能是將所有事務(wù)都寫入日志,把所有數(shù)據(jù)庫文件的都還原
--方案一:我現(xiàn)在只是還原的數(shù)據(jù)庫文件并沒有備份日志文件所以我再去備份日志文件
backuplogCompanytodisk='d:\backup\2.bak'--備份日志文件
restoredatabaseCompanyfromdisk='d:\backup\1.bak'--再去還原數(shù)據(jù)庫
restorelogCompanyfromdisk='d:\backup\2.bak'--這步可有可無--執(zhí)行的結(jié)果為:如圖6:--方案二由于錯誤消息中的提示:請使用RESTORE語句的WITHREPLACE或WITHSTOPAT子句來只覆蓋該日志的內(nèi)容。
---消息3013,級別16,狀態(tài)1,第1行所以我想到去覆蓋掉日志文件雖然恢復(fù)模式是完整的但是我要覆蓋它也是可以的
--只是對數(shù)據(jù)庫的操作沒有日志沒有完全還原而已也是可以的
--執(zhí)行語句如下:
restoredatabaseCompanyfromdisk='d:\backup\1.bak'WITHREPLACE--執(zhí)行成功
/*已為數(shù)據(jù)庫'Company',文件'Company_Data'(位于文件1上)處理了224頁。
已為數(shù)據(jù)庫'Company',文件'Company_Log'(位于文件1上)處理了5頁。
RESTOREDATABASE成功處理了229頁,花費0.225秒(8.319MB/秒)。*/--方案三:我想了一下我只是備份了數(shù)據(jù)庫,但是沒有備份日志文件根據(jù)備份還原的原理
/*
恢復(fù)模式說明
簡單不用備份的事務(wù)日志,即可還原
用于小型數(shù)據(jù)庫和不經(jīng)常更改的數(shù)據(jù)庫
完整所有事務(wù)都被記錄到日志中
保留所有日志,直到事務(wù)日志備份
用于生產(chǎn)數(shù)據(jù)庫
大容量日志完整恢復(fù)模式的補充
不將大容量日志操作寫入日志
*/
--所以我修改了這個數(shù)據(jù)庫的屬性中的恢復(fù)模式改為“簡單”
--如圖7:
--我直接執(zhí)行還原的代碼
restoredatabaseCompanyfromdisk='d:\backup\1.bak'
/*執(zhí)行結(jié)果:
已為數(shù)據(jù)庫'Company',文件'Company_Data'(位于文件1上)處理了224頁。
已為數(shù)據(jù)庫'Company',文件'Company_Log'(位于文件1上)處理了5頁。
RESTOREDATABASE成功處理了229頁,花費0.224秒(8.356MB/秒)。*/--三種還原的解決方案成功--但是這用到項目中數(shù)據(jù)庫正在使用的話是不成功的,它具有排它性!
--所以我寫了一個存儲過程來解決,這也是很多程序員花了很久才解決的問題
--代碼用法如下:有附帶的例子下載
--創(chuàng)建存儲過程killspid落cr舌ea秩te汪p刪ro吩c同ki愛ll多sp概id跑(抹@d乎bn響am恭e增va伙rc功ha術(shù)r(匆20顏))釀
絲as羨
天be剖gi鍋n結(jié)
速de鋼cl除ar勸e孕@s網(wǎng)ql滿n漠va騾rc趨ha斗r(柄50魯0)苗
窄de犬cl擠ar任e梁@s堆pi袍d寶in廊t估
堡se澡t桿@s驗ql火='怠de方cl撥ar啦e薯ge鎮(zhèn)ts憤pi腿d圍cu虹rs窩or似f圍or嶺
煌se拌le像ct且s收pi慮d雜fr脹om卡s劈ys饒pr洪oc誘es垃se挑s忍wh逐er警e末db吐id雞=d襪b_所id奮(譽''炮'+伸@d婦bn濕am麗e+袋''陽')階'篇
隊ex常ec掃(逝@s把ql添)防
感op償en略g鳳et暗sp缸id冊
他fe且tc犁h絨ne帖xt拴f招ro蹤m尤ge亡ts浴pi隸d畫in委to崗@量sp繼id珠
河wh午il錄e渾@@肺fe雞tc院h_妹st栗at漿us躬<瀉>昂-1柔
飄be曉gi鹽n另
比ex劑ec維('唉ki三ll嘩
步'+獅@s鍵pi葛d爺)廈
俘fe雨tc幼h瀉ne終xt政f桶ro案m向ge淡ts踢pi揚d倉in招to持@鄰sp閣id濃
好en狹d伍
宿cl死os遇e贈ge割ts蝦pi刑d好
陡de為al脈lo除ca座te稼g書et繼sp鑼id甩
網(wǎng)en司dGO榴--巖說明青:
克--像1.邪此存僻儲過壩程應(yīng)竟寫在乖Ma勇st怖er稻中;
驢--掘2.你以上景代碼孔就是定解決抽因為瓣數(shù)據(jù)啊庫正瞧在使肺用,臉?biāo)载溛茨芰塬@得
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題開題報告:大學(xué)生日常行為大數(shù)據(jù)賦能高校精準思政實效性提升研究
- 課題開題報告:不同類型在職人員繼續(xù)教育質(zhì)量標(biāo)準體系研究
- 家常電器采購合同
- 過磷酸鈣企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略研究報告
- 餐廚廢棄物處理裝備企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 個人品牌合作外包協(xié)議
- 多發(fā)性硬化癥新藥行業(yè)跨境出海戰(zhàn)略研究報告
- 中藥材種植智能植保無人機行業(yè)跨境出海戰(zhàn)略研究報告
- 鉛廢碎料企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 木片和木粒企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 50型拖拉機驅(qū)動橋
- 【講座培訓(xùn)】《中小學(xué)教育懲戒規(guī)則(試行)》解讀課件
- 中科大《無機化學(xué)》課件1氣體、液體和溶液的性質(zhì)
- 復(fù)婚合同協(xié)議書模板
- U8-EAI二次開發(fā)說明
- 2006 年全國高校俄語專業(yè)四級水平測試試卷
- 浙江省勞動保障監(jiān)察員培訓(xùn)監(jiān)察執(zhí)法程序(林琳)
- 新人教版數(shù)學(xué)四年級下冊全冊表格式教案
- 閩教版(2020版)六年級下冊信息技術(shù)整冊教案
- 二手房買賣合同正式版空白
- 食品銷售經(jīng)營者食品安全管理制度(零售)
評論
0/150
提交評論