1.WAL文件大小postgresql的WAL文件大小是固定的由wal_sement_size决定默认值为16MBpostgres# show wal_segment_size; wal_segment_size ------------------ 16MB (1 row) postgres#其可以在初始化数据库时指定比如(大小为32MB)initdb --wal-segsize32MB备注wal_segment_size不能通过数据库运行时修改只能在初始化数据库时 (initdb) 指定。2.archive_timeout的作用和WAL文件大小的关系archive_timeout用于设置多久后(即使WAL文件未满WAL文件大小wal_sgment_size)触发WAL文件归档。如果wal_segment_size16MB60秒(archive_timeout值)内写入了4MB WAL60秒到期后16MB的WAL文件会被归档其中只有前4MB是有效数据其余未使用空间存在但不会影响恢复。3.WAL文件为什么不能被动态修改1.WAL文件大小影响整个数据库的日志管理、归档、流复制、checkpoint等机制。2.如果在已有数据库中改变大小会导致现有WAL文件格式不一致破坏日志一致性。
postgresql WAL文件大小
1.WAL文件大小postgresql的WAL文件大小是固定的由wal_sement_size决定默认值为16MBpostgres# show wal_segment_size; wal_segment_size ------------------ 16MB (1 row) postgres#其可以在初始化数据库时指定比如(大小为32MB)initdb --wal-segsize32MB备注wal_segment_size不能通过数据库运行时修改只能在初始化数据库时 (initdb) 指定。2.archive_timeout的作用和WAL文件大小的关系archive_timeout用于设置多久后(即使WAL文件未满WAL文件大小wal_sgment_size)触发WAL文件归档。如果wal_segment_size16MB60秒(archive_timeout值)内写入了4MB WAL60秒到期后16MB的WAL文件会被归档其中只有前4MB是有效数据其余未使用空间存在但不会影响恢复。3.WAL文件为什么不能被动态修改1.WAL文件大小影响整个数据库的日志管理、归档、流复制、checkpoint等机制。2.如果在已有数据库中改变大小会导致现有WAL文件格式不一致破坏日志一致性。