在異步數(shù)據(jù)庫鏡像中,移動(dòng)主數(shù)據(jù)庫文件實(shí)戰(zhàn)
在成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站中從網(wǎng)站色彩、結(jié)構(gòu)布局、欄目設(shè)置、關(guān)鍵詞群組等細(xì)微處著手,突出企業(yè)的產(chǎn)品/服務(wù)/品牌,幫助企業(yè)鎖定精準(zhǔn)用戶,提高在線咨詢和轉(zhuǎn)化,使成都網(wǎng)站營銷成為有效果、有回報(bào)的無錫營銷推廣。創(chuàng)新互聯(lián)專業(yè)成都網(wǎng)站建設(shè)十年了,客戶滿意度97.8%,歡迎成都創(chuàng)新互聯(lián)客戶聯(lián)系。
某數(shù)據(jù)庫部署為異步數(shù)據(jù)庫鏡像,主數(shù)據(jù)庫所在磁盤空間不足,我得移動(dòng)主數(shù)據(jù)庫文件到新的磁盤上。
在異步數(shù)據(jù)庫鏡像中,應(yīng)用程序連接到主數(shù)據(jù)庫訪問。我們這里要根據(jù)你的線上環(huán)境考慮選擇哪種方式合適:
1. 手動(dòng)故障轉(zhuǎn)移到鏡像庫,然后再移動(dòng)新的鏡像數(shù)據(jù)庫文件。
2. 直接移動(dòng)主數(shù)據(jù)庫文件。
我個(gè)人認(rèn)為,如果業(yè)務(wù)無法容忍長時(shí)間停機(jī),建議先手工故障轉(zhuǎn)移到鏡像庫,業(yè)務(wù)切換連接串。如果此時(shí),新的鏡像庫所在實(shí)例上還有其他線上業(yè)務(wù)數(shù)據(jù)庫,以業(yè)務(wù)第一,建議重做鏡像,將數(shù)據(jù)庫文件放到新的位置。待鏡像搭建完成后,再重新手工故障轉(zhuǎn)移回來,業(yè)務(wù)也指向回來。
由于我們線上業(yè)務(wù)恰好有停機(jī)維護(hù)時(shí)間窗口。在此期間,我直接移動(dòng)主數(shù)據(jù)庫。下面,我們先來嘗試在業(yè)務(wù)停機(jī)期間,直接移動(dòng)主數(shù)據(jù)庫文件。
1. 在主數(shù)據(jù)庫上做完整備份,避免出現(xiàn)問題。
2. 在主庫上點(diǎn)擊“Pause”,暫停鏡像會話。
3. 在主庫上使用Alter Database指向一個(gè)新的位置。
a) 確定WMS數(shù)據(jù)庫的邏輯文件名稱以及這些文件在磁盤上的當(dāng)前位置。
SELECT name, physical_name FROM sys.master_files WHERE database_id = DB_ID('WMS'); GO
b) 使用 ALTER DATABASE更改每個(gè)文件的位置。
USE master; GO ALTER DATABASE WMS MODIFY FILE (NAME = FLUXWMS_DEMO, FILENAME = ' H:\SQL-LOG\WMS.mdf'); GO
4. 重啟主數(shù)據(jù)庫所在實(shí)例的SQL Server服務(wù)。(這里對于主數(shù)據(jù)庫所在實(shí)例上還有其他業(yè)務(wù)數(shù)據(jù)庫,務(wù)必得考慮對其他業(yè)務(wù)的影響,我們選擇移動(dòng)鏡像數(shù)據(jù)庫文件的第二種方法)
5. 移動(dòng)主數(shù)據(jù)庫文件到一個(gè)新位置,并確保文件上的權(quán)限也還在。
6. 使WMS數(shù)據(jù)庫 OFFLINE 再 ONLINE,以實(shí)施更改。(當(dāng)然,此時(shí)重啟SQL Server服務(wù)應(yīng)該也可以,但如果操作的主庫所在實(shí)例上有其他業(yè)務(wù)數(shù)據(jù)庫,會受到影響,建議還是在數(shù)據(jù)庫級別操作)
USE master GO ALTER DATABASE WMS SET OFFLINE ALTER DATABASE WMS SET ONLINE GO
這時(shí),我們再來看看數(shù)據(jù)庫狀態(tài)。
在主庫上:
發(fā)現(xiàn)狀態(tài)已經(jīng)正常。
7. 在主庫上點(diǎn)擊“RESUME”,恢復(fù)鏡像會話。驗(yàn)證鏡像狀態(tài)已同步。
這樣也驗(yàn)證了Alter Database移動(dòng)數(shù)據(jù)庫文件的操作是修改了master系統(tǒng)數(shù)據(jù)庫,而不會被同步到鏡像數(shù)據(jù)庫。