And*_*rew 13 postgresql logging changelog
我正在编写一个同步PostgreSQL和MS SQL服务器数据库的程序(并在此转换中添加了一些更改).拥有数百万条记录,需要很长时间,并且加载服务器非常糟糕select *; 它还需要更多资源来解析未更改的记录并根据MS SQL服务器验证它们.
PostgreSQL中是否有任何日志可以解析,以找出最近n分钟内发生的变化?这将允许我只选择那些我需要工作的记录; 改善表现.
Eri*_*ski 19
Postgresql,找到最近n分钟的变化:
Postgresql不会自动存储添加/更新/删除行的时间(如果你不想这样做,它会让postgresql处理这样的时间戳变慢).
您必须自己完成:向表中添加时间戳列.向表中插入行时,请将时间戳列更新为current_timestamp.选择行时,请使用select语句,该语句在时间戳大于N分钟前的位置进行过滤,如下所示:
获取时间戳大于日期的行:
SELECT * from yourtable
WHERE your_timestamp_field > to_date('05 Dec 2000', 'DD Mon YYYY');
Run Code Online (Sandbox Code Playgroud)
获取最近n分钟内已更改的行:
SELECT * from yourtable
WHERE your_timestamp_field > current_timestamp - interval '5 minutes'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10817 次 |
| 最近记录: |