DBI302深入了解SQLServer交易紀(jì)錄_第1頁
DBI302深入了解SQLServer交易紀(jì)錄_第2頁
DBI302深入了解SQLServer交易紀(jì)錄_第3頁
DBI302深入了解SQLServer交易紀(jì)錄_第4頁
DBI302深入了解SQLServer交易紀(jì)錄_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

深入了解SQLServer交易紀(jì)錄胡百敬合夥顧問集英信誠DBI302第一頁,共三十四頁。大綱交易紀(jì)錄簡介CheckpointVirtualLogFiles結(jié)構(gòu)VLF重用VLF破碎資料庫復(fù)原模式交易紀(jì)錄備份Bulk交易紀(jì)錄維護(hù)交易

紀(jì)錄循環(huán)使用交易紀(jì)錄第二頁,共三十四頁。資料檔案資料存放的地方一定在某個檔案群組內(nèi)考慮使用兩個以上的檔案群組,Primary檔案群組存放系統(tǒng)物件隨機讀寫交易紀(jì)錄檔完成寫入後,才會到此更新資料變更會寫入兩次,先交易紀(jì)錄,後資料檔案第三頁,共三十四頁。交易紀(jì)錄檔擷取資料庫變動的狀態(tài)一定先更動此,再更新到資料檔維護(hù)交易的Atomicity

和Durability循序?qū)懭?,通常也循序讀出一般只需要一個交易紀(jì)錄檔第四頁,共三十四頁。交易紀(jì)錄先寫在更新資料檔之前,所有的變化須能永久記錄在交易紀(jì)錄內(nèi)Atomic變更能全部完成,或完全沒變交易紀(jì)錄能保證回復(fù)可行Durability變更能在穩(wěn)定的媒體上永久保存第五頁,共三十四頁。放置交易紀(jì)錄檔交易紀(jì)錄檔應(yīng)該放哪?專用的LUN通常是較好的選項如果存取量高,需要專屬的磁碟系統(tǒng)RAID

1或RAID10提供保護(hù)與效能RAID

5通常不利於更新儘量不要與其他檔案共用不同的檔案放在一起存取,大家都變成隨機存取第六頁,共三十四頁。SQL

Server資料庫上線資料庫需要經(jīng)過一系列的動作,才能進(jìn)入一致的狀態(tài)一般稱為Recovery需要交易紀(jì)錄何時發(fā)生:資料庫從離線轉(zhuǎn)成線上附加資料庫還原資料庫服務(wù)停止重起/叢集容錯移轉(zhuǎn)第七頁,共三十四頁。Recovery的階段分析讀取交易紀(jì)錄找尋進(jìn)行中的交易和DirtyPages從最後一次的Checkpoint之後開始找尋從何開始Redo流程Redo重播所有完成但未更新到資料檔的交易若是Enterprise版本,則在這個時間點可以存取資料庫Undo回復(fù)資料庫損毀時,未完的交易可能需要多次讀取交易紀(jì)錄從最舊的交易紀(jì)錄開始第八頁,共三十四頁。Checkpoint確保Recovery的Redo階段最少工作量將更新過的資料頁(dirtypage)寫入到磁碟內(nèi)的資料檔不管交易狀態(tài)如何,將所有的dirtypage寫入到資料檔可能造成大量的I/O不會從Bufferpool移除資料頁當(dāng)有記憶體壓力時,LazyWriter執(zhí)行此工作第九頁,共三十四頁。Checkpoint相關(guān)選項搭配sp_configure設(shè)定執(zhí)行個體recoveryinterval選項SQL

Server2012後可設(shè)定資料庫層級

Target_Recovery_Time選項第十頁,共三十四頁。DemoCheckpoint第十一頁,共三十四頁。交易紀(jì)錄保證資料庫的交易每筆紀(jì)錄透過LogSequenceNumber唯一標(biāo)示不僅與完成的交易有關(guān)記載所有的變動包含可以Redo和Undo交易的所有資訊第十二頁,共三十四頁。大綱交易紀(jì)錄簡介CheckpointVirtualLogFiles結(jié)構(gòu)VLF重用VLF破碎資料庫復(fù)原模式交易紀(jì)錄備份Bulk交易紀(jì)錄維護(hù)交易

紀(jì)錄循環(huán)使用交易紀(jì)錄第十三頁,共三十四頁。資料庫復(fù)原模式SimpleCheckpoint發(fā)生時清掉交易紀(jì)錄BulkLogged備份交易紀(jì)錄後清掉交易紀(jì)錄部分動作可以使用最少量的交易紀(jì)錄Full備份交易紀(jì)錄後清掉交易紀(jì)錄所有的行為都有完整的紀(jì)錄預(yù)設(shè)值第十四頁,共三十四頁。交易紀(jì)錄備份將Redo和Undo不再需要的交易紀(jì)錄存放到備份檔中,並從交易紀(jì)錄檔移除搭配完整備份,以還原資料庫到特定時間點Simple復(fù)原模式無法備份交易紀(jì)錄不保證交易紀(jì)錄空間會被重用不會縮小交易紀(jì)錄檔案第十五頁,共三十四頁。BulkLogged特定的行為可以讓SQLServer僅記錄發(fā)生該行為以及使用的空間可以讓動作執(zhí)行得較快注意:在BulkLogged動作完成交易前,必須將受影響的資料頁內(nèi)容寫入資料檔交易紀(jì)錄檔成長得較小,但交易紀(jì)錄備份檔不會較小第十六頁,共三十四頁。DemoBulkLogged行為第十七頁,共三十四頁。大綱交易紀(jì)錄簡介CheckpointVirtualLogFiles結(jié)構(gòu)VLF重用VLF破碎資料庫復(fù)原模式交易紀(jì)錄備份Bulk交易紀(jì)錄維護(hù)交易

紀(jì)錄循環(huán)使用交易紀(jì)錄第十八頁,共三十四頁。記錄的行為我們希望交易紀(jì)錄檔有限地成長一旦不再需要局部的紀(jì)錄,期待該空間可以回收使用交易紀(jì)錄有循環(huán)的特徵,應(yīng)可以重用空間DBA負(fù)有管好交易紀(jì)錄的責(zé)任什麼是合理的交易紀(jì)錄檔成長量,異常成長的原因為何?第十九頁,共三十四頁。交易區(qū)塊(LogBlock)實體寫入到交易紀(jì)錄檔的單位大小從512位元組到60K在記憶體中以“l(fā)ogbuffer”儲存儲存在BufferPool交易完畢或?qū)憹M60K,就更新到交易紀(jì)錄檔較大的交易量(接近60K)完成寫入較有效率有時多筆小交易對效能不利第二十頁,共三十四頁。虛擬交易紀(jì)錄檔(VirtualLogFile)在交易紀(jì)錄檔內(nèi)清除交易的單位在建立交易紀(jì)錄檔或增長檔案大小時產(chǎn)生資料庫內(nèi)有多少數(shù)量的VLF是有差異的交易紀(jì)錄檔增長增加VLF的量<=

64MB4>64MB和<=1GB8>1GB16第二十一頁,共三十四頁。需要多少VLF檔案依需求!太多,傷讀取紀(jì)錄和還原資料庫的效能太少,很長時間才能釋放和重用VLF區(qū)段,造成交易紀(jì)錄檔更多的成長若VLF檔案太多,SQL

Server會發(fā)出警告Database…h(huán)asmorethan1000virtuallogfileswhichisexcessive.Toomanyvirtuallogfilescancauselongstartupandbackuptimes.Considershrinkingthelogandusingadifferentgrowthincrementtoreducethenumberofvirtuallogfiles.第二十二頁,共三十四頁。LogSequenceNumber資料庫內(nèi)狀態(tài)變化的識別子每個交易紀(jì)錄的唯一識別編碼單純遞增VLF編號:交易區(qū)塊編號:交易紀(jì)錄編號第二十三頁,共三十四頁。DemoVLF格式與重用交易紀(jì)錄第二十四頁,共三十四頁。為何交易紀(jì)錄檔如此大很多朋友的經(jīng)驗通常是Full復(fù)原模式,但不常做交易紀(jì)錄備份可能巨大交易造成的紀(jì)錄有時需要在其他的磁碟機加交易紀(jì)錄檔解法:修正其下的問題縮小交易紀(jì)錄檔將Log檔增大到適當(dāng)?shù)拇笮〉诙屙?,共三十四頁。重用VLF重用VLF需要:在當(dāng)下或之前的VLFs沒有還在進(jìn)行中的交易沒有需要完成其他工作的交易紀(jì)錄,例如還未複寫資料庫復(fù)原模式為Simple時,在Checkpoint後可重用資料庫復(fù)原模式為BulkLogged或Full需要在備份交易紀(jì)錄後第二十六頁,共三十四頁。Log_reuse_wait_desc在sys.databases

內(nèi)的欄位傳會當(dāng)下紀(jì)錄未

重用的原因,確

認(rèn)交易紀(jì)錄為何

留著可能值如右表NothingCheckpointLogbackupActivebackuporrestoreActiveTransactionDatabaseMirroringReplicationDatabasesnapshotcreationLogScanOther第二十七頁,共三十四頁??s小交易紀(jì)錄檔縮小交易紀(jì)錄檔案大小使用DBCCSHRINKFILE確定縮小交易紀(jì)錄檔後,再擴增到適當(dāng)大小縮小只能到某個VLF的邊界第二十八頁,共三十四頁。DemoVLF過多與破碎第二十九頁,共三十四頁。Q&A第三十頁,共三十四頁。msdnResourcesforDevelopers

Forums/zh-tw/categories/LearningMicrosoftCertification&TrainingResourcesTechNet相關(guān)資源Connect.Share.DiscussChannel9TaiwanResourcesforITProfessionals

Forums/zh-tw/categories第三十一頁,共三十四頁。填妥大會背包中的大會問卷,可於活動第三天兌換問卷禮哦!

請協(xié)助完成「本課程問卷」,並在離開教室時交給工作人員!感謝您的合作。第三十二頁,共三十四頁。?2013MicrosoftCorporation.Allrightsreserved.Microsoft,Windowsandotherproductnamesareormayberegisteredtrademarksand/ortrademarksintheU.S.and/orothercountries.TheinformationhereinisforinformationalpurposesonlyandrepresentsthecurrentviewofMicrosoftCorporationasofthedateofthispresentation.BecauseMicrosoftmustrespondtochangingmarketconditions,itshouldnotbeinterpretedtobeacommitmentonthepartofMicrosoft,andMicrosoftcannotguaranteetheaccuracyofanyinformationprovidedafterthedateofthispresentation.MICROSOFTMAKESNOWARRANTIES,EXPRESS,IMPLIEDORSTATUTORY,ASTOTHEINFORMATIONINTHISPRESENTATION.第三十三頁,共三十四頁。內(nèi)容總結(jié)深入了解SQLServer交易紀(jì)錄。考慮使用兩個以上的檔案群組,Primary檔案群組存放系統(tǒng)物件。在更新資料檔之前,所有的變化

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論