激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Sql Server - SQL Server誤區30日談 第14天 清除日志后會將相關的LSN填零初始化

SQL Server誤區30日談 第14天 清除日志后會將相關的LSN填零初始化

2019-12-28 15:34MSSQL教程網 Sql Server

當日志文件在手動增長,自動增長和創建時都會進行填零初始化操作。但是請不要把這個過程和定期清除日志的過程搞混

誤區 #14.清除日志后會將相關的LSN填零初始化

錯誤

 

    當日志文件在手動增長,自動增長和創建時都會進行填零初始化操作。但是請不要把這個過程和定期清除日志的過程搞混。日志截斷僅僅意味著將一個或多個VLF標記為不活動以便被重復使用。在日志清除的過程中,并沒有任何日志被清除或是填0。“清除日志”和”截斷日志”意思是一樣的,但都屬于用詞不當,因為在這個過程中日志的大小不會有任何改變。

    你可以在我的博客中看到有關日志文件填零初始化的博文:Search Engine Q&A #24: Why can't the transaction log use instant initialization?。以及我發布在TechNet雜志的文章:Understanding Logging and Recovery in SQL Server

    你可以通過跟蹤標記3004來查看SQL Server對日志文件進行填零初始化的過程。將這個追蹤標記打開當日志文件增長時,你就可以在SQL Server日志中看到相關信息,下面是測試代碼:

復制代碼代碼如下:

DBCC TRACEON (3004, 3605); 
GO 
-- Create database and put in SIMPLE recovery model so the log will clear on checkpoint 
CREATE DATABASE LogClearTest ON PRIMARY ( 
NAME = 'LogClearTest_data', 
FILENAME = N'D:\SQLskills\LogClearTest_data.mdf') 
LOG ON ( 
NAME = 'LogClearTest_log', 
FILENAME = N'D:\SQLskills\LogClearTest_log.ldf', 
SIZE = 20MB); 
GO 
-- Error log mark 1 
ALTER DATABASE LogClearTest SET RECOVERY SIMPLE; 
GO 
USE LogClearTest; 
GO 
-- Create table and fill with 10MB - so 10MB in the log 
CREATE TABLE t1 (c1 INT IDENTITY, c2 CHAR (8000) DEFAULT 'a'); 
GO 
INSERT INTO t1 DEFAULT VALUES; 
GO 1280 
-- Clear the log 
CHECKPOINT; 
GO 
-- Error log mark 2 
ALTER DATABASE LogClearTest SET RECOVERY SIMPLE; 
GO 


相應的,在日志中你可以看到: 

復制代碼代碼如下:

2010-04-13 13:20:27.55 spid53 DBCC TRACEON 3004, server process ID (SPID) 53. This is an informational message only; no user action is required. 
2010-04-13 13:20:27.55 spid53 DBCC TRACEON 3605, server process ID (SPID) 53. This is an informational message only; no user action is required. 
2010-04-13 13:20:27.63 spid53 Zeroing D:\SQLskills\LogClearTest_log.ldf from page 0 to 2560 (0x0 to 0x1400000) 
2010-04-13 13:20:28.01 spid53 Zeroing completed on D:\SQLskills\LogClearTest_log.ldf 
2010-04-13 13:20:28.11 spid53 Starting up database 'LogClearTest'. 
2010-04-13 13:20:28.12 spid53 FixupLogTail() zeroing D:\SQLskills\LogClearTest_log.ldf from 0x5000 to 0x6000. 
2010-04-13 13:20:28.12 spid53 Zeroing D:\SQLskills\LogClearTest_log.ldf from page 3 to 63 (0x6000 to 0x7e000) 
2010-04-13 13:20:28.14 spid53 Zeroing completed on D:\SQLskills\LogClearTest_log.ldf 
2010-04-13 13:20:28.16 spid53 Setting database option RECOVERY to SIMPLE for database LogClearTest. 
2010-04-13 13:20:29.49 spid53 Setting database option RECOVERY to SIMPLE for database LogClearTest. 

 

 

上面測試代碼中ALTER DATABASE是作為日志中這部分的開始和結束標記。在兩個Alter Database命令中的CheckPoint并不會引起填0操作。如果你需要進一步驗證這點,在Checkpoint之前和之后分別使用DBCC SQLPERF (LOGSPACE)來查看日志文件的大小,你會發現雖然日志文件大小沒有變,但是日志的使用空間百分比會大大減少。

 

   (下圖是譯者測試的結果):

    SQL Server誤區30日談 第14天 清除日志后會將相關的LSN填零初始化

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 日本视频在线免费观看 | 亚洲精品久久久久久久久久 | 国产亚洲精品美女久久久 | 精品国产一区二区久久 | 亚洲福利在线视频 | 男人久久天堂 | 美女亚洲综合 | 国产99精品视频 | 国产毛片在线看 | 大奶一级片| 久久久久久久亚洲精品 | 特级黄色影院 | 插插操| 99久久久精品国产一区二区 | a级黄色片视频 | 最新午夜综合福利视频 | 国产a级网站 | 日韩在线视频免费观看 | 成人在线观看免费视频 | 午夜在线成人 | 亚洲3atv精品一区二区三区 | 最新av网址在线观看 | 中文字幕在线观看亚洲 | 激情亚洲一区二区三区 | 深夜影院一级毛片 | 久久华人| 男女做性免费网站 | 日本成人在线播放 | 一级片在线 | 天堂亚洲一区 | 亚洲精品 欧美 | 午夜激情视频免费 | 黄色网址在线播放 | 老子午夜影院 | 一本色道久久久888 香蕉视频99 | 国产精品久久久久久久亚洲按摩 | 成人在线视频免费 | 中文字幕在线网站 | 红杏亚洲影院一区二区三区 | 国产在线1区 | 中文字幕综合在线观看 |