系统变量

系统变量用于控制会话或整个实例引擎的行为。可通过 SET 修改(权限与是否允许动态修改因变量而异),用 SHOW VARIABLES 查看。

全局与会话

范围

含义

全局(GLOBAL)

影响新会话的默认行为;部分项在实例生命周期内保持

会话(SESSION)

仅当前连接有效,断开后失效

Both

同时存在全局默认与会话覆盖

SHOW VARIABLES;
SHOW VARIABLES LIKE 'sql_mode';
SHOW GLOBAL VARIABLES;
SHOW SESSION VARIABLES LIKE '%timeout%';

SET SESSION autocommit = 0;
SET GLOBAL max_allowed_packet = 33554432;  -- 需足够权限,且变量须允许动态修改

自定义用户变量(@var)与系统变量不同,用于会话内临时保存标量,见客户端与 SET @a = ... 用法。

常用变量(摘要)

下表为文档中常见、产品侧较常碰到的项。完整列表以 SHOW VARIABLES 输出为准。

变量

典型作用

备注

autocommit

是否自动提交

事务脚本常临时关闭

sql_mode

SQL 模式集合

影响严格性、GROUP BY 等

character_set_* / collation_*

字符集与排序规则

常见默认 utf8mb4

time_zone

会话时区

影响 TIMESTAMP 显示与转换

lower_case_table_names

表名大小写

常见为 1(不敏感);通常不可随意改

max_allowed_packet

单包最大字节

大结果 / 大语句时需调大

interactive_timeout / net_write_timeout

空闲与写超时

长连接与慢网

auto_increment_increment / auto_increment_offset

自增步长与偏移

foreign_key_checks

是否检查外键

批量装载时可临时关闭(需评估一致性)

save_query_result / query_result_*

查询结果落存相关

MatrixOne 扩展能力

sql_safe_updates

安全更新

限制无键无 WHERE 的更新删除

密码 / 登录策略类

复杂度、失败限制、白名单等

实例安全策略相关

查询结果相关(扩展)

若实例开启查询结果保存:

  • save_query_result:是否保存。

  • query_result_maxsize / query_result_timeout:大小与保留时间类限制。

具体是否对你的租户开放,以控制台与 SHOW VARIABLES 为准。

相关页面