pg_waldump
— 顯示 PostgreSQL 資料庫叢集寫預日誌(WAL)的可讀表示
pg_waldump
[選項
...] [起始段
[結束段
]]
pg_waldump
用於顯示寫預日誌(WAL),主要用於除錯或教育目的。
此實用程式只能由安裝伺服器的使用者執行,因為它需要對資料目錄的只讀訪問許可權。
以下命令列選項控制輸出的位置和格式
startseg
指定用於開始讀取的 WAL 段檔案。這會隱式確定搜尋檔案的路徑以及要使用的時間線。
endseg
指定用於停止讀取的 WAL 段檔案。
-b
--bkp-details
輸出有關備份塊的詳細資訊。
-B 塊
--block=塊
僅顯示修改了給定塊的記錄。還必須使用 --relation
或 -R
提供關係。
-e 結束
--end=結束
在指定 WAL 位置停止讀取,而不是讀取到日誌流的末尾。
-f
--follow
到達有效 WAL 的末尾後,每秒輪詢一次,以檢查是否有新的 WAL 出現。
-F 分支
--fork=分支
僅顯示修改了給定分支中塊的記錄。有效值為 main
(主分支)、fsm
(空閒空間對映)、vm
(可見性對映)和 init
(初始化分支)。
-n 限制
--limit=限制
顯示指定數量的記錄,然後停止。
-p 路徑
--path=路徑
指定一個目錄以搜尋 WAL 段檔案,或者指定一個包含 pg_wal
子目錄的目錄,該子目錄包含此類檔案。預設情況下,將在當前目錄、當前目錄的 pg_wal
子目錄以及 PGDATA
的 pg_wal
子目錄中進行搜尋。
-q
--quiet
除了錯誤之外,不列印任何輸出。當您想知道一個 WAL 記錄範圍是否可以成功解析但又不在乎記錄內容時,此選項很有用。
-r 資源管理器
--rmgr=資源管理器
僅顯示由指定的資源管理器生成的記錄。您可以多次指定該選項以選擇多個資源管理器。如果 list
作為名稱傳遞,將列印有效的資源管理器名稱列表並退出。
擴充套件程式可以定義自定義資源管理器,但 pg_waldump 不載入擴充套件模組,因此無法按名稱識別自定義資源管理器。而是,您可以將自定義資源管理器指定為 custom###
,其中 ###
是三位數字的資源管理器 ID。此形式的名稱將始終被視為有效。
-R 表空間
/資料庫
/關係
--relation=表空間
/資料庫
/關係
僅顯示修改了給定關係中塊的記錄。關係以表空間 OID、資料庫 OID 和 relfilenode 的形式指定,用斜槓分隔,例如 1234/12345/12345
。這與程式輸出中用於關係的格式相同。
-s 開始
--start=開始
用於開始讀取的 WAL 位置。預設情況下,將從找到的最早檔案中的第一個有效 WAL 記錄開始讀取。
-t 時間線
--timeline=時間線
用於讀取 WAL 記錄的時間線。預設情況下,如果指定了 startseg
,則使用 startseg
中的值;否則,預設值為 1。該值可以以十進位制或十六進位制指定,例如 17
或 0x11
。
-V
--version
列印 pg_waldump 版本並退出。
-w
--fullpage
僅顯示包含完整頁面映像的記錄。
-x 事務 ID
--xid=事務 ID
僅顯示標記有給定事務 ID 的記錄。
-z
--stats[=record]
顯示摘要統計資訊(記錄和完整頁面映像的數量和大小),而不是單個記錄。可以選擇按記錄而不是按資源管理器生成統計資訊。
如果 pg_waldump 被訊號 SIGINT(Ctrl+C)終止,將顯示截至終止點的統計資訊摘要。此操作在 Windows 上不受支援。
--save-fullpage=儲存路徑
將 WAL 記錄中找到的完整頁面映像儲存到 儲存路徑
目錄。儲存的映像受與顯示的記錄相同的過濾和限制標準的影響。
完整頁面映像以以下檔名格式儲存:
檔名由以下部分組成:時間線
-LSN
.表空間OID
.資料庫OID
.節點OID
.塊號
_分支
元件 | 描述 |
---|---|
TIMELINE | 包含記錄的 WAL 段檔案的時間線,格式為 8 位十六進位制數字 %08X |
LSN | 該LSN包含此映像的記錄的 LSN,格式為兩個 8 位十六進位制數字 %08X-%08X |
RELTABLESPACE | 塊的表空間 OID |
DATOID | 塊的資料庫 OID |
RELNODE | 塊的檔案節點 |
BLKNO | 塊的塊號 |
FORK | 完整頁面映像來自的分支名稱,例如 main 、fsm 、vm 或 init 。 |
-?
--help
顯示有關 pg_waldump 命令列引數的幫助資訊,然後退出。
PGDATA
資料目錄;另請參閱 -p
選項。
PG_COLOR
指定是否在診斷訊息中使用顏色。可能的值為 always
、auto
和 never
。
伺服器執行時可能給出錯誤的結果。
僅顯示指定的時間線(如果未指定,則為預設時間線)。忽略其他時間線中的記錄。
pg_waldump 無法讀取字尾為 .partial
的 WAL 檔案。如果需要讀取這些檔案,需要從檔名中刪除 .partial
字尾。
如果您在文件中發現任何不正確、與您對特定功能的經驗不符或需要進一步說明的內容,請使用 此表單 報告文件問題。