fsync

一个控制更新是否物理写入磁盘的 GUC 参数

fsync 是一个 配置参数,用于控制是否使用 fsync() 系统调用或等效方法将更新物理写入磁盘以实现崩溃安全性。

fsyncPostgreSQL 7.3 中添加。

重要提示:关闭此设置可能导致数据库遭受无法挽回的损坏。

默认

fsync 的默认值为:on

用法

fsync 设置为 off 似乎会带来一些性能优势,但这与生产服务器上高风险的数据损坏相比,是一个非常不利的权衡。

然而,在数据完整性不那么重要的某些情况下,禁用 fsync 可能是有益的,包括:

  • 从备份文件中初始化新的数据库集群
  • 使用数据库集群处理一批数据,且不需要保留这些数据
  • 设置一个只读数据库克隆,该克隆不用于故障转移
  • 为开发目的设置测试数据库

按 PostgreSQL 版本详细信息

fsync (PostgreSQL 19)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 18)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 17)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 16)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 15)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 14)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 13)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 12)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 11)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 10)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 9.6)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 9.5)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  
需要重启 false

文档fsync

fsync (PostgreSQL 9.4)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 9.3)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 9.2)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 9.1)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 9.0)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 8.4)

设置 开启
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  
枚举值  
启动值 开启
重置值 开启
源文件  
源行  

文档fsync

fsync (PostgreSQL 8.3)

设置  
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  

文档fsync

fsync (PostgreSQL 8.2)

设置  
单位  
类别 Write-Ahead Log / 设置
简短描述 强制将更新同步到磁盘。
扩展描述 服务器将在多个地方使用 fsync() 系统调用,以确保更新已物理写入磁盘。这确保了数据库集群在操作系统或硬件崩溃后能够恢复到一致的状态。
上下文 sighup
变量类型 bool
来源 默认
最小值  
最大值  

文档fsync

变更历史

  • PostgreSQL 文档: fsync

分类

危险操作GUC 配置项WAL

另请参阅

wal_sync_method, data_sync_retry, synchronous_commit, full_page_writes

反馈

请在此处 提交关于“fsync”的任何评论、建议或更正