ALTER SYSTEM

Name

ALTER SYSTEM -- 更改一个服务器配置参数

Synopsis

ALTER SYSTEM SET configuration_parameter { TO | = } { value | 'value' | DEFAULT }

ALTER SYSTEM RESET configuration_parameter
ALTER SYSTEM RESET ALL

描述

ALTER SYSTEM被用来在整个数据库集簇范围内更改 服务器配置参数。它比传统的手动编辑postgresql.conf 文件的方法更方便。ALTER SYSTEM会把给出的参数 设置写入到postgresql.auto.conf文件中,该文件会随着 postgresql.conf一起被读入。把一个参数设置为 DEFAULT或者使用RESET变体可以 把该配置项从postgresql.auto.conf文件中移除。使用 RESET ALL可以移除所有这类配置项。

ALTER SYSTEM设置的值将在下一次重载服务器 配置(SIGHUPpg_ctl reload)后生效,那些 只能在服务器启动时更改的参数则会在下一次服务器重启后生效。

只有超级用户能够使用ALTER SYSTEM。还有,由于 这个命令直接作用于文件系统并且不能被回滚,不允许在一个事务块或者函数中使用它。

参数

configuration_parameter

一个可设置配置参数的名称。可用的参数可见Chapter 18

value

该参数的新值。值可以被指定为字符串常量、标识符、数字或者以上这些构成的 逗号分隔的列表,值的具体形式取决于特定的参数。写上 DEFAULT可以用来把该参数及其值从 postgresql.auto.conf中移除。

注解

不能用这个命令来设置data_directory以及 postgresql.conf中不被允许的参数(例如 preset options)。

其他设置参数的方法见Section 18.1

示例

设置wal_level

ALTER SYSTEM SET wal_level = hot_standby;

撤销以上的设置,恢复postgresql.conf中有效的设置:

ALTER SYSTEM RESET wal_level;

兼容性

ALTER SYSTEM语句是一种 PostgreSQL扩展。

另见

SET, SHOW