华为云用户手册

  • 示例 --创建集群节点,在所有CN上执行。 gaussdb=# CREATE NODE datanode1 WITH( TYPE = datanode, PREFERRED = false ); gaussdb=# CREATE NODE datanode2 WITH( TYPE = datanode, PREFERRED = false ); --查询集群DN初始状态。 gaussdb=# SELECT node_name, nodeis_preferred FROM pgxc_node WHERE node_type = 'D' ORDER BY 1; node_name | nodeis_preferred -----------+------------------ datanode1 | f datanode2 | f (2 rows) --将datanode1设为preferred DN。 gaussdb=# ALTER NODE datanode1 WITH(preferred = true); --查询集群DN变更后状态。 gaussdb=# SELECT node_name, nodeis_preferred FROM pgxc_node WHERE node_type = 'D' ORDER BY 1; node_name | nodeis_preferred -----------+------------------ datanode1 | t datanode2 | f (2 rows) --删除集群节点,连接一个CN即可。 gaussdb=# DROP NODE datanode1; gaussdb=# DROP NODE datanode2;
  • 参数说明 nodename 节点名称。 取值范围:字符串,要符合标识符命名规范。 TYPE = nodetype 指定节点的类型。 取值范围: 'coordinator' 'datanode' HOST = hostname 指定节点对应的主机名称或者IP地址。 PORT = portnum 指定节点绑定的主机端口号。 HOST1 = hostname 指定节点对应的备机名称或者IP地址。 PORT1 = portnum 指定节点绑定的备机端口号。 HOSTPRIMARY 声明主机名称或者IP地址是否为主。 取值范围: true false(默认值) PRIMARY = boolean 声明该节点是否为主节点。主节点允许做读写操作,否则只允许读操作。 取值范围: true false(默认值) PREFERRED = boolean 声明该节点是否为读操作的首选节点。 取值范围: true false(默认值) SCTP_PORT = portnum 主机TCP代理通信库使用的数据传输通道侦听端口,使用TCP协议侦听连接。
  • 语法格式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 CREATE NODE nodename WITH ( [ TYPE = nodetype,] [ HOST = hostname,] [ PORT = portnum,] [ HOST1 = 'hostname',] [ PORT1 = portnum,] [ HOSTPRIMARY [ = boolean ],] [ PRIMARY [ = boolean ],] [ PREFERRED [ = boolean ],] [ SCTP_PORT = portnum,] [ CONTROL_PORT = portnum,] [ SCTP_PORT1 = portnum,] [ CONTROL_PORT1 = portnum, ] [ NODEIS_CENTRAL [= boolean], ] [ NODEIS_ACTIVE [= boolean] ] ); PORT选项指定的端口号为节点间内部通信绑定的端口号,不同于外部客户端连接节点的端口号,可通过pgxc_node表查询。
  • SUMMARY_STATEMENT_COUNT 显示数据库各节点执行的五类语句(SELECT、INSERT、UPDATE、DELETE、MERGE INTO)和(DDL、DML、DCL)的汇总统计信息,如表1所示。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息。 表1 SUMMARY_STATEMENT_COUNT字段 名称 类型 描述 user_name text 用户名。 select_count numeric SELECT语句统计结果。 update_count numeric UPDATE语句统计结果。 insert_count numeric INSERT语句统计结果。 delete_count numeric DELETE语句统计结果。 mergeinto_count numeric MERGE INTO语句统计结果。 ddl_count numeric DDL语句的数量。该统计结果包含用户执行的SQL语句和数据库后台线程执行的SQL语句。 dml_count numeric DML语句的数量。该统计结果包含用户执行的SQL语句和数据库后台线程执行的SQL语句。 dcl_count numeric DCL语句的数量。该统计结果包含用户执行的SQL语句和数据库后台线程执行的SQL语句。 total_select_elapse numeric 总SELECT的时间花费(单位:微秒)。 avg_select_elapse bigint 平均SELECT的时间花费(单位:微秒)。 max_select_elapse bigint 最大SELECT的时间花费(单位:微秒)。 min_select_elapse bigint 最小SELECT的时间花费(单位:微秒)。 total_update_elapse numeric 总UPDATE的时间花费(单位:微秒)。 avg_update_elapse bigint 平均UPDATE的时间花费(单位:微秒)。 max_update_elapse bigint 最大UPDATE的时间花费(单位:微秒)。 min_update_elapse bigint 最小UPDATE的时间花费(单位:微秒)。 total_insert_elapse numeric 总INSERT的时间花费(单位:微秒)。 avg_insert_elapse bigint 平均INSERT的时间花费(单位:微秒)。 max_insert_elapse bigint 最大INSERT的时间花费(单位:微秒)。 min_insert_elapse bigint 最小INSERT的时间花费(单位:微秒)。 total_delete_elapse numeric 总DELETE的时间花费(单位:微秒)。 avg_delete_elapse bigint 平均DELETE的时间花费(单位:微秒)。 max_delete_elapse bigint 最大DELETE的时间花费(单位:微秒)。 min_delete_elapse bigint 最小DELETE的时间花费(单位:微秒)。 dbid oid 统计的五类语句(SELECT、INSERT、UPDATE、DELETE、MERGE INTO)所属的数据库id。 user_dml_count bigint 用户执行的DML语句的数量。 bg_dml_count bigint 数据库后台线程执行的DML语句的数量。 父主题: Query
  • DBE_PLDEBUGGER.attach server端执行存储过程,停在第一条语句前,等待debug端关联。debug端调用attach,传入nodename和port,关联到该存储过程上,如表1所示。 如果调试过程中报错,attach会自动失效;如果调试过程中attach到其他存储过程上,当前attach的调试也会失效;重复attach会导致当前存储过程断联。 表1 attach 入参和返回值列表 名称 类型 描述 nodename IN text 节点名称。 port IN integer 连接端口号。 funcoid OUT oid 函数id。 funcname OUT text 函数名。 lineno OUT integer 当前调试运行的下一行行号。 query OUT text 当前调试的下一行函数源码。 父主题: DBE_PLDEBUGGER Schema
  • 恢复控制函数 恢复信息函数提供了当前备机状态的信息。这些函数可能在恢复期间或正常运行中执行。 pg_is_in_recovery() 描述:如果恢复仍然在进行中则返回true。 返回值类型:Boolean pg_last_xlog_receive_location() 描述:获取最后接收事务日志的位置并通过流复制将其同步到磁盘。当流复制正在进行时,事务日志将持续递增。如果恢复已完成,则最后一次获取的WAL记录会被静态保持并在恢复过程中同步到磁盘。如果流复制不可用,或还没有开始,这个函数返回NULL。 返回值类型:text pg_last_xlog_replay_location() 描述:获取最后一个事务日志在恢复时重放的位置。如果恢复仍在进行,事务日志将持续递增。如果已经完成恢复,则将保持在恢复期间最后接收WAL记录的值。如果未进行恢复但服务器正常启动时,则这个函数返回NULL。 返回值类型:text pg_last_xact_replay_timestamp() 描述:获取最后一个事务在恢复时重放的时间戳。这是为在主节点上生成事务提交或终止WAL记录的时间。如果在恢复时没有事务重放,则这个函数返回NULL。如果恢复仍在进行,则事务日志将持续递增。如果恢复已经完成,则将保持在恢复期间最后接收WAL记录的值。如果服务器无需恢复就已正常启动,则这个函数返回NULL。 返回值类型:timestamp with time zone 恢复控制函数控制恢复的线程。这些函数可能只在恢复时被执行。 pg_is_xlog_replay_paused() 描述:如果恢复暂停则返回true。 返回值类型:Boolean pg_xlog_replay_pause() 描述:立即暂停恢复。 返回值类型:void pg_xlog_replay_resume() 描述:如果恢复处于暂停状态,则重新启动。 返回值类型:void gs_get_active_archiving_standby() 描述:查询同一分片内归档备机的信息。返回备机名,备机归档位置和已归档日志个数。 返回值类型:text,int gs_pitr_get_warning_for_xlog_force_recycle() 描述:查询开启归档后是否因归档槽不推进日志大量堆积导致日志被回收。 返回值类型:Boolean gs_pitr_clean_history_global_barriers(stop_barrier_timestamp cstring) 描述:清理指定时间之前所有barrier记录。返回时间最远的barrier记录。入参为cstring类型,linux时间戳。需要管理员角色或运维管理员角色执行。 返回值类型:text gs_pitr_archive_slot_force_advance(stop_barrier_timestamp cstring) 描述:强制推进归档槽,并清理不需要的barrier记录。返回新的归档槽位置。入参为cstring类型,linux时间戳。需要管理员角色或运维管理员角色执行。 返回值类型:text gs_recent_barrier_buffer_info(start_time text, end_time text) 描述:根据用户输入的时间范围,进行相应的barrier信息查询,获取time_stamp、 CS N、LSN和standard_time。 返回值类型:records 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。输入参数start_time和end_time采用“年-月-日 时间”格式,其中时间采用clock格式。查询最大时间跨度为1天,超出跨度约束,根据查询起始时间将结束时间自动转换为极限边界进行查询。例如: gaussdb=# SELECT * FROM gs_recent_barrier_buffer_info('2024-01-15 23:27:50', '2024-01-15 23:28:00'); timestamp | lsn | csn | standard_time ------------+-------------------+----------+--------------------- 1705332470 | 00000000/15FFBBA0 | 41020421 | 2024-01-15 23:27:50 1705332471 | 00000000/15FFBDF0 | 41020422 | 2024-01-15 23:27:51 1705332472 | 00000000/15FFC058 | 41020423 | 2024-01-15 23:27:52 1705332472 | 00000000/15FFC0F8 | 41020424 | 2024-01-15 23:27:52 1705332473 | 00000000/15FFC348 | 41020425 | 2024-01-15 23:27:53 1705332474 | 00000000/15FFC598 | 41020426 | 2024-01-15 23:27:54 1705332475 | 00000000/15FFC638 | 41020427 | 2024-01-15 23:27:55 1705332476 | 00000000/15FFC888 | 41020428 | 2024-01-15 23:27:56 1705332476 | 00000000/15FFDC80 | 41020433 | 2024-01-15 23:27:56 1705332477 | 00000000/15FFDD20 | 41020434 | 2024-01-15 23:27:57 1705332478 | 00000000/15FFDF70 | 41020435 | 2024-01-15 23:27:58 1705332479 | 00000000/15FFE1D8 | 41020436 | 2024-01-15 23:27:59 1705332480 | 00000000/15FFE278 | 41020437 | 2024-01-15 23:28:00 1705332480 | 00000000/15FFE4C8 | 41020438 | 2024-01-15 23:28:00 (14 rows) gs_show_obs_media_files(slot_name cstring, src cstring, offset int32, limit int32) 描述:根据用户输入的归档槽(slot_name)和OBS目录地址(src),查询OBS文件列表。 返回值类型:records 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。Offset为查询结果偏移,limit为输出最大行数,查询src下所有文件。例如: gaussdb=# SELECT gs_show_obs_archive_files('ssh','cn_5001/pg_xlog',1, 5); gs_show_obs_archive_files ------------------------------------------------------------------------------------------------- (wstdist_ssh/archive/cn_5001/pg_xlog/000000010000000000000010_01_01_00000000_00000000_00000003) (wstdist_ssh/archive/cn_5001/pg_xlog/000000010000000000000010_02_01_00000000_00000000_00000003) (wstdist_ssh/archive/cn_5001/pg_xlog/000000010000000000000010_03_01_00000000_00000000_00000003) (wstdist_ssh/archive/cn_5001/pg_xlog/000000010000000000000011_00_01_00000000_00000000_00000003) (wstdist_ssh/archive/cn_5001/pg_xlog/000000010000000000000011_01_01_00000000_00000000_00000003) (5 rows) gs_upload_obs_media_file(slot_name cstring, src cstring, dest cstring, is_forced bool) 描述:根据用户输入的归档槽(slot_name)、上传文件原地址(src)、OBS地址(dest)和是否强制上传(is_forced),上传OBS文件。 返回值类型:void 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。原文件目录仅允许为$GAUSS LOG 目录。例如: gaussdb=# SELECT * FROM gs_upload_obs_media_file('ssh', '/data/gauss/log/stwang/test/000000010000000000000019_02_01_00000000_00000000_00000003', 'cn_5001/pg_xlog/000000010000000000000019_02_01_00000000_00000000_00000003', true); gs_upload_obs_media_file ---------------------------- (1 row) gs_download_obs_media_file(slot_name cstring, src cstring, dest cstring) 描述:根据用户输入的归档槽(slot_name)、下载原地址(src)和本地目标地址(dest),下载OBS文件。 返回值类型:void 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。下载目录仅允许为$GAUSSLOG目录。例如: gaussdb=# SELECT * FROM gs_download_obs_media_file('ssh','cn_5001/pg_xlog/000000010000000000000019_02_01_00000000_00000000_00000003','/data/gauss/log/stwang/test'); gs_download_obs_media_file ------------------------------ (1 row) 当恢复暂停时,没有发生数据库更改。如果是在热备里,所有新的查询将看到一致的数据库快照,并且不会有进一步的查询冲突产生,直到恢复继续。 如果不能使用流复制,则暂停状态将无限的延续。当流复制正在进行时,将连续接收WAL记录,最终将填满可用磁盘空间,这个进度取决于暂停的持续时间,WAL生成的速度和可用的磁盘空间。
  • 备份控制函数 备份控制函数可帮助进行在线备份。 pg_create_restore_point(name text) 描述:为执行恢复创建一个命名点(需要管理员角色)。 返回值类型:text 备注:pg_create_restore_point创建了一个可以用作恢复目的、有命名的事务日志记录,并返回相应的事务日志位置。在恢复过程中,recovery_target_name可以通过这个名称定位对应的日志恢复点,并从此处开始执行恢复操作。避免使用相同的名称创建多个恢复点,因为恢复操作将在第一个匹配(恢复目标)的名称上停止。 pg_current_xlog_location() 描述:获取当前事务日志的写入位置。 返回值类型:text 备注:pg_current_xlog_location使用与前面那些函数相同的格式显示当前事务日志的写入位置。如果是只读操作,不需要系统管理员权限。 pg_current_xlog_insert_location() 描述:获取当前事务日志的插入位置。 返回值类型:text 备注:pg_current_xlog_insert_location显示当前事务日志的插入位置。插入点是事务日志在某个瞬间的“逻辑终点”,而实际的写入位置则是从服务器内部缓冲区写出时的终点。写入位置是可以从服务器外部检测到的终点,如果要归档部分完成事务日志文件,则该操作即可实现。插入点主要用于服务器调试目的。如果是只读操作,不需要系统管理员权限。 gs_current_xlog_insert_end_location() 描述:获取当前事务日志的插入位置。 返回值类型:text 备注:gs_current_xlog_insert_end_location显示当前事务日志的实际插入位置。 pg_start_backup(label text [, fast boolean ]) 描述:开始执行在线备份(需要管理员角色、复制的角色或运维管理员角色打开operation_mode)。以gs_roach开头的label串为保留命名串,只能由内部备份工具GaussRoach使用。 返回值类型:text 备注:pg_start_backup接受一个用户定义的备份标签(通常这是备份转储文件存放地点的名称)。这个函数向数据库集群的数据目录写入一个备份标签文件,然后以文本方式返回备份的事务日志起始位置。该函数务必配合pg_stop_backup()使用,单独调用该函数会导致backup_label残留,后面再进行WAL回放时会根据backup_label读取checkpoint,如果该checkpoint对应的WAL文件已经被回收,则会导致数据库无法正常启动。 1 2 3 4 5 gaussdb=# SELECT pg_start_backup('label_goes_here',true); pg_start_backup ----------------- 0/3000020 (1 row) pg_stop_backup() 描述:完成执行在线备份。需要管理员角色、复制的角色执行或运维管理员角色打开operation_mode。 返回值类型:text 备注:pg_stop_backup删除pg_start_backup创建的标签文件,并且在事务日志归档区里创建一个备份历史文件。这个历史文件包含给予pg_start_backup的标签、备份的事务日志起始与终止位置、备份的起始和终止时间。返回值是备份的事务日志终止位置。计算出中止位置后,当前事务日志的插入点将自动前进到下一个事务日志文件,结束的事务日志文件可以被立即归档从而完成备份。 pg_switch_xlog() 描述:切换到一个新的事务日志文件。需要管理员角色或运维管理员角色打开operation_mode。 返回值类型:text 备注:pg_switch_xlog移动到下一个事务日志文件,以允许将当前日志文件归档(假定使用连续归档)。返回值是刚完成的事务日志文件的事务日志结束位置+1。如果从最后一次事务日志切换以来没有活动的事务日志,则pg_switch_xlog不进行移动操作,直接返回当前事务日志文件的开始位置。 pg_xlogfile_name(location text) 描述:将事务日志的位置字符串转换为文件名。 返回值类型:text 备注:pg_xlogfile_name仅抽取事务日志文件名称。如果给定的事务日志位置恰好位于事务日志文件的交界上,这两个函数都返回前一个事务日志文件的名称。这对于管理事务日志归档来说是非常有利的,因为前一个文件是当前最后一个需要归档的文件。 pg_xlogfile_name_offset(location text) 描述:将事务日志的位置字符串转换为文件名并返回在文件中的字节偏移量。 返回值类型:text,integer 备注:可以使用pg_xlogfile_name_offset从前述函数的返回结果中抽取相应的事务日志文件名称和字节偏移量。例如: 1 2 3 4 5 6 7 gaussdb=# SELECT * FROM pg_xlogfile_name_offset(pg_stop_backup()); NOTICE: pg_stop_backup cleanup done, waiting for required WAL segments to be archived NOTICE: pg_stop_backup complete, all required WAL segments have been archived file_name | file_offset --------------------------+------------- 000000010000000000000003 | 272 (1 row) pg_xlog_location_diff(location text, location text) 描述:计算两个事务日志位置之间在字节上的区别。 返回值类型:numeric pg_cbm_start_tracked_location() 描述:用于查询cbm解析的起始lsn位置。 返回值类型:text pg_cbm_tracked_location() 描述:用于查询cbm解析到的lsn位置。 返回值类型:text pg_cbm_get_merged_file(startLSNArg text, endLSNArg text) 描述:用于将指定lsn范围之内的cbm文件合并成一个cbm文件,并返回合并完的cbm文件名。 返回值类型:text 备注:必须是系统管理员或运维管理员才能获取cbm合并文件。 pg_cbm_get_changed_block(startLSNArg text, endLSNArg text) 描述:用于将指定lsn范围之内的cbm文件合并成一个表,并返回表的各行记录。 返回值类型:records 备注:pg_cbm_get_changed_block返回的表字段包含:合并起始的lsn、合并截止的lsn、表空间oid、库oid、表的relfilenode、表的fork number、表是否为系统表、表是否被删除、表是否被创建、表是否被截断、表被截断后的页面数、有多少页被修改以及被修改的页号的列表。 pg_cbm_recycle_file(targetLSNArg text) 描述:删除不再使用的cbm文件,并返回删除后的第一条lsn。 返回值类型:text pg_cbm_force_track(targetLSNArg text,timeOut int) 描述:强制执行一次cbm追踪到指定的xlog位置,并返回实际追踪结束点的xlog位置。 返回值类型:text pg_enable_delay_ddl_recycle() 描述:开启延迟DDL功能,并返回开启点的xlog位置。需要管理员角色或运维管理员角色打开operation_mode。 返回值类型:text pg_disable_delay_ddl_recycle(barrierLSNArg text, isForce bool) 描述:关闭延迟DDL功能,并返回本次延迟DDL生效的xlog范围。需要管理员角色或运维管理员角色打开operation_mode。 返回值类型:records pg_enable_delay_xlog_recycle() 描述:开启延迟xlog回收功能,cn修复使用。需要管理员角色或运维管理员角色打开operation_mode。 返回值类型:void pg_disable_delay_xlog_recycle() 描述:关闭延迟xlog回收功能,cn修复使用。需要管理员角色或运维管理员角色打开operation_mode。 返回值类型:void pg_cbm_rotate_file(rotate_lsn text) 描述:等待cbm解析到rotate_lsn之后,强制切换文件,在build期间调用。 返回值类型:void gs_roach_stop_backup(backupid text) 描述:停止一个内部备份工具GaussRoach开启的备份。与pg_stop_backup系统函数类似,但更轻量。 返回值类型:text,内容为当前日志的插入位置。 gs_roach_enable_delay_ddl_recycle(backupid name) 描述:开启延迟DDL功能,并返回开启点的日志位置。与pg_enable_delay_ddl_recycle系统函数类似,但更轻量。并且,通过传入不同的backupid,可以支持并发打开延迟DDL。 返回值类型:text,内容为返回开启点的日志位置。 gs_roach_disable_delay_ddl_recycle(backupid text) 描述:关闭延迟DDL功能,并返回本次延迟DDL生效的日志范围。与pg_enable_delay_ddl_recycle系统函数类似,但更轻量。并且,通过传入不同的backupid,可以支持并发关闭延迟DDL功能。 返回值类型:records,内容为本次延迟DDL生效的日志范围。 gs_roach_switch_xlog(request_ckpt bool) 描述:切换当前使用的日志段文件,并且,如果request_ckpt 为true,则触发一个全量检查点。 返回值类型:text,内容为切段日志的位置。 gs_block_dw_io(timeout int, identifier text) 描述:阻塞双写页面刷盘。 参数说明: timeout 阻塞时长。 取值范围:[0, 3600](秒),0为阻塞时长为0。 identifier 此次操作的标识。 取值范围:字符串,不支持除大小写字母、数字以及下划线(_)以外的字符。 返回值类型:Boolean 备注:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限,运维管理员角色须打开operation_mode。 gs_is_dw_io_blocked() 描述:查看当前双写页面刷盘是否被阻塞,如果处于阻塞中则返回true。 返回值类型:Boolean 备注:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限,运维管理员角色须打开operation_mode。 gs_pitr_advance_last_updated_barrier() 描述:在PITR模式下,强制推进上次上传到OBS/NAS介质中的全局最大已归档恢复点到当前点,无入参。 返回值类型:text 备注:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限,运维管理员角色须打开operation_mode。同时只能在分布式的第一个normal CN上使用才有效。返回值为当前推进到的最新本地最大已归档恢复点。 gs_pitr_clean_local_barrier_files('delete_timestamp') 描述:清理本地缓存的barrier记录文件。 参数范围:delete_timestamp参数类型为text,为linux时间戳,长度为10位。 返回值类型:text 备注:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限,运维管理员角色须打开operation_mode。返回的结果是删除后本地最老barrier文件的开始时间戳。 gs_get_barrier_lsn(barrier_name text) 描述:获取备份创建的barrier对应的lsn。 返回值类型:text 备注:当前入参仅支持gs_roach_full和gs_roach_inc。调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限,运维管理员角色须打开operation_mode。 gs_gbr_relation_associated_filenode(schemaName name, tableName name) 描述:返回与输入table相关的全部索引、sequence、分区、toast、toast index的relfilenode。 返回值类型:records 备注:gs_gbr_relation_associated_filenode返回的字段包含文件类型relkind、文件所在namespace、文件对应的relation name、文件所在的database oid、文件所在的tablespace oid以及文件的relfilenode。 pg_create_physical_replication_slot_extern(slotname text, dummy_standby bool, extra_content text, need_recycle_xlog bool) 描述:创建OBS/NAS归档槽。slotname 为归档槽/恢复槽的slotname ,主备必须使用同一个slotname 。dummy_standby是预留参数。extra_content包含了归档槽的一些信息。对于OBS归档槽,其格式为"OBS;obs_server_ip;obs_bucket_name;obs_ak;obs_sk;archive_path;is_recovery;is_vote_replicate",OBS表示归档槽的归档的介质,obs_server_ip为obs的IP,obs_bucket_name为obs的桶名,obs_ak为obs的ak,obs_sk为obs的sk,archive_path为归档的路径,is_recovery标志是归档槽还是恢复槽,0表示是归档槽,1表示是恢复槽。is_vote_replicate标志是否是投票副本优先,0表示同步备机归档优先,1表示投票副本归档优先,当前版本该字段为预留字段,暂未适配。对于NAS归档槽,其格式为"NAS;archive_path;is_recovery;is_vote_replicate",相比OBS归档槽,缺少了OBS相关的配置信息,其余字段意义相同。 如果是不指定OBS或NAS介质的话,默认指定的是OBS归档槽,其extra_content格式为"obs_server_ip;obs_bucket_name;obs_ak;obs_sk;archive_path;is_recovery;is_vote_replicate"。 need_recycle_xlog标志创建归档槽时是否回收旧的归档日志,true表示回收,false表示不回收。 返回值类型:records包含slotname和xlog_position。 备注:调用该函数的用户需要具有SYSADMIN权限或具有REPLICATION权限或继承了内置角色gs_role_replication的权限。目前不支持创建多归档槽。 例如: 创建OBS归档槽: 其中obs_server_ip、obs_bucket_name、obs_ak、obs_sk为OBS的IP地址、桶名、AK、SK信息,gaussdb_uuid/dn1为日志在OBS对应桶下的归档路径,使用时需要根据实际信息进行替换。 1 2 3 4 5 gaussdb=# SELECT * FROM pg_create_physical_replication_slot_extern('uuid', false, 'OBS;obs_server_ip;obs_bucket_name;obs_ak;obs_sk;gaussdb_uuid/dn1;0;0', false); slotname | xlog_position ----------+--------------- uuid | (1 row) 创建NAS归档槽: 其中/data/nas/media/gaussdb_uuid/dn1为日志在NAS上对应的归档路径,使用时需要根据实际信息进行替换。 1 2 3 4 gaussdb=# SELECT * FROM pg_create_physical_replication_slot_extern('uuid', false, 'NAS;/data/nas/media/gaussdb_uuid/dn1;0;0', false); slotname | xlog_position ----------+--------------- uuid | gs_set_obs_delete_location(delete_location text) 描述:设置obs归档日志可删除的位置。delete_location实际为Log Sequence Number ( LSN ),该位置之前的日志已经完成回放并且落盘,可以在obs上进行删除。 返回值类型:xlog_file_name text,表明此次可删除点所在的日志文件名。无论obs删除是否成功,该值都会正常返回。 gaussdb=# SELECT gs_set_obs_delete_location('0/54000000'); gs_set_obs_delete_location ----------------------------- 000000010000000000000054_00 (1 row) gs_set_obs_delete_location_with_slotname(cstring, cstring ) 描述:设置指定归档槽obs归档日志可删除的位置。第一个参数实际为Log Sequence Number ( LSN ),该位置之前的日志已经完成回放并且落盘,可以在obs上进行删除,第二个参数为归档槽的名称。 返回值类型:xlog_file_name text,表明此次可删除点所在的日志文件名。无论obs删除是否成功,该值都会正常返回。 gs_get_global_barrier_status() 描述:gs_get_global_barrier_status用以查询已在obs完成归档的最新global barrier。 返回值类型:text global_barrier_id:全局最新barrier ID。 global_achive_barrier_id:全局最新归档barrier ID。 gs_get_global_barriers_status() 描述:gs_get_global_barriers_status用以查询已在obs完成归档的最新global barrier。 返回值类型:text slot_name:槽位名。 global_barrier_id:全局最新barrier ID。 global_achive_barrier_id:全局最新归档barrier ID。 gs_set_archive_standby_name_on_primary(text) 描述:gs_set_archive_standby_name_on_primary用来指定归档备机,设置后将由指定的备机执行归档操作,DCF模式下不支持指定备机。输入为备机名称,如:dn_6002。 返回值类型:BOOLEAN true表示设置成功,false表示设置失败。
  • PG_RANGE PG_RANGE系统表存储关于范围类型的信息,除了PG_TYPE里类型的记录。 表1 PG_RANGE字段 名称 类型 引用 描述 rngtypid oid PG_TYPE.oid 范围类型的OID。 rngsubtype oid PG_TYPE.oid 这个范围类型的元素类型(子类型)的OID。 rngcollation oid PG_COLLATION.oid 用于范围比较的排序规则的OID,如果没有则为零。 rngsubopc oid PG_OPCLASS.oid 用于范围比较的子类型的操作符类的OID。 rngcanonical regproc PG_PROC.proname 转换范围类型为规范格式的函数名,如果没有则为0。 rngsubdiff regproc PG_PROC.proname 表示用于计算范围两元素差值的函数的名字,该函数的返回值为双精度类型,如果不存在该函数则rngsubdiff字段值为0。 若元素类型是离散的,则rngcanonical决定用于范围类型的排序顺序;若元素类型是不可排序的,则rngsubopc决定用于范围类型的排序顺序;若元素类型是可排序的,则rngsubopc和rngcollation决定用于范围类型的排序顺序。 父主题: 其他系统表
  • password_notify_time 参数说明:该参数决定账户密码到期前提醒的天数。 参数类型:整型 参数单位:d(天) 取值范围:0 ~ 999 0表示不开启提醒功能。 1 ~ 999表示账户密码到期前提醒的天数。 默认值:7 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置为0时,可能导致账户密码到期没有被提前感知。
  • enable_innertool_cert 参数说明:该参数决定内部工具是否使用证书认证。 参数类型:布尔型 参数单位:无 取值范围: on:表示内部工具使用证书认证。 off:表示内部工具不使用证书认证。 默认值:off 此参数必须与参数ssl同时打开才能生效。 此参数打开后,使用的证书默认配置的是$GAUSSHOME/share/sslcert/gsql目录下的证书,证书的Common Name必须与初始用户相同,否则认证失败。 此参数打开后,初始用户使用证书认证,其他用户则需要使用密码方式认证。 此参数打开后,允许初始用户使用证书认证方式远程连接数据库。 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值,如果用户对安全性要求比较高,建议打开参数,并正确配置相关证书。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • password_min_length 参数说明:该参数决定账户密码的最小长度,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:6 ~ 999 默认值:8 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度超过password_max_length会导致账户无法正常创建。
  • password_min_digital 参数说明:该参数决定账户密码中至少需要包含的数字的个数,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:0 ~ 999 0表示没有限制。 1 ~ 999表示创建账户所指定的密码中至少需要包含的数字的个数。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度超过password_max_length会导致账户无法正常创建。
  • password_min_uppercase 参数说明:该参数决定账户密码中至少需要包含的大写字母的个数,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:0 ~ 999 0表示没有限制。 1 ~ 999表示创建账户所指定的密码中至少需要包含的大写字母的个数。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度超过password_max_length会导致账户无法正常创建。
  • password_effect_time 参数说明:该参数决定账户密码的有效时间。 参数类型:浮点型 参数单位:d(天) 取值范围:0 ~ 999。整数部分表示天数,小数部分可以换算成时、分、秒,如:password_effect_time=0.5,表示0天零12小时。 0表示不开启账户密码有效期限制功能。 1 ~ 999表示创建账户所指定的密码有效期,临近或超过有效期时,系统会提示用户修改密码。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐配置用户密码的有效时间,参数设置越小越安全,但对用户使用带来不便,请依据业务安全诉求进行设置。 设置不当的风险与影响:设置为0时,密码长期不修改会存在安全风险。
  • password_min_lowercase 参数说明:该参数决定账户密码中至少需要包含的小写字母的个数,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:0 ~ 999 0表示没有限制。 1 ~ 999表示创建账户所指定的密码中至少需要包含的小写字母的个数。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度超过password_max_length会导致账户无法正常创建。
  • password_min_special 参数说明:该参数决定账户密码中至少需要包含的特殊字符的个数,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:0 ~ 999 0表示没有限制。 1 ~ 999表示创建账户所指定的密码中至少需要包含的特殊字符的个数。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度超过password_max_length会导致账户无法正常创建。
  • password_max_length 参数说明:该参数决定账户密码的最大长度,仅sysadmin用户可以访问。 参数类型:整型 参数单位:无 取值范围:6 ~ 999 默认值:32 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据实际业务需求配置,推荐使用默认值。 设置不当的风险与影响:设置长度小于password_min_length会导致账户无法正常创建。
  • password_reuse_max 参数说明:该参数控制的是,在使用ALTER USER或者ALTER ROLE修改用户密码时,是否对新密码进行可重用次数检查,仅sysadmin用户可以访问。 修改密码时会检查配置参数password_reuse_time和password_reuse_max。 当password_reuse_time和password_reuse_max都为正数时,只要满足其中任一个,即可认为密码可以重用。 当password_reuse_time为0时,表示不限制密码重用天数,仅限制密码重用次数。 当password_reuse_max为0时,表示不限制密码重用次数,仅限制密码重用天数。 当password_reuse_time和password_reuse_max都为0时,表示不对密码重用进行限制。 参数类型:整型 参数单位:无 取值范围:0 ~ 1000 0表示不检查密码可重用次数。 正整数表示新密码不能为该值指定的次数内使用过的密码。 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:参数值设置越大越安全,但是在使用过程中会带来不便,请依据业务安全诉求进行设置。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • password_lock_time 参数说明:该参数指定账户被锁定后自动解锁所需的时间。 只有当password_lock_time和failed_login_attempts的取值都为正数时,账户锁定和解锁功能才能生效。 参数类型:浮点型 参数单位:d(天) 取值范围:0 ~ 365。取值的整数部分表示天数,小数部分可以换算成时、分、秒,如:password_lock_time=1.5,表示1天零12小时。 0表示密码验证失败时,自动锁定功能不生效。 正数表示账户被锁定后,当锁定时间超过password_lock_time设定的值时,账户将会被自行解锁。 默认值:1 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。取值如果要带单位,必须为d。 设置建议:设置为默认值。自动解锁时间不宜设置过长,需要同failed_login_attempts参数设置保持在合理范围内。 设置不当的风险与影响:如果failed_login_attempts参数设置过小,自动解锁时间设置过长,会导致因误输入导致账号长时间无法使用,影响用户正常使用。
  • failed_login_attempts 参数说明:在任意时候,如果输入密码错误的次数达到failed_login_attempts参数所设定的值,则当前账户被锁定,在经过password_lock_time参数所设定的时间后才会被自动解锁,期间仅sysadmin用户可以访问。登录时输入密码失败、ALTER USER时修改密码失败等情形,都会被视作输入密码错误。 只有当failed_login_attempts和password_lock_time的取值都为正数时,账户锁定和解锁功能才能生效。 参数类型:整型 参数单位:次 取值范围:0 ~ 1000。 0表示自动锁定功能不生效。 正整数表示当错误密码次数达到failed_login_attempts设定的值时,当前账户将被锁定。 默认值:10 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:建议设置为5 ~ 10。 设置不当的风险与影响:如果参数过大,密码错误次数输入过多(小于最大值1000)但不采取安全措施的话有安全风险,如果参数过小(大于0小于10)则可能会因为误输入导致账户被锁定影响正常使用。
  • enable_lock_account 参数说明:该参数控制账号使用错误密码连续登录失败达到参数failed_login_attempts所设定的值后,是否自动锁定账号。管理员手动锁定不受参数控制。 参数类型:布尔型 参数单位:无 取值范围: on:表示账号使用错误密码连续登录失败达到参数failed_login_attempts所设定的值后,自动锁定账号。 off:表示账号使用错误密码连续登录失败达到参数failed_login_attempts所设定的值后,不自动锁定账号。 默认值:on 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:从安全性考虑,请勿关闭自动锁定账号功能。 设置不当的风险与影响:设置为off会降低账号安全性。
  • password_encryption_type 参数说明:该参数决定采用何种加密方式对用户密码进行加密存储。修改此参数的配置不会自动触发已有用户密码加密方式的修改,只会对新创建用户的密码或已有用户修改的密码采用新的加密方式进行加密。 参数类型:整型 参数单位:无 取值范围:0、1、2、3 0:表示采用md5方式对密码加密。 1:表示采用sha256和md5两种方式分别对密码加密。 2:表示采用sha256方式对密码加密。 3:表示采用sm3方式对密码加密。 默认值:2 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:MD5加密算法安全性低,不建议使用,设置为0或1时存在安全风险。
  • password_reuse_time 参数说明:该参数控制的是,在使用ALTER USER或者ALTER ROLE修改用户密码时,是否对新密码进行可重用天数检查。 修改密码时会检查配置参数password_reuse_time和password_reuse_max。 当password_reuse_time和password_reuse_max都为正数时,只要满足其中任一个,即可认为密码可以重用。 当password_reuse_time为0时,表示不限制密码重用天数,仅限制密码重用次数。 当password_reuse_max为0时,表示不限制密码重用次数,仅限制密码重用天数。 当password_reuse_time和password_reuse_max都为0时,表示不对密码重用进行限制。 参数类型:浮点型 参数单位:d(天) 取值范围:0 ~ 3650 0表示不检查密码可重用的天数。 正数表示新密码不能为该值指定的天数内使用过的密码。 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:参数值设置越大越安全,但是在使用过程中会带来不便,依据业务安全诉求设定。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • ssl_cert_notify_time 参数说明:SSL服务器证书到期前提醒的天数。建立连接初始化ssl证书时,若当前时间距离证书到期时间小于设定值,则在日志中打印过期提醒。 参数类型:整型 参数单位:d(天) 取值范围:7 ~ 180 默认值:90 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。取值如果要带单位,必须为d。 设置建议:推荐使用默认值。 设置不当的风险与影响:参数设置过小,可能导致服务端证书过期没有被提前感知,导致无法及时更换证书;设置过大,可能导致频繁告警。
  • modify_initial_password 参数说明:当 GaussDB安装 成功后,数据库中仅存在一个初始用户(UID为10的用户)。该参数控制的是,客户通过该账户初次登录数据库进行操作时,是否要对该初始账户的密码进行修改。 如果安装过程中未指定初始用户密码,则安装后初始用户密码默认为空,执行其他操作前需要先通过gsql客户端设置初始用户的密码。此参数功能不再生效,保留此参数仅为兼容升级场景。 参数类型:布尔型 参数单位:无 取值范围: on:表示集群安装成功后初始用户首次登录操作前需要修改初始密码。 off:表示集群安装成功后初始用户无需修改初始密码即可进行操作。 默认值:off 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • password_policy 参数说明:该参数控制的是,在使用CREATE ROLE/USER或者ALTER ROLE/USER命令创建或者修改 GaussDB 账户时,是否进行密码复杂度检查。 参数类型:整型 参数单位:无 取值范围:0、1 0:表示不采用密码复杂度校验策略。 1:表示采用默认密码复杂度校验策略。 默认值:1 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:从安全性考虑,请勿关闭密码复杂度策略。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • ssl_cert_file 参数说明:指定包含SSL服务器证书的文件的名称,其相对路径是相对于数据目录的。 参数类型:字符串 参数单位:无 取值范围:合法文件名称,需要以“.crt”结尾。 默认值:"server.crt" 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:配置文件路径时,需要确保其与其余SSL相关证书/私钥配置文件是配套关系。 设置不当的风险与影响:文件路径错误时,会导致客户端与数据库节点之间无法建立SSL连接,数据库集群节点之间无法进行SSL通信,数据存在泄漏风险。
  • ssl_crl_file 参数说明:指定包含证书吊销列表的文件的名称,如果客户端证书在该列表中,则当前客户端证书被视为无效证书,其相对路径是相对于数据目录的。 参数类型:字符串 参数单位:无 取值范围:合法文件名称,空字符串表示没有吊销列表。 默认值:"" 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:若吊销列表中文件名称配置错误,可能导致无效的客户端证书可完成SSL建连,存在数据泄露风险;有效的客户端证书被视为已吊销,无法建立SSL连接。
  • ssl_ca_file 参数说明:指定包含CA信息的根证书名称,其相对路径是相对于数据目录的。 参数类型:字符串 参数单位:无 取值范围:合法文件名称,需要以“.pem”结尾。其中空字符串表示没有CA文件被加载,不进行客户端证书验证。 默认值:"cacert.pem" 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:需要进行客户端证书验证时,请正确配置文件路径。 设置不当的风险与影响:文件路径错误时,会导致数据库无法校验客户端证书,通信安全性降低。
  • ssl_key_file 参数说明:指定包含SSL私钥的文件的名称,其相对路径是相对于数据目录的。 参数类型:字符串 参数单位:无 取值范围:合法文件名称,需要以“.key”结尾。 默认值:"server.key" 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:配置文件路径时,需要确保其与其余SSL相关证书/私钥配置文件是配套关系。 设置不当的风险与影响:文件路径错误时,会导致客户端与数据库节点之间无法建立SSL连接,数据库集群节点之间无法进行SSL通信,数据存在泄漏风险。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全