云服务器内容精选

  • 备份管理 GaussDB 支持数据库实例的备份和恢复,以保证数据可靠性。备份目前将以未加密的方式存储,防止客户误操作或者服务异常的情况下,因没有开启备份而造成数据丢失的情况,GaussDB针对备份提供了以下能力: 提供了自动和手动的备份功能,具体内容请参见备份概述,在创建GaussDB实例时,系统默认开启实例级自动备份策略。实例创建成功后,您可根据业务需要修改实例级自动备份策略。 提供了自动备份策略,定时定期对数据库进行备份。具体内容请参见设置自动备份策略。 提供了导出备份文件的能力,具体内容请参见导出备份信息。
  • WAL 归档配置 WAL(Write Ahead Log)即预写式日志,也称为Xlog 。wal_level决定了写入WAL的信息量。为了在备机上开启只读查询,wal_level需要在主机上设置成hot_standby,并且备机设置hot_standby参数为on。对于分布式环境,不支持设置hot_standby为off,因此wal_level不可设置为archive或minimal,否则数据库将无法启动。建议设置wal_level参数为默认值hot_standby。
  • 安全认证配置 为了保证用户体验,同时为了防止账户被人通过暴力破解,GaussDB设置了账户登录重试次数及失败后自动解锁时间的保护措施,GaussDB针对账户提供了以下能力: failed_login_attempts:允许用户设置最大登录失败次数。 password_lock_time:此参数允许用户修改账户被锁定后自动解锁时间,单位为天。 若管理员发现某账户被盗、非法访问等异常情况,可手动锁定该账户。当管理员认为账户恢复正常后,可手动解锁该账户。 以手动锁定和解锁用户joe为例,命令格式如下: 手动锁定 1 2 gaussdb=# ALTER USER joe ACCOUNT LOCK; ALTER ROLE 手动解锁 1 2 gaussdb=# ALTER USER joe ACCOUNT UNLOCK; ALTER ROLE
  • 最大连接数配置 如果GaussDB连接数过高,会消耗服务器大量资源,导致操作响应变慢,参考以下几个参数进行优化,具体内容请参见连接设置: max_connections:允许和数据库连接的最大并发连接数,此参数会影响集群的并发能力。 max_inner_tool_connections:允许和数据库连接的工具的最大并发连接数,此参数会影响GaussDB的工具连接并发能力。 sysadmin_reserved_connections:为管理员用户预留的最少连接数,不建议设置过大。该参数和max_connections参数配合使用,管理员用户的最大连接数等于max_connections + sysadmin_reserved_connections。 该参数属于POSTMASTER类型参数,具体内容请参见设置参数中对应设置方法进行设置。
  • 用户密码的安全策略 GaussDB为了客户账号的安全,GaussDB对用户密码进行了以下设置: 用户密码存储在系统表pg_authid中,为防止用户密码泄露,GaussDB对用户密码进行加密存储,所采用的加密算法由配置参数password_encryption_type决定。 GaussDB数据库 用户的密码都有密码有效期,可以通过参数password_notify_time提醒客户修改密码,如果需要修改密码有效期,可以通过修改password_effect_time来更改。
  • ADM_USERS ADM_USERS视图显示所有数据库用户的信息。默认只有系统管理员权限才可以访问。该视图同时存在于PG_CATA LOG 和SYS Schema下。 表1 ADM_USERS字段 名称 类型 描述 username character varying(128) 用户名称。 user_id oid 用户ID。 account_status character varying(32) 账户状态。 NULL:该账户是拥有最高权限的初始系统管理员。 0:正常状态。 1:由于登录失败次数超过阈值被锁定了一定的时间。 2:被管理员锁定。 lock_date timestamp with time zone 默认显示账户的创建日期,如果账户被管理员锁定,或者登录失败次数超过阈值被锁定,则显示账户被锁定的日期。初始系统管理员该字段为NULL。 expiry_date timestamp with time zone 账户到期日期。 default_tablespace character varying(4000) 数据的默认表空间。 temporary_tablespace character varying(4000) 临时表的默认表空间的名称或表空间组的名称。 local_temp_tablespace character varying(30) 暂不支持,默认值为NULL。 created timestamp with time zone 用户创建日期。 profile character varying(128) 暂不支持,默认值为NULL。 initial_rsrc_consumer_group character varying(128) 暂不支持,默认值为NULL。 external_name character varying(4000) 暂不支持,默认值为NULL。 password_versions character varying(12) 显示账户密码的加密方式。取值为:MD5、SHA256或SM3。 editions_enabled character varying(1) 暂不支持,默认值为NULL。 authentication_type text 用户的身份验证机制。 proxy_only_connect character varying(1) 暂不支持,默认值为NULL。 common character varying(3) 暂不支持,默认值为NULL。 last_login timestamp with time zone 用户最后一次登录的时间。 oracle_maintained character varying(1) 暂不支持,默认值为NULL。 inherited character varying(3) 暂不支持,默认值为NULL。 default_collation character varying(100) 用户Schema的默认字符序。 implicit character varying(3) 暂不支持,默认值为NULL。 all_shard character varying(3) 暂不支持,默认值为NULL。 password_change_date timestamp with time zone 上次设置用户密码的日期。 父主题: 用户和权限管理
  • 参数说明 pdb_name PDB名称。 取值范围:字符串,要符合标识符命名规范。 OPEN 打开指定的PDB。PDB的OPEN操作对其数据库实例的启动,即仅当PDB开启时才提供服务。管理员可按需启用或停用一部分PDB。只有PDB处于开启状态时,才允许被连接。 CLOSE 关闭指定的PDB。当用户暂不需要使用PDB或者需要将其删除时,可以通过CLOSE操作停止PDB的服务。关闭后,无法连接到该PDB。数据库会对关闭的PDB进行最基本的常规维护,以保证系统整体的一致性。这些停用的PDB对系统开销可以忽略。如果执行该语句时,该PDB还存在业务连接,则将最多等待5秒,后续还存在则会导致关闭失败。 注:只有在当前的资源计划中存在与PDB关联的资源计划指令时,才可以成功打开PDB。 CLOSE IMMEDIATE 强制关闭指定的PDB。如果管理员无法主动断连PDB的业务连接,可以使用该选项主动清退PDB现有的业务连接,并关闭PDB。
  • 注意事项 只能在GUC参数enable_mtd为on的状态下使用。 只能在非PDB中进行该操作。不可在M兼容数据库中执行该命令。 操作用户需要为PDB属主(见系统表pg_database.datdba)或拥有sysadmin权限。 仅数据库初始用户可以使用该语句变更模板PDB(template_pdb)。 模板PDB只允许数据库初始用户连接,其他用户无法连接。 禁止用户在模板PDB下执行任何数据操作,若执行相关操作,可能产生预期外行为。例如,若在模板PDB内创建表空间,后续基于该模板创建的PDB不会同步模板内的表空间软链接,表空间软链接会发生丢失。
  • DB_INDEXES DB_INDEXES视图显示当前用户可访问的索引信息。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 DB_INDEXES字段 名称 类型 描述 owner character varying(64) 索引的所有者。 index_name character varying(64) 索引名称。 table_name character varying(64) 索引对应的表名。 uniqueness text 表示该索引是否为唯一索引。 UNIQUE:唯一索引。 NONUNIQUE:非唯一索引。 partitioned character(3) 表示该索引是否具有分区表的性质。 Yes:索引具有分区表的性质。 No:索引不具有分区表的性质。 generated character varying(1) 表示该索引的名称是否为系统生成。 y:索引名称为系统生成。 n:索引名称非系统生成。 index_type character varying(27) 索引类型。 NORMAL:索引属性都是简单引用,表达式树为空。 FUNCTION-BASED NORMAL:存在表达式树用于非简单字段引用的索引属性。 table_owner character varying(128) 索引对象的所有者。 table_type character(11) 索引对象的类型。 TABLE:索引对象为表类型。 tablespace_name character varying(30) 包含索引的表空间名称。 status character varying(8) 非分区索引状态。 VALID:非分区索引可以用于查询。 UNUSABLE:非分区索引不可用。 N/A:索引具有分区表性质。 compression character varying(13) 暂不支持,值为NULL。 prefix_length numeric 暂不支持,值为NULL。 ini_trans numeric 暂不支持,值为NULL。 max_trans numeric 暂不支持,值为NULL。 initial_extent numeric 暂不支持,值为NULL。 next_extent numeric 暂不支持,值为NULL。 min_extents numeric 暂不支持,值为NULL。 max_extents numeric 暂不支持,值为NULL。 pct_increase numeric 暂不支持,值为NULL。 pct_threshold numeric 暂不支持,值为NULL。 include_column numeric 暂不支持,值为NULL。 freelists numeric 暂不支持,值为NULL。 freelist_groups numeric 暂不支持,值为NULL。 pct_free numeric 暂不支持,值为NULL。 logging character varying(3) 暂不支持,值为NULL。 blevel numeric 暂不支持,值为NULL。 leaf_blocks numeric 暂不支持,值为NULL。 distinct_keys numeric 暂不支持,值为NULL。 avg_leaf_blocks_per_key numeric 暂不支持,值为NULL。 avg_data_blocks_per_key numeric 暂不支持,值为NULL。 clustering_factor numeric 暂不支持,值为NULL。 num_rows numeric 暂不支持,值为NULL。 sample_size numeric 暂不支持,值为NULL。 last_analyzed timestamp(0) without time zone 暂不支持,值为NULL。 degree character varying(40) 暂不支持,值为NULL。 instances character varying(40) 暂不支持,值为NULL。 temporary character varying(1) 暂不支持,值为NULL。 secondary character varying(1) 暂不支持,值为NULL。 buffer_pool character varying(7) 暂不支持,值为NULL。 flash_cache character varying(7) 暂不支持,值为NULL。 cell_flash_cache character varying(7) 暂不支持,值为NULL。 user_stats character varying(3) 暂不支持,值为NULL。 duration character varying(15) 暂不支持,值为NULL。 pct_direct_access numeric 暂不支持,值为NULL。 ityp_owner character varying(128) 暂不支持,值为NULL。 ityp_name character varying(128) 暂不支持,值为NULL。 parameters character varying(1000) 暂不支持,值为NULL。 global_stats character varying(3) 暂不支持,值为NULL。 domidx_status character varying(12) 暂不支持,值为NULL。 domidx_opstatus character varying(6) 暂不支持,值为NULL。 funcidx_status character varying(8) 暂不支持,值为NULL。 join_index character varying(3) 暂不支持,值为NULL。 iot_redundant_pkey_elim character varying(3) 暂不支持,值为NULL。 dropped character varying(3) 暂不支持,值为NULL。 visibility character varying(9) 表示该索引对优化器是否可见。 VISIBLE:索引对优化器可见。 INVISIBLE:索引对优化器不可见。 domidx_management character varying(14) 暂不支持,值为NULL。 segment_created character varying(3) 暂不支持,值为NULL。 orphaned_entries character varying(3) 暂不支持,值为NULL。 indexing character varying(7) 暂不支持,值为NULL。 auto character varying(3) 暂不支持,值为NULL。 父主题: 其他系统视图
  • DB_TAB_MODIFICATIONS DB_TAB_MODIFICATIONS视图显示自上次收集表统计信息以来当前用户可访问的表的修改信息的统计数据。该视图目前只显示执行了INSERT、DELETE和UPDATE操作的表的统计数据。所有用户都可以访问该视图。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 DB_TAB_MODIFICATIONS字段 名称 类型 描述 table_owner character varying(128) 表的所有者。 table_name character varying(128) 表的名称。 partition_name character varying(128) 分区的名称。 subpartition_name character varying(128) 子分区的名称。 inserts numeric 自上次收集统计信息以来的估计插入次数。 updates numeric 自上次收集统计信息以来的估计更新次数。 deletes numeric 自上次收集统计信息以来的估计删除次数。 timestamp timestamp(0) without time zone 上次修改表的时间。 暂不支持分区表的修改时间,值为NULL。 truncated character varying(3) 暂不支持,值为NULL。 drop_segments numeric 暂不支持,值为NULL。 schema_name character varying(128) 表所属模式名。 父主题: 其他系统视图
  • 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 --创建基本表table_for_label。 gaussdb=# CREATE TABLE table_for_label(col1 int, col2 text); --创建资源标签table_label。 gaussdb=# CREATE RESOURCE LABEL table_label ADD COLUMN(table_for_label.col1); --将col2添加至资源标签table_label中。 gaussdb=# ALTER RESOURCE LABEL table_label ADD COLUMN(table_for_label.col2); --将资源标签table_label中的一项移除。 gaussdb=# ALTER RESOURCE LABEL table_label REMOVE COLUMN(table_for_label.col1); --删除资源标签table_label。 gaussdb=# DROP RESOURCE LABEL table_label; --删除基本表table_for_label。 gaussdb=# DROP TABLE table_for_label;
  • PG_TIMEZONE_NAMES PG_TIMEZONE_NAMES视图显示所有能够被SET TIMEZONE语法识别的时区名及其缩写、UTC偏移量、是否实行夏令时。 表1 PG_TIMEZONE_NAMES字段 名称 类型 描述 name text 时区名。 abbrev text 时区名缩写。 utc_offset interval 相对于UTC的偏移量。 is_dst boolean 如果当前正实行夏令时则为TRUE,否则为FALSE。 父主题: 其他系统视图
  • 数据库逻辑结构图 GaussDB的数据库节点负责存储数据,其存储介质也是磁盘,本节主要从逻辑视角介绍数据库节点都有哪些对象,以及这些对象之间的关系。数据库逻辑结构如图1。 图1 数据库逻辑结构图 Tablespace,即表空间,表空间是一个目录,实例中可以存在多个表空间,其中存储的是它所包含的数据库的各种物理文件。每个表空间可以对应多个Database。 Database,即数据库,用于管理各类数据对象,各数据库间相互隔离。数据库管理的对象可分布在多个Tablespace上。 Datafile Segment,即数据文件,通常每张表只对应一个数据文件。如果某张表的数据大于1GB,则会分为多个数据文件存储。 Table,即表,每张表只能属于一个数据库,也只能对应到一个Tablespace。每张表对应的数据文件必须在同一个Tablespace中。 Block,即数据块,是数据库管理的基本单位,默认大小为8KB。 父主题: 数据库系统概述
  • 账本数据库使用的数据类型 账本数据库使用HASH16数据类型来存储行级hash摘要或表级hash摘要,使用HASH32数据类型来存储全局hash摘要或者历史表校验hash。 表1 账本数据库HASH类型 名称 描述 存储空间 范围 HASH16 以无符号64位整数存储。 8字节 0 ~ +18446744073709551615 HASH32 以包含16个无符号整型元素数的组存储。 16字节 16个元素的无符号整型数组能够包含的取值范围 HASH16数据类型用来在账本数据库中存储行级或表级hash摘要,在获得长度为16个字符的十六进制字符串的hash序列后,系统将调用hash16in函数将该序列转换为一个无符号64位整数存储进HASH16类型变量中。示例如下: 十六进制字符串:e697da2eaa3a775b 对应的无符号64位整数:16615989244166043483 十六进制字符串:ffffffffffffffff 对应的无符号64位整数:18446744073709551615 示例: gaussdb=# CREATE TABLE hash16test(id int, data hash16); gaussdb=# INSERT INTO hash16test VALUES (1, 'e697da2eaa3a775b'); gaussdb=# SELECT * FROM hash16test; id | data ----+---------------------------------- 1 | e697da2eaa3a775b (1 row) gaussdb=# DROP TABLE hash16test; HASH32数据类型用来在账本数据库中存储全局hash摘要或者历史表校验hash,在获得长度为32个字符的十六进制字符串的hash序列后,系统将调用hash32in函数将该序列转换到一个包含16个无符号整型元素的数组中。示例如下: 十六进制字符串:685847ed1fe38e18f6b0e2b18c00edee 对应的HASH32数组:[104,88,71,237,31,227,142,24,246,176,226,177,140,0,237,238] 示例: gaussdb=# CREATE TABLE hash32test(id int, data hash32); gaussdb=# INSERT INTO hash32test VALUES (1, '685847ed1fe38e18f6b0e2b18c00edee'); gaussdb=# SELECT * FROM hash32test; id | data ----+---------------------------------- 1 | 685847ed1fe38e18f6b0e2b18c00edee (1 row) gaussdb=# DROP TABLE hash32test; 父主题: 数据类型
  • SQL Statistics SQL Statistics列名称及描述如表1所示。 表1 SQL Statistics报表主要内容 列名称 描述 Unique SQL Id 归一化的SQL id。 DB Name 数据库名称。 Parent Unique SQL Id 父语句的归一化SQL id,对于非存储过程子语句的场景,该值为0。 Node Name 节点名称。 User Name 用户名称。 Avg Tuples Fetched 平均随机扫描行。 Avg Tuples Returned 平均顺序扫描行。 Calls 调用次数。 Total Elapse Time(us) 总执行时间(us)。 Avg Elapse Time(us) 平均执行时间(us)。 Returned Rows SELECT返回行数。 Avg Returned Rows 平均SELECT返回行数。 Tuples Affected Insert/Update/Delete行数。 Avg Tuples Affected 平均Insert/Update/Delete行数。 Logical Read Buffer逻辑读次数。 Avg Logical Read 平均Buffer逻辑读次数。 Physical Read Buffer物理读次数。 Avg Physical Read 平均Buffer物理读次数。 CPU Time(us) CPU时间(us)。 Avg CPU Time(us) 平均CPU时间(us)。 Data IO Time(us) IO上的时间花费(us)。 Avg Data IO Time(us) 平均IO上的时间花费(us)。 Lock Wait Time(us) SQL语句的等锁时间(us)。 Avg Lock Wait Time(us) 平均每条SQL语句的等锁时间(us)。 Sort Count 排序执行的次数。 Sort Time(us) 排序执行的时间(us)。 Sort Mem Used(KB) 排序过程中使用的work memory大小(KB)。 Sort Spill Count 排序过程中,若发生落盘,写文件的次数。 Sort Spill Size(KB) 排序过程中,若发生落盘,使用的文件大小(KB)。 Hash Count hash执行的次数。 Hash Time(us) hash执行的时间(us)。 Hash Mem Used(KB) hash过程中使用的work memory大小(KB)。 Hash Spill Count hash过程中,若发生落盘,写文件的次数。 Hash Spill Size(KB) hash过程中,若发生落盘,使用的文件大小(KB)。 SQL Text 归一化SQL字符串。 父主题: WDR报告信息介绍