首批通过分布式安全可靠测评,为关键业务系统打造
修改租户系统变量
更新时间:2023-08-03 17:19:51
通过系统变量的设置可以使 OceanBase 数据库的行为符合业务的要求。本文介绍如何修改租户系统变量。
租户的系统变量可以通过 SET 语句修改。
设置 Session 级别的变量仅对当前 Session 有效,对其他 Session 无效。
设置 Global 级别的变量对当前 Session 无效,需要重新登录后,建立新的 Session 才会生效。
注意
设置 Global 级别变量要求当前用户拥有 SUPER 权限或 ALTER SYSTEM 权限。设置前,请确认您的权限。用户权限的详细说明,参见 用户权限概述。
下文示例中的系统变量 ob_query_timeout 用于设置对 SQL 语句进行查询操作的超时时间,单位是微秒。在进行大数据查询操作时,就可以通过调大系统变量 ob_query_timeout 的值,避免查询超时导致语句执行失败。
修改 Session 级别的系统变量
使用 root 用户登录到集群的用户租户。
以登录
mq_t1租户为例:obclient -h172.30.xx.xx -P2883 -uroot@mq_t1#cluster -p**** -A查询租户 Session 级别的系统变量。
obclient [(none)]> SHOW VARIABLES LIKE 'ob_query_timeout'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | ob_query_timeout | 10000000 | +------------------+----------+ 1 row in set通过
SET修改 Session 级别变量值。obclient [oceanbase]> SET ob_query_timeout = 20000000; Query OK, 0 rows affected说明
Oracle 模式还可以通过
ALTER SESSION SET ob_query_timeout = 20000000;语句修改 Session 级别的变量值。查看修改结果。
obclient [(none)]> SHOW VARIABLES WHERE variable_name LIKE 'ob_query_timeout'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | ob_query_timeout | 20000000 | +------------------+----------+ 1 row in set
修改 Global 级别的系统变量
使用 root 用户登录到集群的用户租户。
以登录
mq_t1租户为例:obclient -h172.30.xx.xx -P2883 -uroot@mq_t1#cluster -p**** -A查询租户的 Global 变量。
obclient [(none)]> SHOW GLOBAL VARIABLES WHERE variable_name LIKE 'ob_query_timeout'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | ob_query_timeout | 10000000 | +------------------+----------+ 1 row in set通过
SET修改 Global 级别变量值。obclient [oceanbase]> SET GLOBAL ob_query_timeout = 20000000; Query OK, 0 rows affected说明
Oracle 模式还可以通过
ALTER SYSTEM SET ob_query_timeout = 20000000;语句修改 Global 级别的变量值。查看修改结果。
obclient [(none)]> SHOW GLOBAL VARIABLES WHERE variable_name LIKE 'ob_query_timeout'; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | ob_query_timeout | 20000000 | +------------------+----------+ 1 row in set
修改布尔类型变量
在 SHOW VARIABLES 命令中显示 ON/OFF 的变量,可以通过如下任意方法设置变量值:
SET foreign_key_checks = ON;
SET foreign_key_checks = TRUE;
SET foreign_key_checks = 1;
SET GLOBAL foreign_key_checks = OFF;
SET GLOBAL foreign_key_checks = FALSE;
SET GLOBAL foreign_key_checks = 0;
说明
通过 ON/OFF、TRUE/FALSE 或 1/0 三种方式进行布尔类型变量的设置是等效的。
相关文档
关于系统变量的更多信息,参见: