邏輯解碼(wal2json)
更新時間 2024-05-31 18:52:36
最近更新時間: 2024-05-31 18:52:36
分享文章
本小節主要介紹RDS-PostgreSQL的wal2json插件使用方法。
操作場景
RDS-PostgreSQL支持 wal2json插件,可以將邏輯日志文件輸出為JSON格式供您查看。
前提條件
- 請確保您的實例內核大版本滿足,本插件所支持的內核版本,請參考支持的版本插件列表。
注意事項
wal2json插件默認自帶,無需創建。
使用示例
-- 1.執行如下命令建表及初始化插件。
CREATE TABLE table2_with_pk (a SERIAL, b VARCHAR(30), c TIMESTAMP NOT NULL, PRIMARY KEY(a, c));
CREATE TABLE table2_without_pk (a SERIAL, b NUMERIC(5,2), c TEXT);?
SELECT 'init' FROM pg_create_logical_replication_slot('test_slot', 'wal2json');
?
-- 2.執行如下命令變更數據。
BEGIN;
INSERT INTO table2_with_pk (b, c) VALUES('Backup and Restore', now());
INSERT INTO table2_with_pk (b, c) VALUES('Tuning', now());
INSERT INTO table2_with_pk (b, c) VALUES('Replication', now());
DELETE FROM table2_with_pk WHERE a < 3;
INSERT INTO table2_without_pk (b, c) VALUES(2.34, 'Tapir');
UPDATE table2_without_pk SET c = 'Anta' WHERE c = 'Tapir';
COMMIT;
??
-- 3.執行如下命令輸出JSON格式的日志信息。
SELECT data FROM pg_logical_slot_get_changes('test_slot', NULL, NULL, 'pretty-print', '1');