PostgreSQL中的一些日志
1.Write Ahead Log(WAL日志)
预写日志(WAL)是保证数据完整性的标准方法。在有关交易处理的大多数(如果不是全部)书籍中都可以找到详细说明。 简而言之,WAL的核心概念是,只有在记录了对这些更改之后,即在描述更改的日志记录已刷新到永久存储之后,才写入对数据文件(表和索引所在的位置)的更改。如果我们遵循此过程,我们不需要在每次事务提交时将数据页刷新到磁盘,因为我们知道如果发生崩溃,我们将能够使用日志恢复数据库:任何尚未应用的更改,可以从日志记录中重做数据页面。(这是前滚恢复,也称为REDO)
WAL还可以支持在线备份和基于时间点恢复。 通过归档WAL数据,我们可以支持恢复到可用WAL数据覆盖的任何时刻:我们只需安装数据库的先前物理备份,并将WAL日志重播到所需的时间。 更重要的是,物理备份不必是数据库状态的瞬时快照 - 如果它是在一段时间内完成的,那么重播该期间的WAL日志将解决任何内部不一致问题。
位于目录pg_wal中。单个文件大小由wal-segsize控制。默认是16mb。
WAL日志,相当于Oracle的在线重做日志。
主要的相关参数:
wal_level
max_wal_size
min_wal_size
2.WAL的归档日志
主要的相关参数:
archive_mode
archive_command
3.事务状态日志
pg_xact
pg_xact这个目录下的文件也是事务日志文件,但与pg_wal不同的是它记录的是事务的元数据(metadata),这些日志提供了事务提交状态信息。这个日志文件一般非常小,不得随意删除或者对其更改信息。
4.pg_log
server log一般是记录服务器与DB的状态,比如各种Error信息,定位慢查询SQL,数据库的启动关闭信息,发生checkpoint过于频繁等的告警信息。当数据库出问题时,首先就要查看这个日志
主要的相关参数:
log_destination
logging_collector
log_directory
log_filename
log_rotation_age
log_rotation_size
最新文章
- 在Windows系统下用命令把应用程序添加到系统服务
- stopping NetworkManager daemon failed
- Azure 媒体服务可将优质内容传输至 Apple TV
- express3.0安装并使用layout模板
- HTTP学习笔记3-响应结构
- 超级实用且不花哨的js代码大全
- 初探swift语言的学习笔记(闭包 - 匿名函数或block块代码)
- 探索C/C++大数快(自然数)模板
- window环境下npm install node-sass报错
- Spring核心概念
- codeforces#1090 D. New Year and the Permutation Concatenation(打表找规律)
- mysql uuid() 相同 重复
- ubuntu上vsftpd服务配置
- protobuf可变长编码的实现原理
- Python格式化字符 %s %d %f
- PyQt5--QCalendar
- BZOJ2662: [BeiJing wc2012]冻结 spfa+分层图
- 2015湖南湘潭 D 二分
- iOS:URL Scheme(完结)(18-1-3更)
- Grunt-Less批量编译为css