SET @start_global_value = @@global.thread_cache_size; SELECT @start_global_value; @start_global_value 9 select @@global.thread_cache_size; @@global.thread_cache_size 9 select @@session.thread_cache_size; ERROR HY000: Variable 'thread_cache_size' is a GLOBAL variable show global variables like 'thread_cache_size'; Variable_name Value thread_cache_size 9 show session variables like 'thread_cache_size'; Variable_name Value thread_cache_size 9 select * from information_schema.global_variables where variable_name='thread_cache_size'; VARIABLE_NAME VARIABLE_VALUE THREAD_CACHE_SIZE 9 select * from information_schema.session_variables where variable_name='thread_cache_size'; VARIABLE_NAME VARIABLE_VALUE THREAD_CACHE_SIZE 9 set global thread_cache_size=1; select @@global.thread_cache_size; @@global.thread_cache_size 1 select * from information_schema.global_variables where variable_name='thread_cache_size'; VARIABLE_NAME VARIABLE_VALUE THREAD_CACHE_SIZE 1 select * from information_schema.session_variables where variable_name='thread_cache_size'; VARIABLE_NAME VARIABLE_VALUE THREAD_CACHE_SIZE 1 set session thread_cache_size=1; ERROR HY000: Variable 'thread_cache_size' is a GLOBAL variable and should be set with SET GLOBAL set global thread_cache_size=1.1; ERROR 42000: Incorrect argument type to variable 'thread_cache_size' set global thread_cache_size=1e1; ERROR 42000: Incorrect argument type to variable 'thread_cache_size' set global thread_cache_size="foo"; ERROR 42000: Incorrect argument type to variable 'thread_cache_size' set global thread_cache_size=0; select @@global.thread_cache_size; @@global.thread_cache_size 0 set global thread_cache_size=cast(-1 as unsigned int); Warnings: Warning 1292 Truncated incorrect thread_cache_size value: '18446744073709551615' select @@global.thread_cache_size; @@global.thread_cache_size 16384 SET @@global.thread_cache_size = @start_global_value; SELECT @@global.thread_cache_size; @@global.thread_cache_size 9