华为云用户手册

  • 参数说明 IF EXISTS 使用这个选项,如果视图不存在时不会产生错误,仅会有一个提示信息。 view_name 视图名称,可以用模式修饰。 取值范围:字符串,已经存在的视图名。 column_name 字段名称。 取值范围:字符串,已经存在的视图字段名。 SET/DROP DEFAULT 设置或删除一个列的缺省值,该参数暂无实际意义。 new_owner 视图新所有者的用户名称。 new_name 视图的新名称。 new_schema 视图的新模式。 view_option_name [ = view_option_value ] 该子句为视图指定一个可选的参数。 security_barrier:设置视图是否提供行级安全。取值范围为Boolean类型。缺省值为true。 check_option:控制更新视图的行为。支持参数值为CASCADED或LOCAL。该参数取值不可缺省。 expression 常量、函数或SQL表达式。
  • ADM_HIST_SQLTEXT ADM_HIST_SQLTEXT视图描述当前节点的执行语句的信息。默认只有系统管理员权限才可以访问,普通用户需要授权才可以访问。该视图同时存在PG_CATA LOG 和SYS Schema下。 WDR Snapshot启动(即GUC参数enable_wdr_snapshot为on时)后,用户可以查看此视图中的数据。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息。 表1 ADM_HIST_SQLTEXT字段 名称 类型 描述 dbid integer 数据库ID。 sql_id bigint 查询标识。 sql_text clob 查询对应文本。 command_type integer 暂不支持,值为0。 con_dbid integer 容器数据库ID,目前与dbid取值相同。 con_id integer 容器ID,目前不支持容器,值为0。 父主题: 其他系统视图
  • 注意事项 定时任务相关操作只有sql_compatibility = 'B'时支持。 用户操作(创建/修改/删除)定时任务时,非sysadmin用户需要被sysadmin用户赋予操作定时任务的权限。定时任务操作权限与高级包DBE_SCHEDULER中创建定时任务赋权操作一致。 定时任务时间间隔interval表达式目前兼容了浮点数语法,例如interval 0.5 minute,但是计算时会将浮点数取整,所以不建议interval时间间隔使用浮点数形式。 同一database下不支持同名定时任务。 定时任务中待执行语句范围是除安全相关操作以外任意SQL语句,但对于某些有约束的语句会执行失败。例如:不支持通过复合语句创建database。 定时任务待执行语句不支持的安全相关操作范围主要包括: 使用加密函数。 创建、设置用户、group。 连接数据库。 函数加密等。 定时任务指定definer选项在以下场景下会指定失败: 操作定时任务的用户不具有sysadmin权限。 当前用户与被指定definer不一致时: 指定definer为初始用户。 指定definer为运维管理员、监控管理员。 开启三权分立,enableSeparationOfDuty=on。
  • 参数说明 DEFINER 定时任务待执行语句在执行时使用的权限。默认情况下使用当前创建定时任务者的权限,当definer被指定时,使用被指定用户user的用户权限。 definer参数只有具有sysadmin权限的用户有权指定。 ON SCHEDULE 定时任务执行时刻。定时任务可以通过schedule设置为执行一次,也可以设置为执行多次: AT timestamp [+ INTERVAL interval] 表示设置定时任务只在timestamp [+ INTERVAL interval] 时间点执行一次。 EVERY interval 表示设置定时任务在每隔interval时间后重复执行。 STARTS timestamp [+ INTERVAL interval] 用户可以给可重复执行的定时任务指定起始时间,即定时任务从timestamp [+ INTERVAL interval]时刻开始执行。当此参数为空时默认从当前时刻开始执行。 ENDS timestamp [+ INTERVAL interval] 用户可以给可重复执行的定时任务指定结束时间,即定时任务从timestamp [+ INTERVAL interval]时刻停止执行。当此参数为空时默认为3999-12-31 16:00:00。 INTERVAL 时间间隔,interval由quantity数字和时间单位组成,例如1 YEAR。 ON COMPLETION [NOT] PRESERVE 默认情况下,一旦事务处于完成状态,系统表中就会立刻删除该定时任务。用户可以通过设置ON COMPLETION PRESERVE来覆盖默认行为。 ENABLE | DISABLE | DISABLE ON SLAVE 创建定时任务后,定时任务默认处于ENABLE状态,即到规定时间立即执行待执行语句。用户可以使用DISABLE关键字,改变定时任务的活动状态。DISABLE ON SLAVE表现与DISABLE一致。 COMMENT 用户可以给定时任务添加注释,注释内容在GS_JOB_ATTRIBUTE表中查看。 DO 定时任务待执行语句。 interval 时间间隔。interval的取值可以使用下划线代替TO。例如,YEAR_MONTH、DAY_HOUR等。 该参数在B兼容模式下,GUC参数b_format_version = '5.7'、b_format_dev_version = 's1'时才可使用。
  • 示例 --创建并切换至测试数据库。 gaussdb=# CREATE DATABASE test_event WITH DBCOMPATIBILITY = 'b'; gaussdb=# \c test_event --创建表。 test_event=# CREATE TABLE t_ev(num int); --创建一个执行一次的定时任务,五秒后执行一次,执行完后定时任务自动删除。 test_event=# CREATE EVENT IF NOT EXISTS event_e1 ON SCHEDULE AT sysdate + interval 5 second DO INSERT INTO t_ev VALUES(0); --五秒后查询表。 test_event=# SELECT * FROM t_ev; num ----- 0 (1 row) --创建一个每隔一分钟执行一次的定时任务。 test_event=# CREATE EVENT IF NOT EXISTS event_e2 ON SCHEDULE EVERY 1 minute DO INSERT INTO t_ev VALUES(1); --每隔一分钟查询表,会看到新增一条数据。 test_event=# SELECT * FROM t_ev; num ----- 0 1 1 (3 rows) --删除定时任务。 test_event=# DROP EVENT event_e2; --删除表。 test_event=# DROP TABLE t_ev; --切换回初始数据库,并删除测试数据库。请用真实的数据库名替换postgres。 test_event=#\c postgres gaussdb=# DROP DATABASE test_event;
  • 语法格式 CREATE [DEFINER = user] EVENT [IF NOT EXISTS] event_name ON SCHEDULE schedule [ON COMPLETION [NOT] PRESERVE] [ENABLE | DISABLE | DISABLE ON SLAVE] [COMMENT 'string'] DO event_body; schedule: 1 2 3 4 5 6 { AT timestamp [+ INTERVAL interval] ... | EVERY interval [STARTS timestamp [+ INTERVAL interval] ...] [ENDS timestamp [+ INTERVAL interval] ...] } interval: quantity {YEAR | MONTH | DAY | HOUR | MINUTE | SECOND | YEAR TO MONTH | DAY TO HOUR | DAY TO MINUTE | DAY TO SECOND | HOUR TO MINUTE | HOUR TO SECOND | MINUTE TO SECOND}
  • PG_STAT_DATABASE_CONFLI CTS PG_STAT_DATABASE_CONFLICTS视图显示数据库冲突状态的统计信息。在多租场景下,在PDB仅显示本PDB的信息。 表1 PG_STAT_DATABASE_CONFLICTS字段 名称 类型 描述 datid oid 数据库标识。 datname name 数据库名称。 confl_tablespace bigint 冲突的表空间的数目。 confl_lock bigint 冲突的锁数目。 confl_snapshot bigint 冲突的快照数目。 confl_bufferpin bigint 冲突的缓冲区数目。 confl_deadlock bigint 冲突的死锁数目。 父主题: 其他系统视图
  • 参数说明 mv_name 要创建的物化视图的名称(可以被模式限定)。 取值范围:字符串,要符合标识符命名规范。 column_name 新物化视图中的一个列名。物化视图支持指定列,指定列需要和后面的查询语句结果的列在数量上保持一致;如果没有提供列名,会从查询的输出列名中获取列名。 取值范围:字符串,要符合标识符命名规范。 WITH ( storage_parameter [= value] [, ... ] ) 该子句为表或索引指定一个可选的存储参数。详见CREATE TABLE。 TABLESPACE tablespace_name 指定新建物化视图所属表空间。如果没有声明,将使用默认表空间。 AS query 一个SELECT、TABLE 或者VALUES命令。这个查询将在一个安全受限的操作中运行。
  • 示例 --创建表空间。 gaussdb=# CREATE TABLESPACE tbs_data1 RELATIVE LOCATION 'tablespace1/tbs_data1'; --创建一个普通表。 gaussdb=# CREATE TABLE my_table (c1 int, c2 int) WITH(STORAGE_TYPE=ASTORE); --创建全量物化视图。 gaussdb=# CREATE MATERIALIZED VIEW my_mv AS SELECT * FROM my_table; --基表写入数据。 gaussdb=# INSERT INTO my_table VALUES(1,1),(2,2); --查询全量物化视图。 gaussdb=# SELECT * FROM my_mv; c1 | c2 ----+---- (0 rows) --对全量物化视图my_mv进行全量刷新。 gaussdb=# REFRESH MATERIALIZED VIEW my_mv; --查询全量物化视图。 gaussdb=# SELECT * FROM my_mv; c1 | c2 ----+---- 1 | 1 2 | 2 (2 rows) --删除全量物化视图。 gaussdb=# DROP MATERIALIZED VIEW my_mv; --删除普通表my_table。 gaussdb=# DROP TABLE my_table; --删除表空间。 gaussdb=# DROP TABLESPACE tbs_data1;
  • PG_STATIO_USER_INDEXES PG_STATIO_USER_INDEXES视图显示命名空间中所有用户关系表索引的I/O状态信息。 表1 PG_STATIO_USER_INDEXES字段 名称 类型 描述 relid oid 该索引所在的表的OID。 indexrelid oid 该索引的OID。 schemaname name 该索引的模式名。 relname name 该索引的表名. indexrelname name 索引名称。 idx_blks_read bigint 从索引中读取的磁盘块数。 idx_blks_hit bigint 索引命中缓存数。 父主题: 其他系统视图
  • 获取ODBC包以及依赖库 ODBC包以及依赖库支持两种操作系统(Linux和Windows),请用户根据实际情况进行选择。 Linux系统: 从驱动包中获取,包名为 GaussDB -Kernel_数据库版本号_操作系统版本号_64bit_Odbc.tar.gz。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql.h、sqlext.h等)和库libodbc.so。 这些头文件和库可从unixODBC-2.3.7的源码包中获得。 Windows系统: 从驱动包中获取,包名为GaussDB-Kernel_数据库版本号_Windows_X86_Odbc.tar.gz(32位)和GaussDB-Kernel_数据库版本号_Windows_X64_Odbc.tar.gz(64位)。 Windows环境下,开发应用程序用到的相关头文件和库文件由系统自带。
  • 获取驱动包 下载表1中的驱动包和驱动包校验包。 表1 驱动包下载列表 版本 下载地址 V2.0-8.x 驱动包 驱动包校验包 为了防止软件包在传递过程或存储期间被恶意篡改,下载软件包时需下载对应的校验包对软件包进行校验,校验方法如下: Linux操作系统软件包完整性校验: 上传软件包和软件包校验包到虚拟机的同一目录下。 执行如下命令,校验软件包完整性。 cat GaussDB_driver.zip.sha256 | sha256sum --check 如果回显OK,则校验通过。 GaussDB_driver.zip: OK Windows操作系统软件包完整性校验: 使用快捷键“Win+R”打开“运行”窗口。 在“打开”栏,输入“cmd”,按“Enter”回车,打开命令行页面。 执行以下命令,获取驱动包的Hash值。 certutil -hashfile {驱动包本地目录}\{驱动包名} sha256 {驱动包本地目录}:请根据实际下载目录进行替换。例如:C:\Users {驱动包名}:请根据实际下载的驱动包名进行替换。例如:GaussDB_driver.zip 示例:certutil -hashfile C:\Users\GaussDB_driver.zip sha256 将2获取到的Hash值和表1中获取到的驱动包校验包的Hash值进行比较。 若一致则通过校验。 若不一致,请重新下载驱动包,重复1~3进行校验。
  • ADM_AUDIT_TRAIL ADM_AUDIT_TRAIL显示所有标准审计跟踪条目,GaussDB审计信息主要通过gs_query_audit函数查询,该视图同时存在于PG_CATALOG和SYS schema下。仅拥有AUDITADMIN属性及ADM_AUDIT_TRAIL的SELECT权限的用户才可以查看审计信息;三权分立未开启时,拥有SYSADMIN属性的用户也可以查看审计信息。 表1 ADM_AUDIT_TRAIL字段 名称 类型 描述 os_username character varying(255) 暂不支持,值为NULL。 username character varying(128) 操作被审计的用户的名称,不是用户ID。 userhost character varying(128) 暂不支持,值为NULL。 terminal character varying(255) 暂不支持,值为NULL。 timestamp timestamp(0) without time zone 在本地数据库会话时区中创建审计跟踪条目的日期和时间(审计会话创建的条目的用户登录日期和时间)。 owner character varying(128) 受操作影响的对象的创建者。 obj_name character varying(128) 受操作影响的对象的名称。 action numeric 暂不支持,值为NULL。 action_name character varying(28) action列中的数字代码对应的action类型名称。 说明: GaussDB的action_name字段与A数据库审计动作不一致。 new_owner character varying(128) 暂不支持,值为NULL。 new_name character varying(128) 暂不支持,值为NULL。 obj_privilege character varying(32) 暂不支持,值为NULL。 sys_privilege character varying(40) 暂不支持,值为NULL。 admin_option character varying(1) 暂不支持,值为NULL。 grantee character varying(128) 暂不支持,值为NULL。 audit_option character varying(40) 暂不支持,值为NULL。 ses_actions character varying(19) 暂不支持,值为NULL。 logoff_time timestamp(0) without time zone 暂不支持,值为NULL。 logoff_lread numeric 暂不支持,值为NULL。 logoff_pread numeric 暂不支持,值为NULL。 logoff_lwrite numeric 暂不支持,值为NULL。 logoff_dlock character varying(40) 暂不支持,值为NULL。 comment_text character varying(4000) 暂不支持,值为NULL。 sessionid numeric 暂不支持,值为NULL。 entryid numeric 暂不支持,值为NULL。 statementid numeric 暂不支持,值为NULL。 returncode numeric 暂不支持,值为NULL。 priv_used character varying(40) 暂不支持,值为NULL。 client_id character varying(128) 暂不支持,值为NULL。 econtext_id character varying(64) 暂不支持,值为NULL。 session_cpu numeric 暂不支持,值为NULL。 extended_timestamp timestamp(6) with time zone 创建审计跟踪条目的时间戳(创建条目的用户登录时间戳UTC(协调通用)中的审计会话时间)时区。 proxy_sessionid numeric 暂不支持,值为NULL。 global_uid character varying(32) 暂不支持,值为NULL。 instance_number numeric 暂不支持,值为NULL。 os_process character varying(16) 暂不支持,值为NULL。 transactionid text 访问或修改对象事务的事务标识符。 说明: GaussDB的transactionid字段与A数据库中transactionid数据的类型保持一致。 scn numeric 暂不支持,值为NULL。 sql_bind nvarchar2(2000) 暂不支持,值为NULL。 sql_text nvarchar2 查询的SQL文本。 说明: GaussDB的sql_text字段为解析后的SQL描述语句,不完全与执行的SQL语句相同。 obj_edition_name character varying(128) 暂不支持,值为NULL。 dbid numeric 暂不支持,值为NULL。 rls_info clob 暂不支持,值为NULL。 current_user character varying(128) 暂不支持,值为NULL。 父主题: 审计
  • 操作步骤 收集SQL中涉及到的所有表的统计信息。在数据库中,统计信息是优化器生成计划的源数据。没有收集统计信息或者统计信息陈旧往往会造成执行计划严重劣化,从而导致性能问题。从经验数据来看,10%左右性能问题是因为没有收集统计信息。具体请参见更新统计信息。 通过查看执行计划来查找原因。如果SQL长时间运行未结束,通过EXPLAIN命令查看执行计划,进行初步定位。如果SQL可以运行出结果,则推荐使用EXPLAIN ANALYZE或EXPLAIN PERFORMANCE查看执行计划及实际运行情况,以便更精确地定位问题原因。有关执行计划的详细介绍请参见SQL执行计划介绍。 审视和修改表定义。 针对EXPLAIN或EXPLAIN PERFORMANCE信息,定位SQL慢的具体原因以及改进措施,具体请参见典型SQL调优点。 通常情况下,有些SQL语句可以通过查询重写转换成等价的,或特定场景下等价的语句。重写后的语句比原语句更简单,且可以简化某些执行步骤达到提升性能的目的。查询重写方法在各个数据库中基本是通用的。经验总结:SQL语句改写规则介绍了几种常用的通过改写SQL进行调优的方法。 如果使用上述常规手段无法分析慢SQL根因的场景,还可以通过使用plan trace特性来分析慢SQL根因,具体请参见PLAN TRACE使用介绍。
  • PG_DATABASE PG_DATABASE系统表存储关于可用数据库的信息。 表1 PG_DATABASE字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 datname name 数据库名称。 datdba oid 数据库所有人,通常为其创建者。 encoding integer 数据库的字符编码方式。 datcollate name 数据库使用的排序顺序。 datctype name 数据库使用的字符分类。 datistemplate boolean 是否允许作为模板数据库。 datallowconn boolean 如果为真,表示用户可以连接到这个数据库。如果为假,则没有用户可以连接到这个数据库。这个字段用于保护template0/templatea数据库不被更改。 datconnlimit integer 该数据库上允许的最大并发连接数,-1表示无限制。 datlastsysoid oid 数据库里最后一个系统OID 。 datfrozenxid xid32 用于跟踪该数据库是否需要为了防止事务ID重叠而进行清理。当前版本该字段已经废弃使用,为保持前向兼容,保留此字段,新增datfrozenxid64用于记录此信息。 dattablespace oid 数据库的缺省表空间。 datcompatibility name 数据库兼容模式,当前支持五种兼容模式:A、B、C、M、PG,分别表示兼容O、MY、TD、M-Compatibility和POSTGRES。 datacl aclitem[] 访问权限。 datfrozenxid64 xid 用于跟踪该数据库是否需要为了防止事务ID重叠而进行清理。 datminmxid xid 该数据库中所有在这个之前的多事务ID已经被一个事务ID替换。这用于跟踪该数据库是否需要为了防止事务ID重叠或者允许收缩pg_clog而进行清理。它是此数据库中所有表的13.2.15.27 PG_CLASS中relminmxid的最小值。 dattimezone name 数据库时区信息,默认为PRC时区。 dattype "char" 数据库类型。 D:普通数据库。 P:PDB。 父主题: 其他系统表
  • 参数 表1 SQLSetConnectAttr参数 关键字 参数说明 ConnectionHandle 连接句柄。 Attribute 设置属性。 ValuePtr 指向对应Attribute的值。依赖于Attribute的值,ValuePtr是32位无符号整型值,或指向以空结束的字符串,二进制缓冲区,或者驱动定义值。如果ValuePtr参数是驱动程序指定值,ValuePtr可能是有符号的整数。 StringLength 如果ValuePtr指向字符串或二进制缓冲区,则这个参数是*ValuePtr长度,如果ValuePtr指向整型,忽略StringLength。
  • 原型 1 2 3 4 SQLRETURN SQLSetConnectAttr(SQLHDBC ConnectionHandle, SQLINTEGER Attribute, SQLPOINTER ValuePtr, SQLINTEGER StringLength);
  • GS_MY_PLAN_TRACE GS_MY_PLAN_TRACE是系统表GS_PLAN_TRACE的视图,该视图主要用来查看当前用户的plan trace。 表1 GS_MY_PLAN_TRACE字段 名称 类型 描述 query_id text 当前请求的唯一id。 query text 当前请求的sql语句,该字段大小不会超过系统参数track_activity_query_size指定的大小。 unique_sql_id bigint 当前请求sql的唯一id。 plan text 当前请求sql对应的查询计划文本。该字段大小不会超过10K。 plan_trace text 当前请求sql对应的查询计划生成过程的明细,该字段大小不会超过300M。 modifydate timestamp with time zone 当前plan trace的更新时间(当前指的是 plan trace创建时间)。 父主题: 其他系统视图
  • 算子说明 哈希连接(Hash Join)是一种高效的连接方法,它依赖于哈希技术。在进行哈希连接时,GaussDB会先选取两个表中的一个(通常是小表),接下来根据连接条件,建立一个哈希表。哈希表的键是小表的连接字段,值是小表的其他字段。然后,对于大表中的每一行,计算连接字段的哈希值,并在哈希表中查找是否有匹配的行。 Hash Join的时间复杂度为O(n+m), 其中n和m分别代表两个表的行数。然而,如果内部表过大,以至于哈希表无法完全放入内存,则可能需要额外的磁盘I/O操作,这会导致性能降低。
  • WORKLOAD_TRANSACTION 当前节点上负载的事务信息,如表1所示。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息。 表1 WORKLOAD_TRANSACTION字段 名称 类型 描述 workload name 负载的名称。 commit_counter bigint 用户事务commit数量。 rollback_counter bigint 用户事务rollback数量。 resp_min bigint 用户事务最小响应时间(单位:微秒)。 resp_max bigint 用户事务最大响应时间(单位:微秒)。 resp_avg bigint 用户事务平均响应时间(单位:微秒)。 resp_total bigint 用户事务总响应时间(单位:微秒)。 bg_commit_counter bigint 后台事务commit数量。 bg_rollback_counter bigint 后台事务rollback数量。 bg_resp_min bigint 后台事务最小响应时间(单位:微秒)。 bg_resp_max bigint 后台事务最大响应时间(单位:微秒)。 bg_resp_avg bigint 后台事务平均响应时间(单位:微秒)。 bg_resp_total bigint 后台事务总响应时间(单位:微秒)。 dbid oid 数据库标识。 父主题: Workload
  • 运维管理员 运维管理员是指具有OPRADMIN属性的账户,具有使用Roach工具执行备份恢复的权限。 要创建新的运维管理员,请以初始用户身份连接数据库,并使用带OPRADMIN选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER opradmin WITH OPRADMIN password "********"; 或者 1 gaussdb=# ALTER USER joe OPRADMIN; ALTER USER时,要求用户已存在。
  • 安全策略管理员 安全策略管理员是指具有POLADMIN属性的账户,具有创建资源标签、脱敏策略和统一审计策略的权限。 要创建新的安全策略管理员,请以系统管理员用户身份连接数据库,并使用带POLADMIN选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER poladmin WITH POLADMIN password "********"; 或者 1 gaussdb=# ALTER USER joe POLADMIN; ALTER USER时,要求用户已存在。
  • 初始用户 数据库安装过程中自动生成的账户称为初始用户。初始用户也是系统管理员、监控管理员、运维管理员和安全策略管理员,拥有系统的最高权限,能够执行所有的操作。如果安装时不设置初始用户名称,则该账户与进行数据库安装的操作系统用户同名。如果在安装时不设置初始用户的密码,安装完成后密码为空,在执行其他操作前需要通过gsql客户端修改初始用户的密码。如果初始用户密码为空,则除修改密码外无法执行其他SQL操作以及升级、扩容、节点替换等操作。 初始用户的oid为10,可以通过gs_roles视图查询。 初始用户会绕过所有权限检查。建议仅将初始用户作为DBA管理用途,而非业务应用。
  • 安全管理员 安全管理员是指具有CREATEROLE属性的账户,具有创建、修改、删除用户或角色的权限,和授予或者撤销任何非系统管理员、内置角色、永久用户、运维管理员的权限。 要创建新的安全管理员,三权分立关闭时,请以系统管理员或者安全管理员身份连接数据库。三权分立打开时,请以安全管理员身份连接数据库,并使用带CREATEROLE选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER createrole WITH CREATEROLE password "********"; 或者 1 gaussdb=# ALTER USER joe CREATEROLE; ALTER USER时,要求用户已存在。
  • 监控管理员 监控管理员是指具有MONADMIN属性的账户,具有查看dbe_perf模式下视图和函数的权限,亦可以对dbe_perf模式的对象权限进行授予或收回。 要创建新的监控管理员,请以系统管理员身份连接数据库,并使用带MONADMIN选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER monadmin WITH MONADMIN password "********"; 或者 1 gaussdb=# ALTER USER joe MONADMIN; ALTER USER时,要求用户已存在。
  • 系统管理员 系统管理员是指具有SYSADMIN属性的账户,默认安装情况下具有与对象所有者相同的权限,但不包括dbe_perf模式的对象权限。 要创建新的系统管理员,请以初始用户或者系统管理员身份连接数据库,并使用带SYSADMIN选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER sysadmin WITH SYSADMIN password "********"; 或者 1 gaussdb=# ALTER USER joe SYSADMIN; ALTER USER时,要求用户已存在。
  • 审计管理员 审计管理员是指具有AUDITADMIN属性的账户,具有查看和删除审计日志的权限。 要创建新的审计管理员,三权分立关闭时,请以系统管理员或者安全管理员身份连接数据库。三权分立打开时,只能以初始用户身份连接数据库,并使用带AUDITADMIN选项的CREATE USER语句或ALTER USER语句进行设置。 1 gaussdb=# CREATE USER auditadmin WITH AUDITADMIN password "********"; 或者 1 gaussdb=# ALTER USER joe AUDITADMIN; ALTER USER时,要求用户已存在。
  • GS_LOGICAL_ENUM GS_LOGICAL_ENUM系统表存储了每个枚举类型值和标签的记录。 表1 GS_LOGICAL_ENUM 字段名称 字段类型 说明 enumid oid 行标识符。 enumtypid oid 拥有这个枚举值的PG_TYPE记录的OID。 enumlabel name 这个枚举值的文本标签。 enumsortorder real 这个枚举值在它的枚举类型中的排序位置。 dbnode oid 数据库OID。 originid integer 元组的来源标识符。 createtime timestamp with time zone 插入元组的时间戳。 csnmin bigint 插入元组时的 CS N(提交序列号)。 csnmax bigint 更新或删除元组时的 CSN。 父主题: 逻辑解码
  • GS_SEG_SPC_SEGMENTS GS_SEG_SPC_SEGMENTS获取所有表空间已使用的段信息。只支持管理员权限用户查询。 表1 GS_SEG_SPC_SEGMENTS字段 名称 类型 描述 node_name text 节点名称。 tablespace_name name 表空间名称。 file_id integer 数据文件标识。取值范围:[1,5]的int4值。 bucketnode integer 0~1023表示hashbucket表的bucketnode。 1024表示段页式普通表的bucketnode。 1025表示段页式全局临时表的bucketnode。 1026表示段页式unlogged表的bucketnode。 1027表示段页式本地临时表的bucketnode。 forknum integer 段对象的分支类型,取值范围: 0表示main fork。 1表示fsm fork。 2表示vm fork。 block_id bigint 数据扩展的起始页面号。 blocks integer 数据扩展大小,取值:1,8,128,1024,4096。 contents text 数据文件的存储内容,取值范围: permanent:永久。 unlogged:不记录日志。 temporary:全局临时。 temporary2:本地临时。 in_used text 是否已分配,取值Y/N。 mapblock_location text 扩展在map block中的位置,格式:(page_id, offset)。 head_file_id integer 段头文件标识。 head_block_id bigint 段头页面号。 usage_type text 扩展的使用类型,取值范围: segment head表示段头。 fork head表示分支头。 level1 page表示level页面。 data extent表示数据扩展。 remain_flag text 是否为shrink残留扩展,取值Y/N。 special_data integer 扩展对应反向指针的特殊数据区。 ipblock_location text 扩展反向指针位置,格式:(block_id, offset)。 父主题: 段页式存储
  • ADM_COL_PRIVS ADM_COL_PRIVS视图显示所有的列权限授予信息。默认只有系统管理员权限才可以访问此系统视图,普通用户需要授权才可以访问。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 ADM_COL_PRIVS字段 名称 类型 描述 grantor character varying(128) 执行授权的用户名。 owner character varying(128) 对象的所有者。 grantee character varying(128) 被授予权限的用户或角色的名称。 table_schema character varying(128) 对象的schema。 table_name character varying(128) 对象的名称。 column_name character varying(128) 列的名称。 privilege character varying(40) 列的权限。 grantable character varying(3) 是否授予特权。 YES:授予。 NO:不授予。 common character varying(3) 暂不支持,值为NULL。 inherited character varying(3) 暂不支持,值为NULL。 父主题: 用户和权限管理
共100000条
提示

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