SQL Server中聚合歷史備份信息對比數(shù)據(jù)庫增長的方法
很多時候,在我們規(guī)劃SQL Server數(shù)據(jù)庫的空間,或向存儲方面要空間時,都需要估算所需申請數(shù)據(jù)庫空間的大小,估計未來最簡單的辦法就是看過去的趨勢,這通常也是最合理的方式。
通常來講,一個運維良好的數(shù)據(jù)庫都需要做定期基線(baseline),有了基線才會知道什么是正常。一個簡單的例子例如,一些人的血壓平常偏低,那么80的低壓對他來說就是不正常了。但現(xiàn)實情況是大多數(shù)系統(tǒng)并沒有采集基線的習慣,因此在需要規(guī)劃空間想要看歷史增長時,就沒有過去精確的數(shù)據(jù)了。
一個解決辦法就是通過查看歷史備份的大小來看過去的數(shù)據(jù)增長趨勢,數(shù)據(jù)庫備份的時候不會備份整個文件,而只備份在FPS頁中標記已經(jīng)分配的頁,可以出現(xiàn)數(shù)據(jù)庫是20G,但備份只有3G的情況,因此數(shù)據(jù)庫備份可以作為查看數(shù)據(jù)增長的依據(jù)。
數(shù)據(jù)庫在每次備份時都會在msdb.dbo.backupset表中記錄備份的相關(guān)信息,因此可以通過下述查看來聚合歷史備份信息,從而對比數(shù)據(jù)庫的增長:
SELECT [database_name] AS "Database", DATEPART(month,[backup_start_date]) AS "Month", AVG([backup_size]/1024/1024) AS "Backup Size MB" FROM msdb.dbo.backupset WHERE [database_name] = N'Adventureworks2012' AND [type] = 'D' GROUP BY [database_name],DATEPART(mm,[backup_start_date]);
代碼清單1.按月查看歷史數(shù)據(jù)的增長
結(jié)果如圖1所示。
圖1.歷史數(shù)據(jù)的增長
其中,代碼清單1中database_name換成你需要查看的數(shù)據(jù)庫名稱即可。
注:SQL Server 2008之后引入了基于策略的管理,該策略會默認建立一個作業(yè),如圖2所示,該作業(yè)每天2點運行,會按照策略(歷史記錄保留天數(shù),如圖3所示)清理過期的歷史記錄。
圖2.查看策略管理
圖3.歷史記錄保留天數(shù),默認為0,既永不清理
該策略會對應建立一個作業(yè)(如圖4所示)。
圖4.清理歷史記錄的作業(yè)
如果該作業(yè)或人為建立的作業(yè)清除了msdb.dbo.backupset表中的數(shù)據(jù),則代碼清單1中的結(jié)果可能會受到一定影響。
- 找回SQL企業(yè)管理器里的SQL連接的密碼的方法
- sqlserver找回企業(yè)管理器的方法
- sql server 2005數(shù)據(jù)庫備份還原圖文教程
- SQLSERVER數(shù)據(jù)備份文件的分割備份方法
- 如何備份MySQL數(shù)據(jù)庫
- Linux下自動備份MySQL的方法
- MySQL使用命令備份和還原數(shù)據(jù)庫
- SqlServer備份數(shù)據(jù)庫的4種方式介紹
- SQL Server遠程定時備份數(shù)據(jù)庫腳本分享
- MySQL備份與恢復之冷備(1)
- MySQL備份與恢復之真實環(huán)境使用冷備(2)
- MySQL備份與恢復之熱備(3)
- MySQL備份與恢復之熱拷貝(4)
- MySQL備份與恢復之保證數(shù)據(jù)一致性(5)
- 企業(yè)管理器備份和還原SQL Server數(shù)據(jù)庫
相關(guān)文章
調(diào)整SQLServer2000運行中數(shù)據(jù)庫結(jié)構(gòu)
這篇文章主要介紹了調(diào)整SQLServer2000運行中數(shù)據(jù)庫結(jié)構(gòu),十分實用的一個功能,這里推薦給大家,有需要的小伙伴可以參考下。2015-04-04OBJECTPROPERTY與sp_rename更改對象名稱的介紹
開發(fā)過程中,錯誤免不了。為了糾正錯誤與規(guī)范化??梢允褂肕S SQL Server的系統(tǒng)存儲過程sp_rename與OBJECTPROPERTY來更改重命名2012-01-01SQLserver2019?Express安裝及其一些問題解決
本文主要介紹了SQL?server?2019?Express?安裝及其一些問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04sql?server設(shè)置數(shù)據(jù)庫某個字段值不能重復兩種方法
sqlserver的表中有一個列不能有相同的值,如何保證每次插入該列的值都是不同的,這篇文章主要給大家介紹了關(guān)于sql?server設(shè)置數(shù)據(jù)庫某個字段值不能重復的兩種方法,需要的朋友可以參考下2023-11-11