pg_logicalinspect模块提供 SQL 函数, 允许你检查逻辑解码组件的内容。 它还允许检查运行中的PostgreSQL数据库集簇的序列化逻辑快照, 这对调试或教学用途很有帮助。
默认情况下,这些函数仅允许超级用户和pg_read_server_files角色成员使用。 超级用户可通过GRANT向其他用户授予访问权限。
pg_get_logical_snapshot_meta(filename text) returns record #获取位于服务器pg_logical/snapshots目录中的快照文件的逻辑快照元数据。 filename参数表示快照文件名。例如:
postgres=# SELECT * FROM pg_ls_logicalsnapdir();
-[ RECORD 1 ]+-----------------------
name | 0-40796E18.snap
size | 152
modification | 2024-08-14 16:36:32+00
postgres=# SELECT * FROM pg_get_logical_snapshot_meta('0-40796E18.snap');
-[ RECORD 1 ]--------
magic | 1369563137
checksum | 1028045905
version | 6
postgres=# SELECT ss.name, meta.* FROM pg_ls_logicalsnapdir() AS ss,
pg_get_logical_snapshot_meta(ss.name) AS meta;
-[ RECORD 1 ]-------------
name | 0-40796E18.snap
magic | 1369563137
checksum | 1028045905
version | 6
如果filename不是某个快照文件名, 则函数报错。
pg_get_logical_snapshot_info(filename text) returns record #获取位于服务器pg_logical/snapshots目录中的快照文件的逻辑快照信息。 filename参数表示快照文件名。例如:
postgres=# SELECT * FROM pg_ls_logicalsnapdir();
-[ RECORD 1 ]+-----------------------
name | 0-40796E18.snap
size | 152
modification | 2024-08-14 16:36:32+00
postgres=# SELECT * FROM pg_get_logical_snapshot_info('0-40796E18.snap');
-[ RECORD 1 ]------------+-----------
state | consistent
xmin | 751
xmax | 751
start_decoding_at | 0/40796AF8
two_phase_at | 0/40796AF8
initial_xmin_horizon | 0
building_full_snapshot | f
in_slot_creation | f
last_serialized_snapshot | 0/0
next_phase_at | 0
committed_count | 0
committed_xip |
catchange_count | 2
catchange_xip | {751,752}
postgres=# SELECT ss.name, info.* FROM pg_ls_logicalsnapdir() AS ss,
pg_get_logical_snapshot_info(ss.name) AS info;
-[ RECORD 1 ]------------+----------------
name | 0-40796E18.snap
state | consistent
xmin | 751
xmax | 751
start_decoding_at | 0/40796AF8
two_phase_at | 0/40796AF8
initial_xmin_horizon | 0
building_full_snapshot | f
in_slot_creation | f
last_serialized_snapshot | 0/0
next_phase_at | 0
committed_count | 0
committed_xip |
catchange_count | 2
catchange_xip | {751,752}
如果filename不是某个快照文件名, 则函数报错。
Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。