SET @start_global_value = @@global.innodb_large_prefix; SELECT @start_global_value; @start_global_value 0 Valid values are 'ON' and 'OFF' select @@global.innodb_large_prefix in (0, 1); @@global.innodb_large_prefix in (0, 1) 1 select @@global.innodb_large_prefix; @@global.innodb_large_prefix 0 select @@session.innodb_large_prefix; ERROR HY000: Variable 'innodb_large_prefix' is a GLOBAL variable show global variables like 'innodb_large_prefix'; Variable_name Value innodb_large_prefix OFF show session variables like 'innodb_large_prefix'; Variable_name Value innodb_large_prefix OFF select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF set global innodb_large_prefix='OFF'; select @@global.innodb_large_prefix; @@global.innodb_large_prefix 0 select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF set @@global.innodb_large_prefix=1; select @@global.innodb_large_prefix; @@global.innodb_large_prefix 1 select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON set global innodb_large_prefix=0; select @@global.innodb_large_prefix; @@global.innodb_large_prefix 0 select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX OFF set @@global.innodb_large_prefix='ON'; select @@global.innodb_large_prefix; @@global.innodb_large_prefix 1 select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON set session innodb_large_prefix='OFF'; ERROR HY000: Variable 'innodb_large_prefix' is a GLOBAL variable and should be set with SET GLOBAL set @@session.innodb_large_prefix='ON'; ERROR HY000: Variable 'innodb_large_prefix' is a GLOBAL variable and should be set with SET GLOBAL set global innodb_large_prefix=1.1; ERROR 42000: Incorrect argument type to variable 'innodb_large_prefix' set global innodb_large_prefix=1e1; ERROR 42000: Incorrect argument type to variable 'innodb_large_prefix' set global innodb_large_prefix=2; ERROR 42000: Variable 'innodb_large_prefix' can't be set to the value of '2' NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643) set global innodb_large_prefix=-3; select @@global.innodb_large_prefix; @@global.innodb_large_prefix 1 select * from information_schema.global_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON select * from information_schema.session_variables where variable_name='innodb_large_prefix'; VARIABLE_NAME VARIABLE_VALUE INNODB_LARGE_PREFIX ON set global innodb_large_prefix='AUTO'; ERROR 42000: Variable 'innodb_large_prefix' can't be set to the value of 'AUTO' SET @@global.innodb_large_prefix = @start_global_value; SELECT @@global.innodb_large_prefix; @@global.innodb_large_prefix 0