请问set global sql_mode = '';是存储在哪个配置文件里了?

我执行set global sql_mode = ‘’; 命令,请问最后是存储在哪个配置文件里了?因为我发现即时我重启了tidb集群,这个参数会持久化。

mysql.global_variables 这个表里看下有没有

1 个赞

https://docs.pingcap.com/zh/tidb/stable/sql-faq#如何在-tidb-中修改-sql_mode

TiDB 支持在会话或全局作用域上修改 sql_mode 系统变量。

  • 对全局作用域变量的修改,设置后将作用于集群中的其它服务器,并且重启后更改依然有效。因此,你无需在每台 TiDB 服务器上都更改 sql_mode 的值。
  • 对会话作用域变量的修改,设置后只影响当前会话,重启后更改消失。

你如果想要查看当前的sql_mode,直接

SHOW GLOBAL VARIABLES LIKE ‘sql_mode’;

1 个赞

学习了,平时也真没有关注存放在哪里了

学到了

配置文件了哈

学习了,确实没找到

再mysql.GLOBAL_VARIABLES 中

1 个赞

官方文档描述”部分 GLOBAL 作用域的变量会持久化到 TiDB 集群中”,意思就是会存储到 tikv 中,https://docs.pingcap.com/zh/tidb/stable/system-variables#系统变量

还真是mysql.GLOBAL_VARIABLES

系统参数是存储在tikv中的,如果只要会话生效,可以执行:

set session sql_mode = '';

mysql.global_variables 这个表里看下有没有

应该是存储到了tikv中

写入到 TiKV 中

TIDB是存储到TIKV中了

mysql.global_variables

写到TiKV,具体是在mysql.global_variables表

TiKV持久化了

这个参数被持久化到tikv中了

我说怎么没找到。。。