文档首页/ 云数据库 TaurusDB/ 故障排除/ 参数类/ 修改全局变量成功但未生效
更新时间:2024-09-05 GMT+08:00

修改全局变量成功但未生效

场景描述

使用Console上的参数修改功能修改long_query_time成功,但未生效。

原因分析

使用Console修改参数时,系统实际使用“set global 变量名=新的变量值;”修改全局参数。

在使用set global命令修改全局变量值时需要注意,该参数在当前连接和已经连接上数据库的其他连接中是不生效的,只对新连接生效,所以此时将所有连接断开重连,即可看到变量修改生效。

示例

举例中使用的是命令的方式做描述。

  1. 创建会话1。
    # 查看参数值。
    show variables like 'long_query_time'; 
    +-----------------+-----------+ 
    | Variable_name   | Value     | 
    +-----------------+-----------+ 
    | long_query_time | 10.000000 | 
    +-----------------+-----------+ 
    1 row in set (0.08 sec)  
    # 修改变量值 
    set global long_query_time=1; 
    Query OK, 0 rows affected (0.02 sec)  
    # 重新查看,发现未生效。 
    show variables like 'long_query_time'; 
    +-----------------+-----------+ 
    | Variable_name   | Value     | 
    +-----------------+-----------+ 
    | long_query_time | 10.000000 | 
    +-----------------+-----------+ 
    1 row in set (0.01 sec)  
  2. 创建会话2。
    show variables like 'long_query_time'; 
    +-----------------+-----------+ 
    | Variable_name   | Value     | 
    +-----------------+-----------+ 
    | long_query_time | 10.000000 | 
    +-----------------+-----------+ 
    1 row in set (0.01 sec)  
  3. 在会话1中执行。
    #会话1中执行set global后,再次查看,变量未生效。
    show variables like 'long_query_time'; 
    +-----------------+-----------+ 
    | Variable_name   | Value     | 
    +-----------------+-----------+ 
    | long_query_time | 10.000000 | 
    +-----------------+-----------+ 
    1 row in set (0.01 sec)  
    # 会话1断开,重新连接,发现修改生效。 
    show variables like 'long_query_time'; 
    +-----------------+----------+ 
    | Variable_name   | Value    | 
    +-----------------+----------+ 
    | long_query_time | 1.000000 | 
    +-----------------+----------+ 
    1 row in set (0.00 sec)  
  4. 会话2断开,重新连接,发现修改生效。
    show variables like 'long_query_time'; 
    +-----------------+----------+ 
    | Variable_name   | Value    | 
    +-----------------+----------+ 
    | long_query_time | 1.000000 | 
    +-----------------+----------+ 
    1 row in set (0.01 sec)