据我了解,PostgreSQL 中的 WAL 旨在控制数据库的完整性。在文件系统上,CoW(写时复制)机制也可用于同样的目的。
因此 WAL 看起来有些开销。那么可以安全地关闭它吗?毕竟,文件系统本身可以提供数据的完整性。
答案1
写时复制不会保证文件系统的完整性。假设您指的是文件系统日志记录,它确实保证了文件系统的完整性,那么您几乎肯定仍应使用预写日志记录。
PostgreSQL 中的预写日志为您提供事务级别的数据库完整性,通常可提高性能,并提供时间点备份并允许在线备份。
这文档很好地解释了这一点。