定位 发表于 2016-11-9 00:38:57

mysql全局变量和局部变量-数据库同步会用到

有时候我们会用set命令来设置变量的值,但我们却遇到了一些错误信息,即:不能将此变量设置为“值”。

例子:

set global sql_log_bin=0;
就报了如下的错误信息:
mysql> set global sql_log_bin=0;
ERROR 1231 (42000): Variable 'sql_log_bin' can't be set to the value of '0'

官方解释:5.5、5.6、5.7不支持此变量全局设置,会给予警告信息,即上面的信息,到5.7之后,会取消警告信息


到这里我们就要去考虑这是全局变量还是局部变量了
但全局变量和局部变量都是有sql_log_bin

于是自己操作如下:
mysql> set session sql_log_bin=0;
Query OK, 0 rows affected (0.00 sec)


扩展:


[*]13.5.4.21. SHOW VARIABLES语法
[*]SHOW VARIABLES
[*]SHOW VARIABLES显示了部门MySQL系统变量的值。本信息也可以使用mysqladmin variables命令获得。
[*]使用GLOBAL选项,您可以获得被用于MySQL新连接的值。使用SESSION,您可以得到对于当前连接起效的值。如果您两个选项都不使用,默认值为SESSION。
[*]LOCAL是SESSION的同义词。
页: [1]
查看完整版本: mysql全局变量和局部变量-数据库同步会用到