第六章:参数和变量

参数管理

管理范围:通过集群参数的设置可以控制集群的负载均衡、合 并时间、合并方式、资源分配和模块开关等功能。

参数生效:参数分为动态生效和重启生效两类,大部分为动态生效。

参数级别:参数分为集群级别和租户级别,大部分为集群参数。

管理权限:系统租户可以查看和设置所有其他租户的参数 (包 括 sys 租户),普通租户只能设置自己租户的参数。

当 OBServer 启动后,如果没有指定参数,使用系统指定的参数Default 值。在OBServer 进程启动成功后,参数值持久化到 /home/admin/oceanbase/etc/observer.config.bin 文件中,可以通strings 命令来查看内容。

集群参数查询

系统租户查询集群参数语法

show parameters [SHOW_PARAM_OPTS] [tenant='tenant‘]

普通租户查询集群参数语法

show parameters [SHOW_PARAM_OPTS]

列名含义
Zone所在的zone
svr_ip机器IP
svr_port机器端端口
name配置项名
value配置项值
data_type配置项数据类型
info配置项解释(描述了Parameter的意义和取值范围)
scope配置项范围属性(Tenant/Cluster)
scource当前值来源(Tenant|Cluster|CommandLine|ObAdmin|File)
edit_leveldynamic_effective(动态生效)/static_effective(重启后生效)

集群参数设置

集群参数修改语句的语法如下所示,同时修改多个系 统配置项时,请用逗号(,)隔开:

ALTER SYSTEM SET param_name = expr [COMMENT 'text’] [PARAM_OPTS] [TENANT = 'tenantname’]

PARAM_OPTS: [ZONE='zone' | SERVER='server_ip:rpc_port’]

如果不带任何条件,则修改所有OB Server的值。

ALTER SYSTEM 语句不能同时指定Zone 和 Server。如指定Zone,仅能指定一个Zone,如果指定 Server,只能指定一个 Server。

集群级别的配置项(Scope) 不能通过普通租户设定,也不可以通过 sys 租户指定普通租户进行设定。例如, alter system set memory_limit=‘100G’ tenant=‘test_tenant’ 将导致报错,因为 memory_limit 是集群级别(scope)的配置项。

常用的OB系统配置项(合并相关)

配置项默认值说明
zone_merge_timeout3h

单个ZONE合并的超时时间

取值范围:[1s+]

freeze_trigger_percentage70

触发合并时,memstore使用的百分比

取值范围:(0,100)

enable_manual_mergeFALSE

是否开启手动合并

True开启,False不开启

如果这个值为True,则认为DBA关闭自动合并

major_freeze_duty_time02:00

每日定时合并任务的启动时间

取值范围:[00:00,24:00]

常用的OB系统配置项(syslog相关)

配置项默认值说明
syslog_levelINFO日志级别:DEBUG,TRACE,INFO,WARN,ERROR
enable_syslog_recycleFALSE是否打开自动控制日志的开关,配合max_syslog_count生效
max_syslog_file_count0

指定最多同时存在多少个日志文件

每个日志文件占用256M空间

trace_log_slow_query_waterwork100ms

打印trace log慢查询控制阈值

取值范围:[1ms,+]

syslog_io_bandwidth_limit30MB系统日志(syslog)IO带宽限流
enable_syslog_wfTRUE是否单独保存Warning以上日志级别的日志到文件中

常用的OB系统配置项(内存相关)

配置项默认说明
minor_freeze_times0两次合并之间的转储上限次数
large_query_threshold100ms

大查询判定条件

取值范围:[1ms+]

large_query_worker_percentage30

大查询分配资源百分比

取值范围:[0,100]in percentage

memory_limit_percentage80

内存使用上限

取值范围:[10,90]

常用的OB系统配置项(其他)

配置项默认说明
server_permanent_offline_time3600s

服务器永久下线时间

取值范围:[20s+]

enable_auto_leader_switchTRUE允许系统自动切主
clog_sync_warn_threshold100mscommitlog同步超过多长时间报WARN日志
enable_sql_auditTRUE

是否开启sql审计功能,默认值为TRUE,表示开启SQL审计功能

取值为TRUE,FALSE

sql_audit_memory_limit10%内存开启SQL审计功能状态下,SQL审计内部表最大可用内存,默认为10%内存。取值范围:[64M+]

变量Variables,与业务租户相关

控制租户全局(global)级别或者会话(session)级别的属性,大部分动态生效,少部分需要重建连接 查看variables

show variables;

show variables like '%<pattern>%’;

修改variables

set @@session. <name>=<value> ;

set @@global.<name>=<value>;

Session variables vs Global variables

会话变量:Session级修改 (只对本会话生效)。当客户端连接到数据库后,数据库会复 制全局变量以自动生成会话变量。会话变量的修改只对当前会话生效。

set ob_trx_timeout=200000000

全局变量:Global 级 (租户级) 修改 (不会随会话退出而失效)数据库实例共享全局变 量。这意味着不同用户共享这些全局变量,且数据库会保存您对全局变量做出的更改, 断开连接并再次进入数据库时,更改依旧有效。

set global ob_trx_timeout = 200000000

对当前已经打开的session不生效

需要重新建立session

常用的OB系统变量 (Variables)

配置项默认值说明属性
ob_query_timeout10000000查询超时时间GLOBAL|SESSION
ob_trx_timeout100000000事务超时时间GLOBAL|SESSION
ob_read_consistencySTRONG读一致性级别GLOBAL|SESSION
ob_enable_truncate_flashbackONtruncate table是否会进回收站受该参数控制GLOBAL|SESSION
lower_case_table_names1

是否大小写敏感

1:大小写不敏感

0:大小写敏感

GLOBAL|SESSION|READONLY

ob_timestamp_service:跟Google Spanner 的TrueTime意思差不多,通过这个服务,OB可以实现 集群租户级别的全局一致性。

set global ob_timestamp_service=‘GTS’

set global ob_timestamp_service=‘LTS’

ODC管理会话功能支持查看和修改会话属性

                         

ODC 提供了可视化界面,可以清晰直观的查看与修改当前数 据库支持的变量。对于变量值的修改:

如果变量的值是字符或数字类型,可以在变量编辑页面中直接输入修改值。

如果变量的值是枚举类型,ODC会在变量值的编辑框中列举出该变量支持的值的集合,用户可以在不用准确记忆变量名和值的情况下通过可视化界面完成修改,这降低了用户记忆变量的成本并提高了变量修改的效率。

ODC 会使用橙色标记修改过的数据库变量,以方便您更直观的管理变量

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
《C Primer》是一本针对C语言初学者的经典教材,第五版的第六章主要介绍了函数的基本概念和用法。 在第六章中,教材首先介绍了函数的定义和调用。函数是具有独立功能的代码块,可以通过函数名来调用。函数由函数头、参数、函数体和返回值组成。函数头包括函数类型、函数名和参数类型,参数用于接收传递给函数的值,返回值用于将结果返回给调用者。 接着,教材详细介绍了函数的参数传递方式,包括按值传递、按引用传递和按指针传递。按值传递是指将参数的值复制给形参,按引用传递是指将参数的引用传递给形参,而按指针传递是将参数的地址传递给形参。不同的传递方式在函数内部对参数进行操作时,会对应不同的结果。 此外,教材还讲解了函数的返回值和函数的调用顺序。函数的返回值类型由函数头中的类型确定,可以是任意类型。当函数需要返回多个值时,可以使用结构体或指针进行返回。函数的调用顺序决定了函数执行的顺序,即哪个函数先执行,哪个函数后执行。 在函数的实现过程中,教材介绍了函数的定义和声明、局部变量全局变量、递归等内容。通过这些知识点的学习,读者可以了解到函数的具体细节和一些实践技巧。 总的来说,第五版的第六章通过清晰的语言和丰富的例子,循序渐进地讲解了函数的基本概念和用法。学完这一章,读者将能够理解函数的定义、调用、参数传递、返回值和实现等方面的知识,为之后的学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯西极限存在准则

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值