zoukankan      html  css  js  c++  java
  • pg_waldump工具

    pg_waldump显示WAL,将WAL以人可以读的格式输出。主要用于调试或教育目的。这个实用程序只能由安装的用户运行,因为它需要对数据目录进行只读访问。

    语法

    pg_waldump [option...] [startseg [endseg] ]
    

    参数

    $ pg_waldump --help
    pg_waldump decodes and displays PostgreSQL write-ahead logs for debugging.
    
    Usage:
      pg_waldump [OPTION]... [STARTSEG [ENDSEG]]
    
    Options:
      -b, --bkp-details      output detailed information about backup blocks 
      						 #输出backup blocks的详细信息,即full-write-page信息
      -e, --end=RECPTR       stop reading at WAL location RECPTR
      						 #停止读取WAL的位置
      -f, --follow           keep retrying after reaching end of WAL
      						 #在到达WAL末尾时仍继续尝试
      -n, --limit=N          number of records to display
      						 #显示的记录数
      -p, --path=PATH        directory in which to find log segment files or a
                             directory with a ./pg_wal that contains such files
                             (default: current directory, ./pg_wal, $PGDATA/pg_wal)
      -r, --rmgr=RMGR        only show records generated by resource manager RMGR;
                             use --rmgr=list to list valid resource manager names
      -s, --start=RECPTR     start reading at WAL location RECPTR
      -t, --timeline=TLI     timeline from which to read log records
                             (default: 1 or the value used in STARTSEG)
      -V, --version          output version information, then exit
      -x, --xid=XID          only show records with transaction ID XID
      -z, --stats[=record]   show statistics instead of records
                             (optionally, show per-record statistics)
      -?, --help             show this help, then exit
    

    查看WAL的资源管理器列表:

    $ pg_waldump -r list
    XLOG
    Transaction
    Storage
    CLOG
    Database
    Tablespace
    MultiXact
    RelMap
    Standby
    Heap2
    Heap
    Btree
    Hash
    Gin
    Gist
    Sequence
    SPGist
    BRIN
    CommitTs
    ReplicationOrigin
    Generic
    LogicalMessage
    

    输出STARTSEG到ENDSEG的事务日志

    $ ll
    -rw------- 1 postgres postgres 16777216 Sep 15 11:55 0000015C0000006A00000036
    -rw------- 1 postgres postgres 16777216 Sep 15 14:32 0000015C0000006A00000037
    -rw------- 1 postgres postgres 16777216 Sep 15 14:58 0000015C0000006A00000038
    -rw------- 1 postgres postgres 16777216 Sep 14 23:55 0000015C0000006A00000039
    -rw------- 1 postgres postgres 16777216 Sep 15 03:55 0000015C0000006A0000003A
    -rw------- 1 postgres postgres 16777216 Sep 15 05:25 0000015C0000006A0000003B
    -rw------- 1 postgres postgres     4457 Aug 16 15:21 0000015C.history
    drwx------ 2 postgres postgres     4096 Sep 15 14:33 archive_status
    
    $ pg_waldump 0000015C0000006A00000037 0000015C0000006A0000003A |more
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913618, lsn: 6A/37000560, prev 6A/36FFFD68, desc: INSERT_LEAF off 77, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913618, lsn: 6A/370005A0, prev 6A/37000560, desc: COMMIT 2020-09-15 11:55:51.480718 CST
    rmgr: Heap        len (rec/tot):    904/  5456, tx:   16913619, lsn: 6A/370005D0, prev 6A/370005A0, desc: HOT_UPDATE off 6 xmax 16913619 ; new off 1 xmax 0, blkref #0: rel 1663/36838/407654 blk 23 FPW
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913619, lsn: 6A/37001B20, prev 6A/370005D0, desc: COMMIT 2020-09-15 11:55:51.483057 CST
    rmgr: Heap        len (rec/tot):   1867/  1867, tx:   16913621, lsn: 6A/37001B50, prev 6A/37001B20, desc: INSERT off 4, blkref #0: rel 1663/36838/1294702 blk 94267
    rmgr: Heap        len (rec/tot):   1875/  1875, tx:   16913622, lsn: 6A/370022B8, prev 6A/37001B50, desc: INSERT+INIT off 1, blkref #0: rel 1663/36838/1294702 blk 94269
    rmgr: Heap        len (rec/tot):   1858/  1858, tx:   16913620, lsn: 6A/37002A10, prev 6A/370022B8, desc: INSERT+INIT off 1, blkref #0: rel 1663/36838/1294702 blk 94270
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913621, lsn: 6A/37003158, prev 6A/37002A10, desc: INSERT_LEAF off 78, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913622, lsn: 6A/37003198, prev 6A/37003158, desc: INSERT_LEAF off 79, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913620, lsn: 6A/370031D8, prev 6A/37003198, desc: INSERT_LEAF off 78, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913621, lsn: 6A/37003218, prev 6A/370031D8, desc: COMMIT 2020-09-15 11:55:51.492875 CST
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913622, lsn: 6A/37003248, prev 6A/37003218, desc: COMMIT 2020-09-15 11:55:51.492878 CST
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913620, lsn: 6A/37003278, prev 6A/37003248, desc: COMMIT 2020-09-15 11:55:51.492882 CST
    rmgr: Heap        len (rec/tot):    364/  2512, tx:   16913623, lsn: 6A/370032A8, prev 6A/37003278, desc: HOT_UPDATE off 6 xmax 16913623 ; new off 11 xmax 0, blkref #0: rel 1663/36838/407654 blk 76 FPW
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913623, lsn: 6A/37003C78, prev 6A/370032A8, desc: COMMIT 2020-09-15 11:55:51.494092 CST
    rmgr: Heap        len (rec/tot):    351/   351, tx:   16913624, lsn: 6A/37003CA8, prev 6A/37003C78, desc: HOT_UPDATE off 8 xmax 16913624 ; new off 3 xmax 0, blkref #0: rel 1663/36838/407654 blk 100
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913624, lsn: 6A/37003E08, prev 6A/37003CA8, desc: COMMIT 2020-09-15 11:55:51.494374 CST
    rmgr: Heap        len (rec/tot):    367/   367, tx:   16913625, lsn: 6A/37003E38, prev 6A/37003E08, desc: HOT_UPDATE off 14 xmax 16913625 ; new off 19 xmax 0, blkref #0: rel 1663/36838/407654 blk 14
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913625, lsn: 6A/37003FA8, prev 6A/37003E38, desc: COMMIT 2020-09-15 11:55:51.494512 CST
    rmgr: Heap        len (rec/tot):   1876/  1876, tx:   16913626, lsn: 6A/37003FD8, prev 6A/37003FA8, desc: INSERT off 3, blkref #0: rel 1663/36838/1294702 blk 94268
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913626, lsn: 6A/37004748, prev 6A/37003FD8, desc: INSERT_LEAF off 81, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913626, lsn: 6A/37004788, prev 6A/37004748, desc: COMMIT 2020-09-15 11:55:51.495797 CST
    rmgr: Heap        len (rec/tot):    367/   367, tx:   16913627, lsn: 6A/370047B8, prev 6A/37004788, desc: HOT_UPDATE off 7 xmax 16913627 ; new off 3 xmax 0, blkref #0: rel 1663/36838/407654 blk 23
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913627, lsn: 6A/37004928, prev 6A/370047B8, desc: COMMIT 2020-09-15 11:55:51.497043 CST
    rmgr: Heap        len (rec/tot):   1861/  1861, tx:   16913628, lsn: 6A/37004958, prev 6A/37004928, desc: INSERT+INIT off 1, blkref #0: rel 1663/36838/1294702 blk 94271
    rmgr: Heap        len (rec/tot):   1869/  1869, tx:   16913629, lsn: 6A/370050A0, prev 6A/37004958, desc: INSERT off 4, blkref #0: rel 1663/36838/1294702 blk 94268
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913628, lsn: 6A/370057F0, prev 6A/370050A0, desc: INSERT_LEAF off 82, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Btree       len (rec/tot):     64/    64, tx:   16913629, lsn: 6A/37005830, prev 6A/370057F0, desc: INSERT_LEAF off 83, blkref #0: rel 1663/36838/1294709 blk 1123
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913628, lsn: 6A/37005870, prev 6A/37005830, desc: COMMIT 2020-09-15 11:55:51.522523 CST
    rmgr: Transaction len (rec/tot):     46/    46, tx:   16913629, lsn: 6A/370058A0, prev 6A/37005870, desc: COMMIT 2020-09-15 11:55:51.522530 CST
    

      

      

  • 相关阅读:
    清空收缩数据库日志文件的方法
    JavaScript中的剪贴板的使用(clipboardData)
    location.search在客户端获取Url参数的方法
    JS之onkeypress,onkeydown,onkeyup区别
    网页中的meta标签的作用
    SQL优化条
    JS简洁经典滚动上下与左右
    结构体
    static修饰符
    Solaris内存监控 & solaris查看内存使用情况
  • 原文地址:https://www.cnblogs.com/abclife/p/13673313.html
Copyright © 2011-2022 走看看