SQL Server 中的 NUL 設(shè)備/NIL設(shè)備 在 SQL Server 中,有一個(gè)特殊的設(shè)備叫做 NUL(注意,不是 NULL),它類似于文件系統(tǒng)中的“黑洞”。NUL 設(shè)備類似于 Linux 系統(tǒng)中的 /dev/null,所有寫(xiě)入到 NUL 的數(shù)據(jù)都會(huì)被直接丟棄。 我們可以利用這個(gè)特性,在不
在 SQL Server 中,存在一個(gè)特殊的設(shè)備叫做 NUL(注意,不是 NULL),它類似于文件系統(tǒng)中的“黑洞”。NUL 設(shè)備類似于 Linux 系統(tǒng)中的 /dev/null,所有寫(xiě)入到 NUL 的數(shù)據(jù)都會(huì)被直接丟棄。
我們可以利用這個(gè)特性,在不需要實(shí)際生成備份文件的情況下進(jìn)行測(cè)試或模擬備份操作。
完整備份的常規(guī)操作
通常情況下,我們對(duì)某個(gè)數(shù)據(jù)庫(kù)進(jìn)行完整備份時(shí),可以使用以下最簡(jiǎn)單的 SQL 語(yǔ)句:
執(zhí)行后,SQL Server 會(huì)顯示備份的結(jié)果。
備份文件將存儲(chǔ)在實(shí)例的默認(rèn)備份路徑中?梢酝ㄟ^(guò)以下 SQL 查詢來(lái)確認(rèn)該路徑:
使用 NUL 設(shè)備進(jìn)行備份
如果不想實(shí)際生成備份文件,但需要測(cè)試備份操作或了解備份時(shí)間等,可以將備份數(shù)據(jù)寫(xiě)入 NUL 設(shè)備。
SQL Server 支持兩種方式將備份寫(xiě)入 NUL 設(shè)備:使用 NUL 或 NUL:。
執(zhí)行后,SQL Server 同樣會(huì)顯示備份的結(jié)果。
NUL 設(shè)備還可以通過(guò)備份判斷磁盤的讀吞吐量,即使你備份至多個(gè)NUL設(shè)備。備份至NUL設(shè)備主要是讀取數(shù)據(jù),寫(xiě)數(shù)據(jù)并沒(méi)有寫(xiě)入具體的磁盤中。
總結(jié)
備份至 NUL 設(shè)備的主要用途包括:
1、備份吞吐量驗(yàn)證:NUL 設(shè)備可以用來(lái)測(cè)試數(shù)據(jù)庫(kù)的
讀 IOPS 性能
,幫助驗(yàn)證備份時(shí)的讀寫(xiě)吞吐量。
2、沒(méi)有日志備份導(dǎo)致磁盤滿:如果日志文件長(zhǎng)期未備份而變得非常大導(dǎo)致磁盤空間不足,可以通過(guò)將
日志備份寫(xiě)入 NUL 設(shè)備
來(lái)快速釋放日志空間,之后再進(jìn)行日志文件收縮或者設(shè)置簡(jiǎn)單模式收縮文件。
3、在高可用配置:特別是 SQL Server2016或者以上版本, AlwaysOn AG 場(chǎng)景中,使用
automatic seeding 功能
配置可用性數(shù)據(jù)庫(kù)前需要備份,可將數(shù)據(jù)庫(kù)備份至NUL設(shè)備后再初始化同步。
4、COPY_ONLY 備份:在不希望中斷備份鏈(不truncate日志文件里的日志)但需要在生產(chǎn)環(huán)境中進(jìn)行測(cè)試時(shí),可以使用
COPY_ONLY 參數(shù)
來(lái)創(chuàng)建臨時(shí)備份,避免對(duì)生產(chǎn)環(huán)境的備份鏈產(chǎn)生影響。
需要注意的是,備份至 NUL 設(shè)備時(shí)的讀操作對(duì)性能的影響與實(shí)際備份相似,因此在生產(chǎn)環(huán)境中進(jìn)行測(cè)試時(shí),仍需謹(jǐn)慎評(píng)估其影響。
參考文章
https://www.modb.pro/db/452106
https://blog.csdn.net/lnotime/article/details/104847946
https://cloud.tencent.com.cn/developer/information/%E6%AD%A3%E5%9C%A8%E8%BF%98%E5%8E%9F%E6%95%B0%E6%8D%AE%E5%BA%93SQL%20Server%20-%E6%95%B0%E6%8D%AE%E4%B8%BAnull%E4%B8%8D%E8%83%BD%E5%AF%B9null%E5%80%BC%E8%B0%83%E7%94%A8%E6%AD%A4%E6%96%B9%E6%B3%95%E6%88%96%E5%B1%9E%E6%80%A7
本文版權(quán)歸作者所有,未經(jīng)作者同意不得轉(zhuǎn)載。
小編推薦閱讀機(jī)器學(xué)習(xí):神經(jīng)網(wǎng)絡(luò)構(gòu)建(下)
閱讀華為Mate品牌盛典:HarmonyOS NEXT加持下游戲性能得到充分釋放
閱讀實(shí)現(xiàn)對(duì)象集合與DataTable的相互轉(zhuǎn)換
閱讀鴻蒙NEXT元服務(wù):論如何免費(fèi)快速上架作品
閱讀算法與數(shù)據(jù)結(jié)構(gòu) 1 - 模擬
閱讀基于鴻蒙NEXT的血型遺傳計(jì)算器開(kāi)發(fā)案例
閱讀5. Spring Cloud OpenFeign 聲明式 WebService 客戶端的超詳細(xì)使用
閱讀Java代理模式:靜態(tài)代理和動(dòng)態(tài)代理的對(duì)比分析
閱讀Win11筆記本“自動(dòng)管理應(yīng)用的顏色”顯示規(guī)則
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)