概述
本章,您将了解到 NDB Cluster 存储引擎的常见系统变量。
社区版 MySQL Server 中的系统变量
众所周知,在常规社区版的 MySQL 中,可通过以下方式查看所有系统变量:
# 查看当前会话中的所有系统变量,其中 session 关键字已被省略
MySQL > show variables;
# 对当前会话的系统变量使用模糊查询进行筛选,% 表示通配符
MySQL > show session variables like '%client';
# 查看所有的全局系统变量
MySQL > show global variables;
# 查看特定会话系统变量的值,其中 session 关键字可被忽略。查看全局系统变量的值可将 session 替换为 global
MySQL > select @@session.character_set_client;
NDB Cluster 中的系统变量
这里的系统变量仅适用于 NDB 存储引擎。
首先按照先后顺序启动各个节点:
- 首先是管理节点(在 192.168.100.10 上 执行
ndb_mgmd --configdir=/etc/mysql-cluster/ -f /etc/mysql-cluster/config.ini命令) - 然后是数据节点(在 192.168.100.12 和 192.168.100.14 上分别执行
ndbd命令) - 最后是 SQL 节点(在 192.168.100.16 上执行
/usr/local/mysql/support-files/mysql.server start命令)
前面文章 《MySQL Cluster篇03 — 部署最小化的环境》中,初始化启动的情况下,root 的临时密码为 "jp5pC(-,t40!"
在 SQL 节点的终端上登录:
Shell > /usr/local/mysql/bin/mysql -u root --password="jp5pC(-,t40!"
# 更改 root 的密码
MySQL > alter user 'root'@'localhost' identified by 'Google-,Bing500';
Query OK, 0 rows affected (0.01 sec)
MySQL > exit;
MySQL > show variables;
在 NDB 存储引擎中,系统变量同样划分为全局系统变量(Global)以及会话系统变量(Session),常见系统变量说明如下:
ndb_autoincrement_prefetch_sz- 确定自增列中出现间隙的概率。较高的值可使插入的速度更快,但会降低在一批插入中使用自增长编号的可能性。值类型为整数,范围为 [1,65536],默认值为 512。存在于 Global 和 Session 中ndb_default_column_format- 为新创建表设置默认的 COLUMN_FORMAT 和 ROW_FORMAT,默认值为 FIXED。存在于 Global 中。ndb_eventbuffer_free_percent- 设置在达到事件缓冲区最大分配内存(ndb_eventbuffer_max_alloc)后,事件缓冲区中应保留的可用内存百分比,以在重新开始缓冲之前使用。值类型为整数,范围为 [1,99],默认值为 20。存在于 Global 中ndb_eventbuffer_max_alloc- 设置 NDB API 可为事件缓冲分配的最大内存(以字节 B 为单位)。默认值为 0 ,表示不设限制。存在于 Global 中ndb_extra_logging- 在 MySQL 错误日志中记录特定的 NDB 存储引擎信息ndb_index_stat_enable- 在对查询进行优化的过程中,是否使用 NDB 索引统计。无论此选项(变量)的值如何,索引统计表始终在服务器启动时创建。值类型为布尔,默认值为 1。存在于 Global 和 Session 中ndb_index_stat_option- 此变量用于为 NDB 索引统计信息的生成提供调优选项,其值由逗号分隔的 name-value 对组成,不能包含空格。默认值为loop_checkon=1000ms,loop_idle=1000ms,loop_busy=100ms, update_batch=1,read_batch=4,idle_batch=32,check_batch=32, check_delay=1m,delete_batch=8,clean_delay=0,error_batch=4, error_delay=1m,evict_batch=8,evict_delay=1m,cache_limit=32M, cache_lowpct=90。存在于 Global 和 Session 中ndb_log_bin- 是否将 NDB 表的更新写入到二进制日志文件中。若服务器未使用log_bin=1,则该变量的设置无效。默认值为 0。存在于 Global 和 Session 中ndb_read_backup- 对于后续创建的任何 NDB 表,启用从任何片段副本读取;这样做极大地提高了表的读取性能,而对写入性能的影响相对较小。默认值为 1 。存在于 Global 中ndb_use_exact_count- 是否强制 NDB 在执行 select count(*) 查询时使用记录数统计,以加速此类查询。默认值为 0 。存在于 Global 和 Session 中ndb_use_transactions- 是否禁用 NDB 当中的事务支持。默认值为 1 ,通常不建议设置为 0replica_allow_batching- 是否在 NDB Cluster replica 上启用批处理更新。默认值为 1 。存在于 Global 中ndb_replica_batch_size- 确定复制应用线程使用的批处理大小(以字节 B 为单位)。默认值为 2097152。存在于 Global 中transaction_allow_batching- 设置为 1 或 ON 时,此变量允许在同一事务中对语句进行批处理(需要首先关闭自动提交,即 autocommit=0)。默认值为 0。 存在于 Session 中
其他未提到的系统变量,参阅 这里。
版权声明:「自由转载-保持署名-非商业性使用-禁止演绎 3.0 国际」(CC BY-NC-ND 3.0)
用一杯咖啡支持我们,我们的每一篇[文档]都经过实际操作和精心打磨,而不是简单地从网上复制粘贴。期间投入了大量心血,只为能够真正帮助到您。
暂无评论










