OB有问必答 | 参数和变量的区别是什么?

简介: OceanBase 的参数和变量设置方式常让初学者很迷惘,实际掌握其实并不难,下面就为大家展开介绍

OceanBase 的参数和变量设置方式常让初学者很迷惘,实际掌握其实并不难。下面就为大家展开介绍。

首先说参数和变量的区别。参数(parameter)是 ORACLE 的叫法,变量(variable)是 MySQL 的叫法,在 OceanBase 里这两种概念和修改方法都存在,跟 ORACLE 和 MySQL 基本保持一致。通常集群级别的设置用参数,租户级别的设置用变量。参数查看方式是 show parameters,变量查看方式是 show [global|session] variables 。在参数或变量的定义中,有初步的涵义说明。

第二说作用域。通常参数的作用域是集群级别,变量的作用域是租户级别。参数和变量通常是针对不同的行为做设置。变量的设置在具体的租户里设置,参数的设置在 sys 租户里设置,影响 sys 的行为就是影响这个集群的行为。所以这并不是说参数的值在所有租户都可以见。参数的作用域还可以指定生效的节点。默认是所有节点(就是集群级别了)。同时参数的作用域还可以是租户级别,需要指定组户名。这是 sys 租户里参数设置的特权,可以管理其他租户的参数设置。这种效果跟到租户里去设置这个参数效果是一样的(在具体的租户里设置就不需要指定组户名)。

第三说生效时间。大部分参数的设置是立即生效的,极少数参数修改需要重启节点或集群。变量的设置生效时间则有点复杂,取决于变量的设置方法。比如说是租户全局级别设置、会话级别设置、语句级别设置。如果是全局级别的变量设置,老的会话的变量不会变化,只有新建会话的变量设置才会生效;如果是会话级别的变量设置,该会话里立即生效,但是会话断开重连后,所有变量又读取了全局级别的默认变量设置。语句级别的变量设置主要是以 Hint 形式存在,只影响当前语句并是立即生效。

第四说参数的设置方法。参数的设置通常是通过 alter system set xxx 方式修改,也可以通过节点进程启动时指定(指 OBServer 启动参数 -o 里指定的)。即使启动时指定了参数,后期也是可以修改的。

第五说变量的设置方法。变量的设置方法通常是通过 set [global] xxx 方式修改。大部分变量都可以反复修改,极少数变量属于初始化变量(如字符集),只能在实例初始化的时候指定一次,后期不能再修改。还有一招是在 sys 租户里设置其他租户的变量,方法是 alter tenant xxx set yyyy,这种效果相当于租户全局级别的变量设置。

第六说参数和变量的持久化。参数的修改会写到 sys 租户视图__all_virtual_sys_parameter_stat 中和 OBServer 的参数文件中,下次重启节点时会读取。变量的修改只要是全局级别的修改,都会写到租户的内部视图 __all_sys_variable 中。

相关文章
|
SQL 缓存 关系型数据库
OBCP题目及解析
OBCP题目及解析
1332 0
|
存储 算法 关系型数据库
深入理解InnoDB索引数据结构和算法
1. **索引定义**:索引是提升查询速度的有序数据结构,帮助数据库系统快速找到数据。 2. **索引类型**:包括普通索引、唯一索引、主键索引、空间索引和全文索引,每种有特定应用场景。 3. **数据结构**:InnoDB使用B+树作为索引结构,确保所有节点按顺序排列,降低查询时的磁盘I/O。 4. **B+树特性**:所有数据都在叶子节点,非叶子节点仅存储索引,提供高效范围查询。 5. **索引优势**:通过减少查找数据所需的磁盘I/O次数,显著提高查询性能。 **总结:**InnoDB索引通过B+树结构,优化了数据访问,使得查询速度快,尤其适合大数据量的场景。
791 0
深入理解InnoDB索引数据结构和算法
|
负载均衡 安全 Java
深入了解Spring Cloud Gateway:构建高效微服务网关
Spring Cloud Gateway是一个强大的微服务网关,它在现代分布式架构中扮演着至关重要的角色。本文将深入介绍Spring Cloud Gateway的核心概念、功能和用途,以帮助您更好地理解和利用这一工具来构建高效的微服务应用。
|
5月前
|
Kubernetes 安全 异构计算
K8S 部署 Deepseek 要 3 天?别逗了!Ollama+GPU Operator 1 小时搞定
最近一年我都在依赖大模型辅助工作,比如 DeepSeek、豆包、Qwen等等。线上大模型确实方便,敲几个字就能生成文案、写代码、做表格,极大提高了效率。但对于企业来说:公司内部数据敏感、使用外部大模型会有数据泄露的风险。
K8S 部署 Deepseek 要 3 天?别逗了!Ollama+GPU Operator 1 小时搞定
|
Web App开发 弹性计算
阿里云ECS云服务器系统盘不够用怎么办?磁盘扩容功能了解一下
阿里云ECS云服务器默认搭配的是40G的系统盘,系统盘不够用怎么办?云服务器吧告诉大家ECS系统盘支持磁盘扩容更能,无需更换系统盘,一键扩容: ECS云服务器磁盘扩容 以前ECS云服务器系统盘不够用,是通过更换系统盘来实现的,更换系统盘时通过更换一个新的磁盘,选择一个镜像的方式来扩容,老的磁盘会被释放,十分麻烦。
15428 1
|
关系型数据库 MySQL 调度
DataX教程(05)- DataX Web项目实践
DataX教程(05)- DataX Web项目实践
2326 0
|
弹性计算 负载均衡 监控
阿里云aca考试大纲 分享阿里云aca题库及答案
现在云计算云服务是高新技术的重要发展发现之一,阿里云长期占有国内的最大市场份额,因此考取阿里云认证也成为想入行的技术人员努力争取的目标,今天就分享阿里云aca题库及答案.希望能帮更多人实现理想。
3950 1
阿里云aca考试大纲 分享阿里云aca题库及答案
|
监控
Chrony命令如何使用
【5月更文挑战第15天】Chrony命令如何使用
591 3
|
存储 Oracle 关系型数据库
RAC创建ASM磁盘组时配置多路径和UDEV
RAC创建ASM磁盘组时配置多路径和UDEV
2794 7
|
SQL 关系型数据库 MySQL
MySQL数据库——视图-检查选项(cascaded、local)
MySQL数据库——视图-检查选项(cascaded、local)
561 0