PostgreSQL 查看数据库修改时间

本文提供了查询数据库创建和修改信息的方法,通过使用SQL语句,可以获取数据库的修改时间和名称,适用于PostgreSQL数据库。

查看数据库创建、修改信息

SELECT (pg_stat_file('base/'||oid ||'/PG_VERSION')).modification, datname FROM pg_database;

SELECT (pg_stat_file(‘base/’||oid ||’/PG_VERSION’)).modification, datname FROM pg_database;

或者

SELECT (pg_stat_file('base/'||oid ||'/PG_VERSION')).modification a, datname FROM pg_database  ORDER BY a desc;
PostgreSQL 中,WAL(Write-Ahead Logging)日志的保留时间主要由归档和复制需求决定。默认情况下,PostgreSQL 不会主动删除 WAL 日志文件,除非它们不再需要用于崩溃恢复、归档或复制。因此,WAL 日志的保留时间可以通过以下几种方式进行控制和调整: ### 1. 使用 `archive_mode` 和 `archive_command` 通过启用归档模式,可以将 WAL 文件复制到长期存储中。WAL 文件的保留时间取决于归档策略和外部清理机制。例如: ```conf archive_mode = on archive_command = 'cp %p /path/to/archive/%f' ``` 当 WAL 文件被归档后,PostgreSQL 会根据需要保留这些文件。如果希望限制 WAL 文件的保留时间,可以在 `archive_command` 中加入清理逻辑,或者使用外部工具(如 `pg_archivecleanup`)定期清理不再需要的 WAL 文件。 ### 2. 使用 `wal_keep_segments` `wal_keep_segments` 参数定义了 PostgreSQL 在 pg_wal 目录中保留的 WAL 文件的最小数量。这些文件用于支持流复制,确保备用服务器能够及时获取 WAL 数据。 ```conf wal_keep_segments = 64 # 保留64个WAL文件 ``` 每个 WAL 文件的默认大小为 16MB,因此设置 `wal_keep_segments = 64` 将保留大约 1GB 的 WAL 数据。通过调整该参数,可以间接控制 WAL 文件的保留时间。 ### 3. 使用 `max_slot_wal_keep_size` 从 PostgreSQL 13 开始,引入了 `max_slot_wal_keep_size` 参数,用于控制复制槽(Replication Slot)可以保留的 WAL 数据量。如果使用逻辑复制或物理复制槽,可以通过此参数限制 WAL 文件的保留大小: ```conf max_slot_wal_keep_size = 2GB ``` ### 4. 使用 `checkpoint_segments` 和 `checkpoint_timeout` 虽然 `checkpoint_segments` 和 `checkpoint_timeout` 不直接控制 WAL 文件的保留时间,但它们会影响检查点的频率,从而影响 WAL 文件的生成速度。通过调整这些参数,可以间接影响 WAL 文件的生成和清理节奏。 ```conf checkpoint_segments = 16 checkpoint_timeout = 300 ``` ### 5. 手动清理 WAL 文件 如果需要手动清理 WAL 文件,可以使用 `pg_archivecleanup` 工具。例如: ```bash pg_archivecleanup /path/to/archive 000000010000000A00000001 ``` 该命令会删除指定 WAL 文件之前的所有 WAL 文件。 ### 总结 PostgreSQL 本身并不直接提供设置 WAL 日志保留时间的功能,但通过 `wal_keep_segments`、`max_slot_wal_keep_size`、`archive_command` 等参数,可以间接控制 WAL 文件的保留策略。结合归档工具和外部清理机制,可以实现更精确的 WAL 文件生命周期管理。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值