Postgresql - Functions and Operators 函数和运算 - System Administration

系统管理函数。

包括配置设置函数,服务信号函数,备份控制函数,恢复控制函数,快照同步函数,流复制函数,数据库对象管理函数,索引维护函数,通用文件访问函数,advisory锁定。

Name

Return Type

Description

current_setting(setting_name [, missing_ok ])

text

查看当前设置

set_config(setting_name, new_value, is_local)

text

设置参数

Name

Return Type

Description

pg_cancel_backend(pidint)

boolean

Cancel后端查询

pg_reload_conf()

boolean

重新加载配置文件。生效不用重启就可以生效的参数

pg_rotate_logfile()

boolean

转换log文件

pg_terminate_backend(pidint)

boolean

终止后端连接。

Name

Return Type

Description

pg_create_restore_point(name text)

pg_lsn

创建恢复

pg_current_wal_flush_lsn()

pg_lsn

获取当前write-ahead log flush 位置

pg_current_wal_insert_lsn()

pg_lsn

获取当前 write-ahead log insert 位置

pg_current_wal_lsn()

pg_lsn

获取当前 write-ahead log write 位置

pg_start_backup(label text [, fastboolean [, exclusive boolean ]])

pg_lsn

准备开始在线备份。

pg_stop_backup()

pg_lsn

停止在线备份

pg_stop_backup(exclusive boolean [,wait_for_archive boolean ])

setof record

完成独占或非排他性在线备份

pg_is_in_backup()

bool

是否为备份状态

pg_backup_start_time()

timestamp with time zone

获取备份开始时间

pg_switch_wal()

pg_lsn

强制切换到新的write-ahead log file

pg_walfile_name(lsn pg_lsn)

text

转换 write-ahead log 文件名

pg_walfile_name_offset(lsn pg_lsn)

text, integer

将写入前日志位置转换为文件内的文件名和十进制字节偏移量

pg_wal_lsn_diff(lsn pg_lsn, lsn pg_lsn)

numeric

计算两个lsn位置的差距

Name

Return Type

Description

pg_is_in_recovery()

bool

数据库是否在恢复(备库)

pg_last_wal_receive_lsn()

pg_lsn

获取最后一个写入前日志位置,并通过流复制同步到磁盘。当流复制正在进行时,这将单调增加。如果恢复完成,这将保持在接收到的最后一个WAL记录的值,并在恢复期间同步到磁盘。如果禁用流复制,或者如果尚未启动,则函数返回NULL。

pg_last_wal_replay_lsn()

pg_lsn

在恢复过程中重写上次写入的日志位置。如果恢复仍在进行中,这将单调增加。如果恢复完成,则该值在恢复期间应用的最后一个WAL记录的值将保持静态。当服务器正常启动而不恢复时,函数返回NULL。

pg_last_xact_replay_timestamp()

timestamp with time zone

获取恢复过程中重放的最后一次事务的时间戳。这是在主事务上生成该事务的提交或中止WAL记录的时间。如果在恢复过程中没有重放事务,则此函数返回null。否则,如果恢复仍在进行中,这将单调增加。如果恢复完成,则该值将在该恢复期间应用的最后一个事务的值保持静态。当服务器正常启动而不恢复时,函数返回NULL。

Name

Return Type

Description

pg_is_wal_replay_paused()

bool

如果恢复暂停,则为真。

pg_wal_replay_pause()

void

暂停恢复

pg_wal_replay_resume()

void

如果暂停,则恢复启动

Name

Return Type

Description

pg_export_snapshot()

text

保存当前快照并返回标识

Function

Return Type

Description

pg_create_physical_replication_slot(slot_namename [, immediately_reserve boolean,temporary boolean])

(slot_namename, lsnpg_lsn)

创建一个新的物理复制槽命名slot_name。可选的第二个参数,当TRUE时,指定该复制时隙的LSN立即被保留,否则LSN在流连接复制客户端的第一个连接上被保留。从物理slot进行流式传输只能用流式复制协议来实现。可选的第三参数临时设置为true时,指定槽不应永久存储到磁盘,而仅用于当前会话。临时槽也被释放在任何错误。

pg_drop_replication_slot(slot_name name)

void

Drop的物理或逻辑复制槽命名slot_name。同drop_replication_slot复制协议的命令。对于逻辑槽,当连接到同一个数据库时必须调用这个槽。

pg_create_logical_replication_slot(slot_namename, plugin name [, temporary boolean])

(slot_namename, lsnpg_lsn)

创建一个新的逻辑(解码)复制槽命名slot_name使用输出插件插件。可选的第三参数临时设置为true时,指定时隙不应永久存储到磁盘,而仅用于当前会话。临时槽也被释放在任何错误。对该函数的调用具有与复制协议命令CREATE_REPLICATION_SLOT ... LOGICAL.

pg_logical_slot_get_changes(slot_name name,upto_lsn pg_lsn, upto_nchanges int, VARIADICoptions text[])

(lsnpg_lsn, xid xid, data text)

返回slot_name名称的更改,从上次更改后的点开始。如果upto_lsn和upto_nchanges是空,则逻辑解码将持续到WAL结束。如果upto_lsn是非空的,逻辑解码将只包括在指定LSN之前提交的那些事务。如果upto_nchanges不为空,则当解码产生的行数超过指定值时,解码将停止。但是请注意,返回的实际行数可能更大,因为只有在添加解码新的事务提交时生成的行时才检查该限制。

pg_logical_slot_peek_changes(slot_name name,upto_lsn pg_lsn, upto_nchanges int, VARIADICoptions text[])

(lsnpg_lsn, xid xid, data text)

类似于pg_logical_slot_get_changes() 函数, 只是没有更改,也就是说,它们将在将来的调用中再次返回。

pg_logical_slot_get_binary_changes(slot_namename, upto_lsn pg_lsn, upto_nchanges int, VARIADIC options text[])

(lsnpg_lsn, xid xid, databytea)

类似于pg_logical_slot_get_changes() 函数, 只是将更改作为bytea返回.

pg_logical_slot_peek_binary_changes(slot_namename, upto_lsn pg_lsn, upto_nchanges int, VARIADIC options text[])

(lsnpg_lsn, xid xid, databytea)

类似于pg_logical_slot_get_changes() 函数, 只是将更改作为bytea返回,并且不使用更改;也就是说,它们将在将来的调用中再次返回。

pg_replication_origin_create(node_name text)

oid

用给定的外部名称创建复制原点,并返回分配给它的内部ID。

pg_replication_origin_drop(node_name text)

void

删除先前创建的复制原点,包括任何相关的回放进度。

pg_replication_origin_oid(node_name text)

oid

通过名称查找复制原点并返回内部ID。如果没有找到相应的复制原点,则会引发错误。

pg_replication_origin_session_setup(node_nametext)

void

从给定的起点标记当前会话作为重做,允许重做进程被跟踪。使用pg_replication_origin_session_reset命令复位,只能在没有以前的原点配置的情况下使用。

pg_replication_origin_session_reset()

void

取消pg_replication_origin_session_setup().

pg_replication_origin_session_is_setup()

bool

在当前会话中是否已配置复制原点?

pg_replication_origin_session_progress(flushbool)

pg_lsn

返回在当前会话中配置的复制原点的重放位置。参数确定是否将确保相应的本地事务已被刷新到磁盘。

pg_replication_origin_xact_setup(origin_lsnpg_lsn, origin_timestamp timestamptz)

void

标记当前事务是重放在给定的LSN和时间戳下提交的事务。只能在复制原点之前使用pg_replication_origin_session_setup 配置时调用。

pg_replication_origin_xact_reset()

void

取消 pg_replication_origin_xact_setup().

pg_replication_origin_advance(node_name text,lsn pg_lsn)

void

将给定节点的复制进度设置为给定位置。这主要用于在配置更改和类似之后设置初始位置或新位置。请注意,不小心使用此函数会导致不一致的复制数据。

pg_replication_origin_progress(node_nametext, flush bool)

pg_lsn

返回给定复制原点的重放位置。参数确定是否将确保相应的本地事务已被刷新到磁盘。

pg_logical_emit_message(transactional bool,prefix text, content text)

pg_lsn

发出文本逻辑解码消息。这可以用来通过WAL将通用消息传递给逻辑解码插件。参数事务事务指定消息是否应该是当前事务的一部分,或者是否应该在逻辑解码读取记录时立即写入并解码。“前缀”是逻辑解码插件使用的文本前缀,以方便识别它们的有趣消息。“内容”是消息的文本。

pg_logical_emit_message(transactional bool,prefix text, content bytea)

pg_lsn

发送二进制逻辑解码消息。这可以用来通过WAL将通用消息传递给逻辑解码插件。参数事务事务指定消息是否应该是当前事务的一部分,或者是否应该在逻辑解码读取记录时立即写入并解码。“前缀”是逻辑解码插件使用的文本前缀,以方便识别它们的有趣消息。第二内容是消息的二进制内容。

Name

Return Type

Description

pg_column_size(any)

int

用于存储特定值(可能被压缩)的字节数

pg_database_size(oid)

bigint

具有指定OID的数据库使用的磁盘空间

pg_database_size(name)

bigint

具有指定名称的数据库所使用的磁盘空间

pg_indexes_size(regclass)

bigint

连接到指定表的索引使用的总磁盘空间

pg_relation_size(relation regclass,fork text)

bigint

指定的表或索引(“main”、‘fsm’、‘vm’或‘init’)所用的磁盘空间

pg_relation_size(relation regclass)

bigint

速记 for pg_relation_size(..., 'main')

pg_size_bytes(text)

bigint

将具有大小单位的人类可读格式转换为字节

pg_size_pretty(bigint)

text

将以64位整数表示的字节大小转换为具有大小单位的可读格式

pg_size_pretty(numeric)

text

将以字节表示的字节大小转换为具有大小单位的可读格式

pg_table_size(regclass)

bigint

指定表使用的磁盘空间,不包括索引(但包括TOAST、自由空间映射和可视图)

pg_tablespace_size(oid)

bigint

表空间使用指定空间的磁盘空间

pg_tablespace_size(name)

bigint

具有指定名称的表空间使用的磁盘空间

pg_total_relation_size(regclass)

bigint

指定表所使用的总磁盘空间,包括所有索引和TOAST数据

Name

Return Type

Description

pg_relation_filenode(relation regclass)

oid

指定表的文件号

pg_relation_filepath(relation regclass)

text

指定表的文件路径名

pg_filenode_relation(tablespace oid, filenode oid)

regclass

查找与给定表空间和文件名关联的关系

Name

Return Type

Description

pg_collation_actual_version(oid)

text

从操作系统返回校对的实际版本

pg_import_system_collations(schema regnamespace)

integer

导入操作系统排序规则

Name

Return Type

Description

brin_summarize_new_values(index regclass)

integer

查看brin索引中未被索引汇总的基表中的页范围。

brin_summarize_range(index regclass, blockNumber bigint)

integer

summarize the page range covering the given block, if not already summarized

brin_desummarize_range(index regclass, blockNumberbigint)

integer

de-summarize the page range covering the given block, if summarized

gin_clean_pending_list(index regclass)

bigint

move GIN pending list entries into main index structure

Name

Return Type

Description

pg_ls_dir(dirname text [, missing_ok boolean,include_dot_dirs boolean])

setof text

列出data目录中的文件夹中的内容

pg_ls_logdir()

setof record

列出log文件时间,大小,最后修改时间

pg_ls_waldir()

setof record

列出所有WAL文件,大小,时间

pg_read_file(filename text [, offset bigint,length bigint [, missing_ok boolean] ])

text

查询文件内容(text)

pg_read_binary_file(filename text [, offsetbigint, length bigint [, missing_ok boolean] ])

bytea

查询文件内容(二进制)

pg_stat_file(filename text[, missing_okboolean])

record

查询文件信息

Name

Return Type

Description

pg_advisory_lock(key bigint)

void

获得排他会话级咨询锁

pg_advisory_lock(key1 int, key2 int)

void

获得排他会话级咨询锁

pg_advisory_lock_shared(key bigint)

void

获得共享会话级咨询锁

pg_advisory_lock_shared(key1 int, key2 int)

void

获得共享会话级咨询锁

pg_advisory_unlock(key bigint)

boolean

释放排他会话级咨询锁

pg_advisory_unlock(key1 int, key2 int)

boolean

释放排他会话级咨询锁

pg_advisory_unlock_all()

void

释放当前会话所持有的所有会话级咨询锁

pg_advisory_unlock_shared(key bigint)

boolean

释放共享会话级咨询锁

pg_advisory_unlock_shared(key1 int, key2 int)

boolean

释放共享会话级咨询锁

pg_advisory_xact_lock(key bigint)

void

获得排他事务级别咨询锁

pg_advisory_xact_lock(key1 int, key2 int)

void

获得排他事务级别咨询锁

pg_advisory_xact_lock_shared(key bigint)

void

获得共享事务级别咨询锁

pg_advisory_xact_lock_shared(key1 int, key2 int)

void

获得共享事务级别咨询锁

pg_try_advisory_lock(key bigint)

boolean

获得排他会话级别的咨询锁

pg_try_advisory_lock(key1 int, key2 int)

boolean

获得排他会话级别的咨询锁

pg_try_advisory_lock_shared(key bigint)

boolean

获得共享会话级别的咨询锁

pg_try_advisory_lock_shared(key1 int, key2 int)

boolean

获得共享会话级别的咨询锁

pg_try_advisory_xact_lock(key bigint)

boolean

获得排他事务级别咨询锁(如果可用)

pg_try_advisory_xact_lock(key1 int, key2 int)

boolean

获得排他事务级别咨询锁(如果可用)

pg_try_advisory_xact_lock_shared(key bigint)

boolean

获得可用的共享事务级别咨询锁

pg_try_advisory_xact_lock_shared(key1 int, key2 int)

boolean

获得可用的共享事务级别咨询锁

猜你喜欢

转载自blog.csdn.net/chuckchen1222/article/details/81512733