华为云用户手册

  • enable_material 参数说明:控制优化器对实体化的使用。消除整个实体化是不可能的,但是可以关闭这个参数以防止优化器插入实体节点。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭后会禁止优化器插入实体节点,部分场景下无法生成Material算子,可能导致部分场景性能下降。
  • enable_hashjoin 参数说明:控制优化器对Hash连接规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭后会全局禁止使用Hash Join算子,优先生成其他Join类型计划,可能导致部分场景性能下降。若要更改,请谨慎操作,避免因误操作产生意料之外的风险。
  • enable_hashagg 参数说明:控制优化器对Hash聚集规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭后会导致部分场景下Hash聚集算子无法使用,影响查询改写逻辑,使查询性能下降。若要更改,请谨慎操作,避免因误操作产生意料之外的风险。
  • force_bitmapand 参数说明:控制优化器对bitmap and规划类型的强制使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:off 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:打开该参数后当满足bitmap and索引扫描算子使用条件时,优化器生成计划会强制走bitmap and索引扫描,部分场景下可能影响查询性能。若要更改,请谨慎操作,避免因误操作产生意料之外的风险。
  • enable_bitmapscan 参数说明:控制优化器对位图扫描规划类型的使用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用。 off:表示不使用。 默认值:on 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:关闭后会全局禁止bitmap scan算子,可能导致部分场景性能下降。若要更改,请谨慎操作,避免因误操作产生意料之外的风险。
  • MPP_TABLES MPP_TABLES视图显示PGXC_CLASS中表的信息。具体字段信息如表1所示。 表1 MPP_TABLES字段 名称 类型 描述 schemaname name 表的模式名。 tablename name 表名。 tableowner name 表的所有者。 tablespace name 表所在的表空间。 pgroup name 节点群的名称。 nodeoids oidvector_extend 表分布的节点OID列表。 父主题: 其他系统视图
  • GLOBAL_STAT_SYS_INDEXES 显示各节点pg_catalog、information_schema以及pg_toast模式中所有系统表的索引状态信息(包含CN与DN节点的索引状态信息,在CN节点使用,不汇总),如表1所示。 表1 GLOBAL_STAT_SYS_INDEXES字段 名称 类型 描述 node_name name 节点名称 relid oid 这个索引的表的OID。 indexrelid oid 索引的OID。 schemaname name 索引所在的Schema名。 relname name 索引的表名。 indexrelname name 索引名。 idx_scan bigint 该索引上执行的索引扫描次数。 idx_tup_read bigint 该索引上扫描返回的索引项数。 idx_tup_fetch bigint 使用该索引的简单索引扫描在原表中抓取的活跃行数。 父主题: Object
  • 算子说明 Rownum算子会生成伪列,它返回一个数字,表示从查询中获取结果的行编号。第一行的Rownum为1。可以使用Rownum关键字对查询结果的行编号进行条件过滤。通常出现在Rownum子句里。 使用Rownum有一定的约束条件: Rownum不可作为别名,以免SQL语句出现歧义。 创建索引时不可使用Rownum。 创建表时默认值不可为Rownum。 Where子句中不可使用Rownum的别名。 在插入数据时不可使用Rownum。 在无表查询中不可以使用Rownum。 Rownum不能用于Limit子句。 Rownum不能用于EXECUTE语句的参数。 Upsert语句不支持Rownum用做Update子句更新。
  • PG_AUTH_HISTORY PG_AUTH_HISTORY系统表记录了角色的认证历史。需要有系统管理员权限才可以访问此系统表。 表1 PG_AUTH_HISTORY字段 名称 类型 描述 oid oid 行标识符(隐含字段,必须明确选择)。 roloid oid 角色标识。 passwordtime timestamp with time zone 创建和修改密码的时间。 rolpassword text 角色密码密文,加密方式由GUC参数password_encryption_type确定。 父主题: 连接和认证
  • GS_ADM_ILMTASKS GS_ADM_ILMTASKS视图反映ADO Task的概要信息,包含Task ID,Task Owner,状态以及时间信息。默认只有系统管理员权限才可以访问此系统视图,普通用户需要授权才可以访问。 表1 GS_ADM_ILMTASKS字段 名称 类型 描述 task_id bigint ADO Task的ID。 task_owner character varying(128) ADO Task发起的用户,仅ADM视图存在此列。 state character varying(9) 状态: INACTIVE:非活动。 ACTIVE:活动。 COMPLETED:完成。 UNKNOWN:评估中。 creation_time timestamp with time zone 创建时间。 start_time timestamp with time zone 变成活动状态的时间。 completion_time timestamp with time zone 完成时间。 node_name name 数据来源节点的名称。 父主题: OLTP表压缩
  • 注意事项 如果数据库的编码为SQL_ASCII(可以通过“show server_encoding”命令查看当前数据库存储编码),则在创建数据库对象时,如果对象名中含有多字节字符(例如中文),超过数据库对象名长度限制(63字节)的时候,数据库会将最后一个字节(而不是字符)截断,可能造成出现半个字符的情况。 针对这种情况,请遵循以下条件: 保证数据对象的名称不超过限定长度。 使用UTF8编码集为数据库的默认存储编码集(server_encoding)。 不要使用多字节字符作为对象名。 因为误操作导致在多字节字符的中间截断,从而导致无法删除数据库对象,如果出现这种现象,请使用截断前的数据库对象名进行删除操作,或将该对象从各个数据库节点的相应系统表中依次删掉。
  • 背景信息 初始时, GaussDB 包含四个模板数据库template0、template1、templatea,templatem,以及一个默认的用户数据库postgres。 CREATE DATABASE实际上通过复制模板数据库来创建新数据库。默认复制template0。请避免使用客户端或其他方式连接及操作两个模板数据库。 模板数据库中没有用户表,可通过系统表PG_DATABASE查看模板数据库属性。 模板template0、templatea不允许用户连接;模板template1和templatem只允许数据库初始用户和系统管理员连接,普通用户无法连接。 templatem为系统保留数据库名称,不允许用户以其为数据库名创建数据库。 templatea、templatem不允许用户修改名称。 数据库系统中会有多个数据库,但是同一时刻客户端程序只能连接一个数据库。当前,不支持在不同的数据库之间进行相互查询(跨库查询或跨库事务)。 当一个数据库集群中存在多个数据库时,可以通过客户端工具gsql的-d参数指定目标数据库进行登录,也可以在客户端程序登录数据库以后通过\c命令进行数据库切换。
  • 操作步骤 执行如下命令创建一个新的数据库db_tpcds。 1 2 3 4 gaussdb=# CREATE DATABASE db_tpcds; CREATE DATABASE gaussdb=# CREATE DATABASE db_tpcc1 TEMPLATE templatea; CREATE DATABASE 数据库名称遵循SQL标识符的一般规则。当前角色自动成为此新数据库的所有者。 如果一个数据库系统用于承载相互独立的用户和项目,建议把它们放在不同的数据库里。 如果项目或者用户是相互关联的,并且可以相互使用对方的资源,则应该把它们放在同一个数据库里,但可以规划在不同的模式中。模式只是一个纯粹的逻辑结构,某个模式的访问权限由权限系统模块控制。 创建数据库时,若数据库名称长度超过63字节,server端会对数据库名称进行截断,保留前63个字节,因此建议数据库名称长度不要超过63个字节。 数据库默认创建在pg_default表空间下。若要指定表空间,可以使用如下语句。 1 2 gaussdb=# CREATE DATABASE db_tpcds WITH TABLESPACE = hr_local; CREATE DATABASE 其中hr_local为表空间名称,关于如何创建表空间,请参见管理表空间。 创建完db_tpcds数据库后,可以选择继续在默认的postgres数据库进行其他操作,也可以按如下方法退出postgres数据库,使用新用户连接到此数据库执行创建表等操作。 gaussdb=# \q gsql -d db_tpcds -p 8000 -U joe Password for user joe: gsql((GaussDB Kernel XXX.XXX.XXX build f521c606) compiled at 2021-09-16 14:55:22 commit 2935 last mr 6385 release) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help. 查看数据库。 执行\l元命令查看数据库系统的数据库列表。 1 gaussdb=# \l 执行如下命令通过系统表pg_database查询数据库列表。 1 gaussdb=# SELECT datname FROM pg_database; 修改数据库。 用户可以使用如下命令修改数据库属性(比如:owner、名称和默认的配置属性)。 执行如下命令为数据库重新命名。 1 2 gaussdb=# ALTER DATABASE db_tpcds RENAME TO human_tpcds; ALTER DATABASE 执行完参数设置后,需要手动执行CLEAN CONNECTION清理旧连接,否则可能存在节点间参数值不一致。 删除数据库。 用户可通过DROP DATABASE命令删除数据库。该命令会移除数据库系统目录并永久删除磁盘上的数据文件。仅数据库所有者或者拥有系统管理员权限的用户可以执行删除操作。若存在活跃数据库连接,删除操作将失败,操作前请确保已连接到其他数据库。 执行如下命令删除数据库: 1 2 gaussdb=# DROP DATABASE human_tpcds; DROP DATABASE
  • MY_DEPENDENCIES MY_DEPENDENCIES显示用户拥有对象对其他对象的依赖关系。所有用户都可以访问,该视图同时存在于PG_CATA LOG 和SYS Schema下。具体字段信息如表1所示。 表1 MY_DEPENDENCIES字段 名称 类型 描述 name name 对象的名称。 type character varying(18) 对象类型。 referenced_owner name 被引用对象的所有者。 referenced_name name 被引用对象的名称。 referenced_type character varying(18) 被引用对象的类型。 referenced_link_name character varying(128) 指向父对象的链接的名称(如果是远程)。 dependency_type character varying(4) 指示依赖关系是否为REF依赖关系,默认取值为HARD,表示硬引用。 父主题: 其他系统视图
  • wal_flush_timeout 参数说明:遍历walInsertStatusTable的超时时间。xlog刷盘自适应控制的刷盘I/O遍历walInsertStatusTable等待的最大时间。 参数类型:整型 参数单位:us(微秒) 取值范围:0 ~ 90000000 默认值:2 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置值过大可能造成xlog刷盘频率降低,降低xlog处理性能。
  • xlog_file_size 参数说明:双集群共享存储场景下,xlog日志共享盘的大小。本参数在数据库系统初始化时由OM进行配置,不建议用户自行修改。 参数类型:整型 参数单位:Byte 取值范围:134217728 ~ 576460752303423487 默认值:549755813888 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。 设置建议:安装时会进行设定,不建议用户修改此配置。 设置不当的风险与影响:修改该参数取值可能导致集群出现意料之外的结果,请保持默认值。
  • max_size_for_shared_storage_xlog_write 参数说明:控制共享盘单次写入的最大数据量。 参数类型:整型 参数单位:kB 取值范围:8 ~ 131072 默认值:1024 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:安装时会进行设定,不建议用户修改此配置。 设置不当的风险与影响:修改该参数取值可能导致集群出现意料之外的结果,请保持默认值。
  • enable_shared_storage_optimization 参数说明:用于控制共享存储下,是否开启性能优化。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启共享存储下性能优化。 off:表示关闭共享存储下性能优化。 默认值:on,从之前版本升级到当前版本默认为off。 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:不建议用户修改此配置。 设置不当的风险与影响:关闭后将影响低并发下共享存储下的性能。
  • xlog_file_path 参数说明:双集群共享存储场景下,xlog日志共享盘的路径。本参数在数据库系统初始化时由OM进行配置,不建议用户自行修改。 参数类型:字符串 参数单位:无 取值范围:字符串 默认值:NULL 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:安装时会进行设定,不建议用户修改此配置。 设置不当的风险与影响:设置不当会使数据库无法启动。
  • xlog_lock_file_path 参数说明:双集群共享存储场景下,xlog日志共享盘抢占的锁文件的路径。本参数在数据库系统初始化时由OM进行配置,不建议用户自行修改。 参数类型:字符串 参数单位:无 取值范围:字符串 默认值:NULL 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:安装时会进行设定,不建议用户修改此配置。 设置不当的风险与影响:设置不当会使数据库无法启动。
  • shared_storage_write_mode 参数说明:用于控制共享存储下,主集群的最大Xlog可写入位置。 参数类型:枚举类型 参数单位:无 取值范围: none:无限制。 standby:集群内已连接备机的本地最大Xlog LSN + xlog_file_size(双数据库实例共享存储场景下,xlog日志共享盘的大小)。 disaster_standby:灾备集群已连接备机的本地最大LSN + xlog_file_size。 disaster_standby_strict:灾备集群备机的本地最大LSN + xlog_file_size。(和disaster_standby的区别在于,即使主备集群之间数据面网络隔离,也不会覆盖写入) standby_and_disaster_standby:集群内已连接备机的本地最大LSN和灾备集群已连接备机的本地最大LSN中的较小值+xlog_file_size。 默认值:disaster_standby 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:不建议用户修改此配置。 设置不当的风险与影响:修改该参数可能会导致备集群触发重建(build),不建议手动修改。
  • wal_file_init_num 参数说明:WAL writer辅助线程启动时在主机上一次创建xlog段文件的数量。 参数类型:整型 参数单位:无 取值范围:1 ~ 1000000 默认值:10 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置过大,会占用过多的磁盘空间,占用量为 wal_file_init_num * wal_segment_size。
  • wal_debug 参数说明:允许输出wal相关的调试信息。仅在编译时开启WAL_DEBUG编译宏时可用。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许输出wal相关的调试信息。 off:表示不允许输出wal相关的调试信息。 默认值:off 设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:调试时使用的参数,不建议生产环境开启。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • commit_delay 参数说明:表示一个已经提交的数据在WAL缓冲区中存放的时间。 设置为非 0 值时事务执行commit后不会立即写入WAL中,而仍存放在WAL缓冲区中,等待WalWriter线程周期性写入磁盘。 如果系统负载很高,在延迟时间内,其他事务可能已经准备好提交。但如果没有事务准备提交,这个延迟可能会造成不必要的等待。 参数类型:整型 参数单位:us(微秒) 取值范围:0 ~ 100000,其中0表示无延迟。 默认值:0 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。 设置建议:参考须知。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • wal_segment_size 参数说明:表示WAL日志段文件的大小。可以XLOG_BLCKSZ数量表示,同时也可以实际的大小表示。XLOG_BLCKSZ是XLOG块的大小,一般默认为8kB。 参数类型:整型 参数单位:8kB 取值范围:2048(即16MB) 默认值:16MB(2048 * 8kB) 设置方式:该参数属于INTERNAL类型参数,为固定参数,用户无法修改此参数,只能查看。 设置建议:该参数不允许用户进行设置,只能查看。 设置不当的风险与影响:无
  • wal_file_preinit_bounds 参数说明:业务运行时,WAL writer辅助线程每秒可预生成空的WAL日志文件的数量限制(WAL日志段文件的大小为16MB)。当该参数值为0时,表示不进行限制。 参数类型:整型 参数单位:无 取值范围:0 ~ 1024 默认值:0 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐设置为默认值,不做调整。当把该参数设置为有效值时,需基于磁盘I/O能力进行设置,可参考参数max_io_capacity的数值进行设置。 若max_io_capacity为500MB,可设置为25; 若max_io_capacity为1GB,可设置为50。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • commit_siblings 参数说明:当一个事务发出提交请求时,如果数据库中正在执行的事务数量大于此参数的值,则该事务将等待一段时间(commit_delay的值),否则该事务则直接写入WAL。 参数类型:整型 参数单位:无 取值范围:0 ~ 1000 默认值:5 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • force_promote 参数说明:备机强切功能开关。 备机强切在集群故障状态下,以丢失部分数据为代价换取集群尽可能快地恢复服务;是集群状态为不可用时的一个逃生方法,不建议频繁触发。如果操作者不清楚备机强切后丢失数据对业务的影响,请勿使用本功能。 参数类型:整型 参数单位:无 取值范围: 0:表示关闭。 1:表示开启。 默认值:0 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。使用备机强切功能时,DN和cmserver都需要将此参数设置为开启,重启数据库后生效。 设置建议:不推荐开启此参数。 设置不当的风险与影响:开启后,触发强切会导致丢失部分数据。
  • fsync 参数说明:设置GaussDB服务器是否使用fsync()系统函数确保数据的更新及时写入物理磁盘中(fsync()系统函数实现的种类,请参见参数wal_sync_method)。 使用fsync()系统函数可以保证在操作系统或者硬件崩溃的情况下将数据恢复到一个已知的状态。 如果将此参数关闭,可能会在系统崩溃时无法恢复原来的数据,导致数据库不可用。 参数类型:布尔型 参数单位:无 取值范围: on:表示使用fsync()系统函数。 off:表示不使用fsync()系统函数。 默认值:on 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • wal_sync_method 参数说明:参数fsync开启的前提情况下,设置向磁盘强制更新WAL数据的方法。 如果参数fsync关闭,这个参数的设置就没有意义,因为所有数据更新都不会强制写入磁盘。 参数类型:枚举类型 参数单位:无 取值范围: open_datasync:表示用带O_DSYNC选项的open()打开“WAL”文件。 fdatasync:表示每次提交的时候都调用fdatasync()(支持suse10和suse11)。 fsync_writethrough:表示每次提交的时候调用fsync()强制把缓冲区任何数据写入磁盘。 fsync:表示每次提交的时候调用fsync()(支持suse10和suse11)。 open_sync:表示用带O_SYNC选项的open()写“WAL”文件(支持suse10和suse11)。 不是所有的平台都支持以上参数。 由于历史原因,Windows平台支持将wal_sync_method设置为fsync_writethrough。在windows平台上fsync_writethrough和fsync等效。 默认值:fdatasync 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
共100000条
提示

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