file_copy_method

指定用于复制文件的 GUC 参数

file_copy_method 是一个 系统参数,用于指定执行 CREATE DATABASEALTER DATABASE ... SET TABLESPACE ... 时使用的文件复制方法。

file_copy_methodPostgreSQL 18 中添加。

按 PostgreSQL 版本详细信息

file_copy_method (PostgreSQL 19)

设置 copy
单位  
类别 资源使用 / 磁盘
简短描述 选择文件复制方法。
扩展描述  
上下文 user
变量类型 enum
来源 默认
最小值  
最大值  
枚举值 copy, clone
启动值 copy
重置值 copy
源文件  
源行  
需要重启 false

文档: file_copy_method

file_copy_method (PostgreSQL 18)

设置 copy
单位  
类别 资源使用 / 磁盘
简短描述 选择文件复制方法。
扩展描述  
上下文 user
变量类型 enum
来源 默认
最小值  
最大值  
枚举值 copy, clone
启动值 copy
重置值 copy
源文件  
源行  
需要重启 false

文档: file_copy_method

默认值

file_copy_method 的默认值为:copy

用法

file_copy_method 可取以下值之一:

  • copy
  • clone

如果选择了 clone 并且操作系统支持克隆操作,那么在执行以下命令进行文件操作时,将使用 copy_file_range() (Linux, FreeBSD) 或 copyfile (macOS) 系统调用:

变更历史

示例

file_copy_method 的基本用法示例

postgres=# SET file_copy_method TO 'clone';
SET

postgres=# CREATE DATABASE foo STRATEGY=FILE_COPY;
CREATE DATABASE

尝试设置无效值

postgres=# SET file_copy_method TO 'rsync';
ERROR:  invalid value for parameter "file_copy_method": "rsync"
HINT:  Available values: copy, clone.

分类

GUC配置项

另请参阅

CREATE DATABASE, ALTER DATABASE

反馈

提交关于 "file_copy_method" 的任何评论、建议或更正请 在此处