GaussDB T 命令速查:如何通过 ALTER SYSTEM 修改参数执行文件转储

网友投稿 1068 2022-05-29

ALTER SYSTEM

功能描述

修改数据库系统参数。

注意事项

执行该语句的用户需要有ALTER SYSTEM系统权限。

语法格式

ALTER SYSTEM

{   DUMP DATAFILE file_id PAGE page_id

| SWITCH LOGFILE

| SET parameter_name = parameter_value [ SCOPE = { MEMORY | PFILE | BOTH } ]

| LOAD DICTIONARY FOR [ schema_name.]object_name

| INIT DICTIONARY

GaussDB T 命令速查:如何通过 ALTER SYSTEM 修改参数执行文件转储

| RELOAD HBA CONFIG

| REFRESH SYSDBA PRIVILEGE

| KILL SESSION ‘session_id,serial’

| RESET STATISTIC

| CHECKPOINT

| { ADD | DELETE } LSNR_ADDR LISTENING_IP

| ADD HBA ENTRY hba_conf_entry

| FLUSH {BUFFER | SQLPOOL}

| DUMP ctrlfile

}

参数说明

DUMP DATAFILE file_id PAGE page_id

dump指定数据文件page页。

file_id

文件编号,正整数,取值范围[0, 2147483648)。

page_id

页编号,正整数,取值范围[0, 2147483648)。

SWITCH LOGFILE

切换LOGFILE。

SET parameter_name = parameter_value [ SCOPE = { MEMORY | PFILE | BOTH } ]

设置系统参数。SCOPE为可选参数,指定参数写入范围。SCOPE指定为PFILE和BOTH时,参数将被保存在Zenith.ini配置文件中。如果不设置SCOPE选项,默认为BOTH。

如果不设置SCOPE选项,默认为BOTH。

MEMORY:只在内存上修改,立即生效,但重启后将不再生效。此修改方式只适用于动态参数,不允许静态参数使用此模式设置。

PFILE:此更改写入初始化参数文件,更改将在下次启动时生效。动态参数与静态参数都一样可以。也是静态参数唯一可以使用的方式。

BOTH:既写入到初始化参数文件,也在内存上修改,立即生效。同样也只适用于动态参数,静态参数则不允许。

LOAD DICTIONARY FOR [schema_name].object_name

加载对象到数字字典中。

INIT DICTIONARY

加载除系统表以外的其余类型entry(系统视图,动态视图,sequence,role等)。

执行条件:进入restricted模式且所有系统表已经通过ALTER SYSTEM LOAD DICTIONARY FOR [schema_name].object_name语句加载。

RELOAD HBA CONFIG

在线加载zhba.conf文件,从而使用户白名单生效。

REFRESH SYSDBA PRIVILEGE

在线刷新sysdba免密登录的密文、加密密钥。不会影响当前连接的客户端,其他客户端连接会使用新的密钥进行免密登录认证。

KILL SESSION ‘session_id,serial’

kill会话,session_id是会话ID,serial是序列号ID。

RESET STATISTIC

清理动态视图DV_SYS_STATS下的计数。

CHECKPOINT

为当前实例执行检查点,确保将已提交事务所做的所有更改写入磁盘的数据文件。

{ ADD | DELETE } LSNR_ADDR LISTENING_IP

增加或者删除一个监听IP地址。该配置立即生效。当前GaussDB 100最大支持8个监听IP地址。

增加一个不存在网卡IP地址作为浮动监听IP的时候,直接返回报错。

删除一个正在使用的监听IP地址的时候,通过该IP地址建立的会话连接会被断连,其业务会做回滚。

ADD HBA ENTRY hba_conf_entry

向用户白名单文件zhba.conf中增加一条用户白名单并在线生效。

FLUSH BUFFER

清空数据库的缓存数据。

FLUSH SQLPOOL

清空SQLPOOL的缓存数据。

示例

切换LOGFILE。

ALTER SYSTEM SWITCH LOGFILE;

修改参数UNDO_RETENTION_TIME的值为1200秒,只在内存上修改,立即生效。

–查询参数UNDO_RETENTION_TIME的当前值。

SHOW PARAMETER UNDO_RETENTION_TIME

–修改参数UNDO_RETENTION_TIME的值。

ALTER SYSTEM SET UNDO_RETENTION_TIME=1200 SCOPE=MEMORY;

加载表education到数据字典中。

–删除表education。

DROP TABLE IF EXISTS education;

–创建表education。

CREATE TABLE education(staff_id INT, higest_degree CHAR(8) NOT NULL, graduate_school VARCHAR(64), graduate_date DATETIME, education_note VARCHAR(70));

–加载表education到数据字典中。

ALTER SYSTEM LOAD DICTIONARY FOR education;

加载除系统表以外的其余类型entry(系统视图,动态视图,sequence,role等)。

进入restricted模式且所有系统表已经通过ALTER SYSTEM LOAD DICTIONARY FOR [schema_name].object_name 语句加载后才能执行此操作。

ALTER SYSTEM INIT DICTIONARY;

在线加载zhba.conf文件。

ALTER SYSTEM RELOAD HBA CONFIG;

在线刷新sysdba免密登录的密文、加密密钥。

ALTER SYSTEM REFRESH SYSDBA PRIVILEGE;

清理动态视图DV_SYS_STATS下的计数。

ALTER SYSTEM RESET STATISTIC;

为当前事务设置检查点。

ALTER SYSTEM CHECKPOINT;

GaussDB

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《Python大规模机器学习》 —1 迈向可扩展性的第一步
下一篇:linux之内核剖析
相关文章