Outdated Version

You are viewing an older version of this section. View current production version.

SET GLOBAL

Sets an engine variable globally.

SET GLOBAL can be used to set two types of variables listed below.

  • Global: When you set a global variable, its value is effective for your current connection to the node and any subsequent connections, initiated by any user.

  • Session that can also be set globally: When you set this type of variable globally, its value is NOT effective for your current connection to the node but is effective for any subsequent connections to the node, initiated by any user.

Most variables have global scope. Those that instead have the scope “session that can also be set globally” are indicated in the “Description” column in the list of sync variables and list of non-sync variables.

To set a sync variable, you can use SET CLUSTER instead of SET GLOBAL. Both commands are equivalent. The former command is recommended, as the command’s name clearly indicates that the variable is updated cluster-wide.

See the engine variables overview for more information on engine variables.

Syntax

SET GLOBAL variable_name = value

SET @@GLOBAL.variable_name = value

Remarks

  • variable_name is the name of a global engine variable.
  • The @@global.variable_name syntax for engine variables is supported for compatibility with some other database systems. This is similar to MySQL behavior.

Example

The following example sets a global variable and retrieves its value.

Set the variable:

SET GLOBAL connect_timeout = 15;

Retrieve its value:

SELECT @@connect_timeout;

Related Topics