360SDN.COM

首页/MySQL/列表

MySQL 8.0 Server System Variables【三】英文

来源:  2018-08-02 19:56:22    评论:0点击:

来源:https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_use_secondary_engine

 Server System Variables

  • pseudo_thread_id

    Property Value
    System Variable pseudo_thread_id
    Scope Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer

    This variable is for internal server use.

  • query_alloc_block_size

    Property Value
    Command-Line Format --query-alloc-block-size=#
    System Variable query_alloc_block_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 8192
    Minimum Value 1024
    Maximum Value 4294967295
    Block Size 1024

    The allocation size of memory blocks that are allocated for objects created during statement parsing and execution. If you have problems with memory fragmentation, it might help to increase this parameter.

  • query_cache_limit

    Property Value
    Command-Line Format --query-cache-limit=#
    Deprecated Yes (removed in 8.0.3)
    System Variable query_cache_limit
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 1048576
    Minimum Value 0
    Maximum Value (64-bit platforms) 18446744073709551615
    Maximum Value (32-bit platforms) 4294967295

    This system variable was removed in MySQL 8.0.3.

  • query_cache_min_res_unit

    Property Value
    Command-Line Format --query-cache-min-res-unit=#
    Deprecated Yes (removed in 8.0.3)
    System Variable query_cache_min_res_unit
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 4096
    Minimum Value 512
    Maximum Value (64-bit platforms) 18446744073709551615
    Maximum Value (32-bit platforms) 4294967295

    This system variable was removed in MySQL 8.0.3.

  • query_cache_size

    Property Value
    Command-Line Format --query-cache-size=#
    Deprecated Yes (removed in 8.0.3)
    System Variable query_cache_size
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value (64-bit platforms, >= 8.0.1) 0
    Default Value (64-bit platforms, 8.0.0) 1048576
    Default Value (32-bit platforms, >= 8.0.1) 0
    Default Value (32-bit platforms, 8.0.0) 1048576
    Minimum Value 0
    Maximum Value (64-bit platforms) 18446744073709551615
    Maximum Value (32-bit platforms) 4294967295

    This system variable was removed in MySQL 8.0.3.

  • query_cache_type

    Property Value
    Command-Line Format --query-cache-type=#
    Deprecated Yes (removed in 8.0.3)
    System Variable query_cache_type
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value 0
    Valid Values

    0

    1

    2

    This system variable was removed in MySQL 8.0.3.

  • query_cache_wlock_invalidate

    Property Value
    Command-Line Format --query-cache-wlock-invalidate
    Deprecated Yes (removed in 8.0.3)
    System Variable query_cache_wlock_invalidate
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value FALSE

    This system variable was removed in MySQL 8.0.3.

  • query_prealloc_size

    Property Value
    Command-Line Format --query-prealloc-size=#
    System Variable query_prealloc_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 8192
    Minimum Value 8192
    Maximum Value (64-bit platforms) 18446744073709551615
    Maximum Value (32-bit platforms) 4294967295
    Block Size 1024

    The size of the persistent buffer used for statement parsing and execution. This buffer is not freed between statements. If you are running complex queries, a larger query_prealloc_size value might be helpful in improving performance, because it can reduce the need for the server to perform memory allocation during query execution operations.

  • rand_seed1

    The rand_seed1 and rand_seed2 variables exist as session variables only, and can be set but not read. The variables—but not their values—are shown in the output of SHOW VARIABLES.

    The purpose of these variables is to support replication of the RAND() function. For statements that invoke RAND(), the master passes two values to the slave, where they are used to seed the random number generator. The slave uses these values to set the session variables rand_seed1 and rand_seed2 so that RAND() on the slave generates the same value as on the master.

  • rand_seed2

    See the description for rand_seed1.

  • range_alloc_block_size

    Property Value
    Command-Line Format --range-alloc-block-size=#
    System Variable range_alloc_block_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer
    Default Value 4096
    Minimum Value 4096
    Maximum Value (64-bit platforms) 18446744073709547520
    Maximum Value 4294967295
    Block Size 1024

    The size of blocks that are allocated when doing range optimization.

  • range_optimizer_max_mem_size

    Property Value
    Command-Line Format --range-optimizer-max-mem-size=N
    System Variable range_optimizer_max_mem_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 8388608
    Minimum Value 0
    Maximum Value 18446744073709551615

    The limit on memory consumption for the range optimizer. A value of 0 means no limit. If an execution plan considered by the optimizer uses the range access method but the optimizer estimates that the amount of memory needed for this method would exceed the limit, it abandons the plan and considers other plans. For more information, see Limiting Memory Use for Range Optimization.

  • rbr_exec_mode

    Property Value
    System Variable rbr_exec_mode
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value STRICT
    Valid Values

    IDEMPOTENT

    STRICT

    For internal use by mysqlbinlog. This variable switches the server between IDEMPOTENT mode and STRICT mode. IDEMPOTENTmode causes suppression of duplicate-key and no-key-found errors in BINLOG statements generated by mysqlbinlog. This mode is useful when replaying a row-based binary log on a server that causes conflicts with existing data. mysqlbinlog sets this mode when you specify the --idempotent option by writing the following to the output:

    SET SESSION RBR_EXEC_MODE=IDEMPOTENT;
  • read_buffer_size

    Property Value
    Command-Line Format --read-buffer-size=#
    System Variable read_buffer_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer
    Default Value 131072
    Minimum Value 8200
    Maximum Value 2147479552

    Each thread that does a sequential scan for a MyISAM table allocates a buffer of this size (in bytes) for each table it scans. If you do many sequential scans, you might want to increase this value, which defaults to 131072. The value of this variable should be a multiple of 4KB. If it is set to a value that is not a multiple of 4KB, its value will be rounded down to the nearest multiple of 4KB.

    This option is also used in the following context for all storage engines:

    • For caching the indexes in a temporary file (not a temporary table), when sorting rows for ORDER BY.

    • For bulk insert into partitions.

    • For caching results of nested queries.

    read_buffer_size is also used in one other storage engine-specific way: to determine the memory block size for MEMORY tables.

    For more information about memory use during different operations, see Section 8.12.3.1, “How MySQL Uses Memory”.

  • read_only

    Property Value
    Command-Line Format --read-only
    System Variable read_only
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    When the read_only system variable is enabled, the server permits no client updates except from users who have theCONNECTION_ADMIN or SUPER privilege. This variable is disabled by default.

    The server also supports a super_read_only system variable (disabled by default), which has these effects:

    Even with read_only enabled, the server permits these operations:

    Changes to read_only on a master server are not replicated to slave servers. The value can be set on a slave server independent of the setting on the master.

    The following conditions apply to attempts to enable read_only (including implicit attempts resulting from enablingsuper_read_only):

    • The attempt fails and an error occurs if you have any explicit locks (acquired with LOCK TABLES) or have a pending transaction.

    • The attempt blocks while other clients hold explicit table locks or have pending transactions, until the locks are released and the transactions end. While the attempt to enable read_only is pending, requests by other clients for table locks or to begin transactions also block until read_only has been set.

    • The attempt blocks if there are active transactions that hold metadata locks, until those transactions end.

    • read_only can be enabled while you hold a global read lock (acquired with FLUSH TABLES WITH READ LOCK) because that does not involve table locks.

  • read_rnd_buffer_size

    Property Value
    Command-Line Format --read-rnd-buffer-size=#
    System Variable read_rnd_buffer_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer
    Default Value 262144
    Minimum Value 1
    Maximum Value 2147483647

    This variable is used for reads from MyISAM tables, and, for any storage engine, for Multi-Range Read optimization.

    When reading rows from a MyISAM table in sorted order following a key-sorting operation, the rows are read through this buffer to avoid disk seeks. See Section 8.2.1.14, “ORDER BY Optimization”. Setting the variable to a large value can improve ORDER BYperformance by a lot. However, this is a buffer allocated for each client, so you should not set the global variable to a large value. Instead, change the session variable only from within those clients that need to run large queries.

    For more information about memory use during different operations, see Section 8.12.3.1, “How MySQL Uses Memory”. For information about Multi-Range Read optimization, see Section 8.2.1.10, “Multi-Range Read Optimization”.

  • regexp_stack_limit

    Property Value
    Command-Line Format --regexp-stack-limit=#
    Introduced 8.0.4
    System Variable regexp_stack_limit
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 8000000
    Minimum Value 0
    Maximum Value 2147483647

    The maximum available memory in bytes for the internal stack used for regular expression matching operations performed byREGEXP_LIKE() and similar functions (see Section 12.5.2, “Regular Expressions”).

  • regexp_time_limit

    Property Value
    Command-Line Format --regexp-time-limit=#
    Introduced 8.0.4
    System Variable regexp_time_limit
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 32
    Minimum Value 0
    Maximum Value 2147483647

    The time limit for regular expression matching operations performed by REGEXP_LIKE() and similar functions (see Section 12.5.2, “Regular Expressions”). This limit is expressed as the maximum permitted number of steps performed by the match engine, and thus affects execution time only indirectly. Typically, it is on the order of milliseconds.

  • require_secure_transport

    Property Value
    Command-Line Format --require-secure-transport[={OFF|ON}]
    System Variable require_secure_transport
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    Whether client connections to the server are required to use some form of secure transport. When this variable is enabled, the server permits only TCP/IP connections that use SSL, or connections that use a socket file (on Unix) or shared memory (on Windows). The server rejects nonsecure connection attempts, which fail with an ER_SECURE_TRANSPORT_REQUIRED error.

    This capability supplements per-account SSL requirements, which take precedence. For example, if an account is defined with REQUIRE SSL, enabling require_secure_transport does not make it possible to use the account to connect using a Unix socket file.

    It is possible for a server to have no secure transports available. For example, a server on Windows supports no secure transports if started without specifying any SSL certificate or key files and with the shared_memory system variable disabled. Under these conditions, attempts to enable require_secure_transport at startup cause the server to write a message to the error log and exit. Attempts to enable the variable at runtime fail with an ER_NO_SECURE_TRANSPORTS_CONFIGURED error.

  • resultset_metadata

    Property Value
    Introduced 8.0.3
    System Variable resultset_metadata
    Scope Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value FULL
    Valid Values

    FULL

    NONE

    For connections for which metadata transfer is optional, the client sets the resultset_metadata system variable to control whether the server returns result set metadata. Permitted values are FULL (return all metadata; this is the default) and NONE(return no metadata).

    For connections that are not metadata-optional, setting resultset_metadata to NONE produces an error.

    For details about managing result set metadata transfer, see Section 27.7.23, “C API Optional Result Set Metadata”.

  • schema_definition_cache

    Property Value
    Command-Line Format --schema-definition-cache=N
    System Variable schema_definition_cache
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 256
    Minimum Value 256
    Maximum Value 524288

    Defines a limit for the number of schema definition objects, both used and unused, that can be kept in the dictionary object cache.

    Unused schema definition objects are only kept in the dictionary object cache when the number in use is less than the capacity defined by schema_definition_cache.

    A setting of 0 means that schema definition objects are only kept in the dictionary object cache while they are in use.

    For more information, see Section 14.4, “Dictionary Object Cache”.

  • secure_auth

    Property Value
    Command-Line Format --secure-auth
    Deprecated Yes (removed in 8.0.3)
    System Variable secure_auth
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON
    Valid Values ON

    This system variable was removed in MySQL 8.0.3.

  • secure_file_priv

    Property Value
    Command-Line Format --secure-file-priv=dir_name
    System Variable secure_file_priv
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string
    Default Value platform specific
    Valid Values

    empty string

    dirname

    NULL

    This variable is used to limit the effect of data import and export operations, such as those performed by the LOAD DATA andSELECT ... INTO OUTFILE statements and the LOAD_FILE() function. These operations are permitted only to users who have the FILE privilege.

    secure_file_priv may be set as follows:

    • If empty, the variable has no effect. This is not a secure setting.

    • If set to the name of a directory, the server limits import and export operations to work only with files in that directory. The directory must exist; the server will not create it.

    • If set to NULL, the server disables import and export operations.

    The default value is platform specific and depends on the value of the INSTALL_LAYOUT CMake option, as shown in the following table. To specify the default secure_file_priv value explicitly if you are building from source, use theINSTALL_SECURE_FILE_PRIVDIR CMake option.

    INSTALL_LAYOUT Value Default secure_file_priv Value
    STANDALONE, WIN empty
    DEB, RPM, SLES, SVR4 /var/lib/mysql-files
    Otherwise mysql-files under the CMAKE_INSTALL_PREFIXvalue

    The server checks the value of secure_file_priv at startup and writes a warning to the error log if the value is insecure. A non-NULL value is considered insecure if it is empty, or the value is the data directory or a subdirectory of it, or a directory that is accessible by all users. If secure_file_priv is set to a nonexistent path, the server writes an error message to the error log and exits.

  • server_id

    Property Value
    Command-Line Format --server-id=#
    System Variable server_id
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value (>= 8.0.3) 1
    Default Value (<= 8.0.2) 0
    Minimum Value 0
    Maximum Value 4294967295

    Specifies the server ID. This variable is set by the --server-id option. The server_id system variable is set to 1 by default. The server can be started with this default ID, but when binary logging is enabled, an informational message is issued if you did not specify a server ID explicitly using the --server-id option.

    For servers that are used in a replication topology, you must specify a unique server ID for each replication server, in the range from 1 to 232 − 1. Unique means that each ID must be different from every other ID in use by any other replication master or slave. For additional information, see Section 17.1.6.2, “Replication Master Options and Variables”, and Section 17.1.6.3, “Replication Slave Options and Variables”.

    If the server ID is set to 0, binary logging takes place, but a master with a server ID of 0 refuses any connections from slaves, and a slave with a server ID of 0 refuses to connect to a master. Note that although you can change the server ID dynamically to a nonzero value, doing so does not enable replication to start immediately. You must change the server ID and then restart the server to initialize the replication slave.

    For more information, see Section 17.1.2.2, “Setting the Replication Slave Configuration”.

  • session_track_gtids

    Property Value
    Command-Line Format --session-track-gtids=[value]
    System Variable session_track_gtids
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value OFF
    Valid Values

    OFF

    OWN_GTID

    ALL_GTIDS

    Controls whether the server tracks GTIDs and returns them to the client. Depending on the variable value, at the end of executing each transaction, the server GTIDs are captured by the tracker and appended to the OK packet. The possible sets of GTIDs to track are:

    • OFF: The server returns no GTIDs in the OK packet.

    • OWN_GTID: The tracker collects GTIDs generated by successfully committed read/write transactions.

    • ALL_GTIDS: The tracker collects all of the GTIDs in the gtid_executed system variable at the time the current transaction commits, regardless of whether the transaction is read/write or read only.

    This variable cannot be set within transactional context.

    The server uses the OK packet of the client/server protocol to report session state-change information. For information about obtaining this information within client programs, see Section 27.7.7.69, “mysql_session_track_get_first()”.

  • session_track_schema

    Property Value
    Command-Line Format --session-track-schema=#
    System Variable session_track_schema
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON

    Controls whether the server tracks changes to the default schema (database) name within the current session and makes this information available to the client when changes occur.

    If notification is enabled, reporting occurs each time the default schema is set, even if the new schema name is the same as the old.

    The server uses the OK packet of the client/server protocol to report session state-change information. For information about obtaining this information within client programs, see Section 27.7.7.69, “mysql_session_track_get_first()”.

  • session_track_state_change

    Property Value
    Command-Line Format --session-track-state-change=#
    System Variable session_track_state_change
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    Controls whether the server tracks changes to the state of the current session and notifies the client when state changes occur. Changes can be reported for these attributes of client session state:

    • The default schema (database)

    • Session-specific values for system variables

    • User-defined variables

    • Temporary tables

    • Prepared statements

    If the session-state tracker is enabled, reporting occurs for each assignment to tracked session states, even if the new values are the same as the old.

    Note

    Assigning a value to session_track_state_change itself is not considered a state change and is not reported as such. However, if its name listed in the value of session_track_system_variables, any assignments to it do result in notification of the new value.

    The session_track_state_change variable controls only notification of when changes occur, not what the changes are. To receive notification for changes to the default schema name and session system variable values, use the session_track_schemaand session_track_system_variables system variables.

    The server uses the OK packet of the client/server protocol to report session state-change information. For information about obtaining this information within client programs, see Section 27.7.7.69, “mysql_session_track_get_first()”.

  • session_track_system_variables

    Property Value
    Command-Line Format --session-track-system-variables=#
    System Variable session_track_system_variables
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type string
    Default Value time_zone, autocommit, character_set_client, character_set_results, character_set_connection

    Controls whether the server tracks changes to session system variables and notifies the client of the name and new value of changed variables. The variable value is a comma-separated list of variables for which to track changes. By default, notification is enabled for time_zone, autocommit, character_set_client, character_set_results, and character_set_connection. (The latter three variables are those affected by SET NAMES.)

    The special value * causes the server to track changes to all session variables. If given, this value must be specified by itself without specific system variable names.

    To disable notification of changed session variable values, set session_track_system_variables to the empty string.

    If session system variable tracking is enabled, notification occurs for all assignments to tracked session variables, even if the new values are the same as the old.

    The server uses the OK packet of the client/server protocol to report session state-change information. For information about obtaining this information within client programs, see Section 27.7.7.69, “mysql_session_track_get_first()”.

  • sha256_password_auto_generate_rsa_keys

    Property Value
    Command-Line Format --sha256-password-auto-generate-rsa-keys[={OFF|ON}]
    System Variable sha256_password_auto_generate_rsa_keys
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON

    This variable is available if the server was compiled using OpenSSL (see Section 6.4.4, “OpenSSL Versus wolfSSL”). The server uses it to determine whether to autogenerate RSA private/public key-pair files in the data directory if they do not already exist.

    At startup, the server automatically generates RSA private/public key-pair files in the data directory if all of these conditions are true: The sha256_password_auto_generate_rsa_keys or caching_sha2_password_auto_generate_rsa_keys system variable is enabled; no RSA options are specified; the RSA files are missing from the data directory. These key-pair files enable secure password exchange using RSA over unencrypted connections for accounts authenticated by the sha256_password orcaching_sha2_password plugin; see Section 6.5.1.2, “SHA-256 Pluggable Authentication”, and Section 6.5.1.3, “Caching SHA-2 Pluggable Authentication”.

    For more information about RSA file autogeneration, including file names and characteristics, see Section 6.4.3.1, “Creating SSL and RSA Certificates and Keys using MySQL”

    The auto_generate_certs system variable is related but controls autogeneration of SSL certificate and key files needed for secure connections using SSL.

  • sha256_password_private_key_path

    Property Value
    Command-Line Format --sha256-password-private-key-path=file_name
    System Variable sha256_password_private_key_path
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name
    Default Value private_key.pem

    This variable is available if MySQL was compiled using OpenSSL (see Section 6.4.4, “OpenSSL Versus wolfSSL”). Its value is the path name of the RSA private key file for the sha256_password authentication plugin. If the file is named as a relative path, it is interpreted relative to the server data directory. The file must be in PEM format.

    Important

    Because this file stores a private key, its access mode should be restricted so that only the MySQL server can read it.

    For information about sha256_password, see Section 6.5.1.2, “SHA-256 Pluggable Authentication”.

  • sha256_password_proxy_users

    Property Value
    Command-Line Format --sha256-password-proxy-users=[={OFF|ON}]
    System Variable sha256_password_proxy_users
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    This variable controls whether the sha256_password built-in authentication plugin supports proxy users. It has no effect unless the check_proxy_users system variable is enabled. For information about user proxying, see Section 6.3.11, “Proxy Users”.

  • sha256_password_public_key_path

    Property Value
    Command-Line Format --sha256-password-public-key-path=file_name
    System Variable sha256_password_public_key_path
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name
    Default Value public_key.pem

    This variable is available if MySQL was compiled using OpenSSL (see Section 6.4.4, “OpenSSL Versus wolfSSL”). Its value is the path name of the RSA public key file for the sha256_password authentication plugin. If the file is named as a relative path, it is interpreted relative to the server data directory. The file must be in PEM format. Because this file stores a public key, copies can be freely distributed to client users. (Clients that explicitly specify a public key when connecting to the server using RSA password encryption must use the same public key as that used by the server.)

    For information about sha256_password, including information about how clients specify the RSA public key, see Section 6.5.1.2, “SHA-256 Pluggable Authentication”.

  • shared_memory

    Property Value
    Command-Line Format --shared-memory[={0,1}]
    System Variable shared_memory
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Platform Specific Windows
    Type boolean
    Default Value FALSE

    (Windows only.) Whether the server permits shared-memory connections.

  • shared_memory_base_name

    Property Value
    Command-Line Format --shared-memory-base-name=name
    System Variable shared_memory_base_name
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Platform Specific Windows
    Type string
    Default Value MYSQL

    (Windows only.) The name of shared memory to use for shared-memory connections. This is useful when running multiple MySQL instances on a single physical machine. The default name is MYSQL. The name is case sensitive.

  • show_compatibility_56

    Property Value
    Command-Line Format --show-compatibility-56[={OFF|ON}]
    Deprecated Yes (removed in 8.0.1)
    System Variable show_compatibility_56
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    This variable was used in the transition period during which system and status variable information in INFORMATION_SCHEMAtables was moved to Performance Schema tables. That transition period ended in MySQL 8.0.1, at which time this variable was removed. For advice on migrating away from the INFORMATION_SCHEMA tables to the Performance Schema tables, see Migrating to Performance Schema System and Status Variable Tables.

  • show_create_table_verbosity

    Property Value
    Command-Line Format --show-create-table-verbosity
    Introduced 8.0.11
    System Variable show_create_table_verbosity
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No

    SHOW CREATE TABLE normally does not show the ROW_FORMAT table option if the row format is the default format. Enabling this variable causes SHOW CREATE TABLE to display ROW_FORMAT regardless of whether it is the default format.

  • show_old_temporals

    Property Value
    Command-Line Format --show-old-temporals={OFF|ON}
    Deprecated Yes
    System Variable show_old_temporals
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    Whether SHOW CREATE TABLE output includes comments to flag temporal columns found to be in pre-5.6.4 format (TIME,DATETIME, and TIMESTAMP columns without support for fractional seconds precision). This variable is disabled by default. If enabled, SHOW CREATE TABLE output looks like this:

    CREATE TABLE `mytbl` (
      `ts` timestamp /* 5.5 binary format */ NOT NULL DEFAULT CURRENT_TIMESTAMP,
      `dt` datetime /* 5.5 binary format */ DEFAULT NULL,
      `t` time /* 5.5 binary format */ DEFAULT NULL
    ) DEFAULT CHARSET=utf8mb4

    Output for the COLUMN_TYPE column of the INFORMATION_SCHEMA.COLUMNS table is affected similarly.

    This variable is deprecated and will be removed in a future MySQL release.

  • skip_external_locking

    Property Value
    Command-Line Format --skip-external-locking
    System Variable skip_external_locking
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON

    This is OFF if mysqld uses external locking (system locking), ON if external locking is disabled. This affects only MyISAM table access.

    This variable is set by the --external-locking or --skip-external-locking option. External locking is disabled by default.

    External locking affects only MyISAM table access. For more information, including conditions under which it can and cannot be used, see Section 8.11.5, “External Locking”.

  • skip_name_resolve

    Property Value
    Command-Line Format --skip-name-resolve
    System Variable skip_name_resolve
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    This variable is set from the value of the --skip-name-resolve option. If it is OFF, mysqld resolves host names when checking client connections. If it is ON, mysqld uses only IP numbers; in this case, all Host column values in the grant tables must be IP addresses or localhost. See Section 8.12.4.2, “DNS Lookup Optimization and the Host Cache”.

  • skip_networking

    Property Value
    Command-Line Format --skip-networking
    System Variable skip_networking
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No

    This is ON if the server permits only local (non-TCP/IP) connections. On Unix, local connections use a Unix socket file. On Windows, local connections use a named pipe or shared memory. This variable can be set to ON with the --skip-networking option.

  • skip_show_database

    Property Value
    Command-Line Format --skip-show-database
    System Variable skip_show_database
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No

    This prevents people from using the SHOW DATABASES statement if they do not have the SHOW DATABASES privilege. This can improve security if you have concerns about users being able to see databases belonging to other users. Its effect depends on the SHOW DATABASES privilege: If the variable value is ON, the SHOW DATABASES statement is permitted only to users who have the SHOW DATABASES privilege, and the statement displays all database names. If the value is OFF, SHOW DATABASES is permitted to all users, but displays the names of only those databases for which the user has the SHOW DATABASES or other privilege. (Note thatany global privilege is considered a privilege for the database.)

  • slow_launch_time

    Property Value
    Command-Line Format --slow-launch-time=#
    System Variable slow_launch_time
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 2

    If creating a thread takes longer than this many seconds, the server increments the Slow_launch_threads status variable.

  • slow_query_log

    Property Value
    Command-Line Format --slow-query-log
    System Variable slow_query_log
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    Whether the slow query log is enabled. The value can be 0 (or OFF) to disable the log or 1 (or ON) to enable the log. The default value depends on whether the --slow_query_log option is given. The destination for log output is controlled by the log_outputsystem variable; if that value is NONE, no log entries are written even if the log is enabled.

    Slow is determined by the value of the long_query_time variable. See Section 5.4.5, “The Slow Query Log”.

  • slow_query_log_file

    Property Value
    Command-Line Format --slow-query-log-file=file_name
    System Variable slow_query_log_file
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type file name
    Default Value host_name-slow.log

    The name of the slow query log file. The default value is host_name-slow.log, but the initial value can be changed with the --slow_query_log_file option.

  • socket

    Property Value
    Command-Line Format --socket={file_name|pipe_name}
    System Variable socket
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string
    Default Value (Other) /tmp/mysql.sock
    Default Value (Windows) MySQL

    On Unix platforms, this variable is the name of the socket file that is used for local client connections. The default is/tmp/mysql.sock. (For some distribution formats, the directory might be different, such as /var/lib/mysql for RPMs.)

    On Windows, this variable is the name of the named pipe that is used for local client connections. The default value is MySQL (not case-sensitive).

  • sort_buffer_size

    Property Value
    Command-Line Format --sort-buffer-size=#
    System Variable sort_buffer_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer
    Default Value 262144
    Minimum Value 32768
    Maximum Value (Other, 64-bit platforms) 18446744073709551615
    Maximum Value (Other, 32-bit platforms) 4294967295
    Maximum Value (Windows) 4294967295

    Each session that must perform a sort allocates a buffer of this size. sort_buffer_size is not specific to any storage engine and applies in a general manner for optimization. At minimum the sort_buffer_size value must be large enough to accommodate fifteen tuples in the sort buffer. Also, increasing the value of max_sort_length may require increasing the value ofsort_buffer_size. For more information, see Section 8.2.1.14, “ORDER BY Optimization”

    If you see many Sort_merge_passes per second in SHOW GLOBAL STATUS output, you can consider increasing thesort_buffer_size value to speed up ORDER BY or GROUP BY operations that cannot be improved with query optimization or improved indexing.

    The optimizer tries to work out how much space is needed but can allocate more, up to the limit. Setting it larger than required globally will slow down most queries that sort. It is best to increase it as a session setting, and only for the sessions that need a larger size. On Linux, there are thresholds of 256KB and 2MB where larger values may significantly slow down memory allocation, so you should consider staying below one of those values. Experiment to find the best value for your workload. SeeSection B.5.3.5, “Where MySQL Stores Temporary Files”.

    The maximum permissible setting for sort_buffer_size is 4GB−1. Larger values are permitted for 64-bit platforms (except 64-bit Windows, for which large values are truncated to 4GB−1 with a warning).

  • sql_auto_is_null

    Property Value
    System Variable sql_auto_is_null
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value 0

    If this variable is set to 1, then after a statement that successfully inserts an automatically generated AUTO_INCREMENT value, you can find that value by issuing a statement of the following form:

    SELECT * FROM tbl_name WHERE auto_col IS NULL

    If the statement returns a row, the value returned is the same as if you invoked the LAST_INSERT_ID() function. For details, including the return value after a multiple-row insert, see Section 12.14, “Information Functions”. If no AUTO_INCREMENT value was successfully inserted, the SELECT statement returns no row.

    The behavior of retrieving an AUTO_INCREMENT value by using an IS NULL comparison is used by some ODBC programs, such as Access. See Obtaining Auto-Increment Values. This behavior can be disabled by setting sql_auto_is_null to 0.

    The default value of sql_auto_is_null is 0.

  • sql_big_selects

    Property Value
    System Variable sql_big_selects
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value 1

    If set to 0, MySQL aborts SELECT statements that are likely to take a very long time to execute (that is, statements for which the optimizer estimates that the number of examined rows exceeds the value of max_join_size). This is useful when an inadvisable WHERE statement has been issued. The default value for a new connection is 1, which permits all SELECT statements.

    If you set the max_join_size system variable to a value other than DEFAULT, sql_big_selects is set to 0.

  • sql_buffer_result

    Property Value
    System Variable sql_buffer_result
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value 0

    If set to 1, sql_buffer_result forces results from SELECT statements to be put into temporary tables. This helps MySQL free the table locks early and can be beneficial in cases where it takes a long time to send results to the client. The default value is 0.

  • sql_log_off

    Property Value
    System Variable sql_log_off
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value 0

    This variable controls whether logging to the general query log is done. The default value is 0 (do logging). To change logging for the current session, change the session value of this variable. The session user must have the SYSTEM_VARIABLES_ADMIN orSUPER privilege to set this variable. The default value is 0.

  • sql_mode

    Property Value
    Command-Line Format --sql-mode=name
    System Variable sql_mode
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type set
    Default Value (>= 8.0.11) ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_ENGINE_SUBSTITUTION
    Default Value (<= 8.0.4) ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_AUTO_CREATE_USER NO_ENGINE_SUBSTITUTION
    Valid Values (>= 8.0.11)

    ALLOW_INVALID_DATES

    ANSI_QUOTES

    ERROR_FOR_DIVISION_BY_ZERO

    HIGH_NOT_PRECEDENCE

    IGNORE_SPACE

    NO_AUTO_VALUE_ON_ZERO

    NO_BACKSLASH_ESCAPES

    NO_DIR_IN_CREATE

    NO_ENGINE_SUBSTITUTION

    NO_UNSIGNED_SUBTRACTION

    NO_ZERO_DATE

    NO_ZERO_IN_DATE

    ONLY_FULL_GROUP_BY

    PAD_CHAR_TO_FULL_LENGTH

    PIPES_AS_CONCAT

    REAL_AS_FLOAT

    STRICT_ALL_TABLES

    STRICT_TRANS_TABLES

    TIME_TRUNCATE_FRACTIONAL

    Valid Values (>= 8.0.1, <= 8.0.4)

    ALLOW_INVALID_DATES

    ANSI_QUOTES

    ERROR_FOR_DIVISION_BY_ZERO

    HIGH_NOT_PRECEDENCE

    IGNORE_SPACE

    NO_AUTO_CREATE_USER

    NO_AUTO_VALUE_ON_ZERO

    NO_BACKSLASH_ESCAPES

    NO_DIR_IN_CREATE

    NO_ENGINE_SUBSTITUTION

    NO_FIELD_OPTIONS

    NO_KEY_OPTIONS

    NO_TABLE_OPTIONS

    NO_UNSIGNED_SUBTRACTION

    NO_ZERO_DATE

    NO_ZERO_IN_DATE

    ONLY_FULL_GROUP_BY

    PAD_CHAR_TO_FULL_LENGTH

    PIPES_AS_CONCAT

    REAL_AS_FLOAT

    STRICT_ALL_TABLES

    STRICT_TRANS_TABLES

    TIME_TRUNCATE_FRACTIONAL

    Valid Values (8.0.0)

    ALLOW_INVALID_DATES

    ANSI_QUOTES

    ERROR_FOR_DIVISION_BY_ZERO

    HIGH_NOT_PRECEDENCE

    IGNORE_SPACE

    NO_AUTO_CREATE_USER

    NO_AUTO_VALUE_ON_ZERO

    NO_BACKSLASH_ESCAPES

    NO_DIR_IN_CREATE

    NO_ENGINE_SUBSTITUTION

    NO_FIELD_OPTIONS

    NO_KEY_OPTIONS

    NO_TABLE_OPTIONS

    NO_UNSIGNED_SUBTRACTION

    NO_ZERO_DATE

    NO_ZERO_IN_DATE

    ONLY_FULL_GROUP_BY

    PAD_CHAR_TO_FULL_LENGTH

    PIPES_AS_CONCAT

    REAL_AS_FLOAT

    STRICT_ALL_TABLES

    STRICT_TRANS_TABLES

    The current server SQL mode, which can be set dynamically. For details, see Section 5.1.10, “Server SQL Modes”.

    Note

    MySQL installation programs may configure the SQL mode during the installation process.

    If the SQL mode differs from the default or from what you expect, check for a setting in an option file that the server reads at startup.

  • sql_notes

    If set to 1 (the default), warnings of Note level increment warning_count and the server records them. If set to 0, Note warnings do not increment warning_count and the server does not record them. mysqldump includes output to set this variable to 0 so that reloading the dump file does not produce warnings for events that do not affect the integrity of the reload operation.

  • sql_quote_show_create

    If set to 1 (the default), the server quotes identifiers for SHOW CREATE TABLE and SHOW CREATE DATABASE statements. If set to 0, quoting is disabled. This option is enabled by default so that replication works for identifiers that require quoting. See Section 13.7.6.10, “SHOW CREATE TABLE Syntax”, and Section 13.7.6.6, “SHOW CREATE DATABASE Syntax”.

  • sql_require_primary_key

    Property Value
    Command-Line Format --sql-require-primary-key[={OFF|ON}]
    Introduced 8.0.13
    System Variable sql_require_primary_key
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value OFF

    Whether statements that create new tables or alter the structure of existing tables enforce the requirement that tables have a primary key. The SYSTEM_VARIABLES_ADMIN or SUPER privilege is required to set either the global or session value of this variable.

    Enabling this variable helps avoid performance problems in row-based replication that can occur when tables have no primary key. Suppose that a table has no primary key and an update or delete modifies multiple rows. On the master server, this operation can be performed using a single table scan but, when replicated using row-based replication, results in a table scan for each row to be modified on the slave. With a primary key, these table scans do not occur.

    sql_require_primary_key applies to both base tables and TEMPORARY tables, and changes to its value are replicated to slave servers.

    When enabled, sql_require_primary_key has these effects:

    • Attempts to create a new table with no primary key fail with an error. This includes CREATE TABLE ... LIKE. It also includes CREATE TABLE ... SELECT, unless the CREATE TABLE part includes a primary key definition.

    • Attempts to drop the primary key from an existing table fail with an error, with the exception that dropping the primary key and adding a primary key in the same ALTER TABLE statement is permitted.

      Dropping the primary key fails even if the table also contains a UNIQUE NOT NULL index.

    • Attempts to import a table with no primary key fail with an error.

  • sql_safe_updates

    If set to 1, MySQL aborts UPDATE or DELETE statements that do not use a key in the WHERE clause or a LIMIT clause. (Specifically,UPDATE statements must have a WHERE clause that uses a key or a LIMIT clause, or both. DELETE statements must have both.) This makes it possible to catch UPDATE or DELETE statements where keys are not used properly and that would probably change or delete a large number of rows. The default value is 0.

  • sql_select_limit

    Property Value
    System Variable sql_select_limit
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer

    The maximum number of rows to return from SELECT statements. The default value for a new connection is the maximum number of rows that the server permits per table. Typical default values are (232)−1 or (264)−1. If you have changed the limit, the default value can be restored by assigning a value of DEFAULT.

    If a SELECT has a LIMIT clause, the LIMIT takes precedence over the value of sql_select_limit.

  • sql_warnings

    This variable controls whether single-row INSERT statements produce an information string if warnings occur. The default is 0. Set the value to 1 to produce an information string.

  • ssl_ca

    Property Value
    Command-Line Format --ssl-ca=file_name
    System Variable ssl_ca
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name

    The path to a file with a list of trusted SSL Certificate Authorities.

  • ssl_capath

    Property Value
    Command-Line Format --ssl-capath=dir_name
    System Variable ssl_capath
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type directory name

    The path to a directory that contains trusted SSL CA certificates in PEM format.

  • ssl_cert

    Property Value
    Command-Line Format --ssl-cert=file_name
    System Variable ssl_cert
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name

    The name of the SSL certificate file to use for establishing a secure connection.

  • ssl_cipher

    Property Value
    Command-Line Format --ssl-cipher=name
    System Variable ssl_cipher
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The list of permitted ciphers for SSL encryption.

  • ssl_crl

    Property Value
    Command-Line Format --ssl-crl=file_name
    System Variable ssl_crl
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name

    The path to a file containing certificate revocation lists in PEM format. Revocation lists work for MySQL distributions compiled using OpenSSL (but not wolfSSL). See Section 6.4.4, “OpenSSL Versus wolfSSL”.

  • ssl_crlpath

    Property Value
    Command-Line Format --ssl-crlpath=dir_name
    System Variable ssl_crlpath
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type directory name

    The path to a directory that contains files containing certificate revocation lists in PEM format. Revocation lists work for MySQL distributions compiled using OpenSSL (but not wolfSSL). See Section 6.4.4, “OpenSSL Versus wolfSSL”.

  • ssl_fips_mode

    Property Value
    Command-Line Format --ssl-fips-mode={OFF|ON|STRICT}
    Introduced 8.0.11
    System Variable ssl_fips_mode
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value OFF
    Valid Values

    OFF (or 0)

    ON (or 1)

    STRICT (or 2)

    Controls whether to enable FIPS mode on the server side. The ssl_fips_mode system variable differs from other --ssl-xxxoptions in that it is not used to control whether the server permits encrypted connections, but rather to affect which cryptographic operations are permitted. See Section 6.6, “FIPS Support”.

    These ssl_fips_mode values are permitted:

    • OFF (or 0): Disable FIPS mode.

    • ON (or 1): Enable FIPS mode.

    • STRICT (or 2): Enable strict FIPS mode.

    Note

    If the OpenSSL FIPS Object Module is not available, the only permitted value for ssl_fips_mode is OFF. In this case, setting ssl_fips_mode to ON or STRICT at startup causes the server to produce an error message and exit.

  • ssl_key

    Property Value
    Command-Line Format --ssl-key=file_name
    System Variable ssl_key
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type file name

    The name of the SSL key file to use for establishing a secure connection.

  • stored_program_cache

    Property Value
    Command-Line Format --stored-program-cache=#
    System Variable stored_program_cache
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 256
    Minimum Value 16
    Maximum Value 524288

    Sets a soft upper limit for the number of cached stored routines per connection. The value of this variable is specified in terms of the number of stored routines held in each of the two caches maintained by the MySQL Server for, respectively, stored procedures and stored functions.

    Whenever a stored routine is executed this cache size is checked before the first or top-level statement in the routine is parsed; if the number of routines of the same type (stored procedures or stored functions according to which is being executed) exceeds the limit specified by this variable, the corresponding cache is flushed and memory previously allocated for cached objects is freed. This allows the cache to be flushed safely, even when there are dependencies between stored routines.

    The stored procedure and stored function caches exists in parallel with the stored program definition cache partition of the dictionary object cache. The stored procedure and stored function caches are per connection, while the stored program definition cache is shared. The existence of objects in the stored procedure and stored function caches have no dependence on the existence of objects in the stored program definition cache, and vice versa. For more information, see Section 14.4, “Dictionary Object Cache”.

  • stored_program_definition_cache

    Property Value
    Command-Line Format --stored-program-definition-cache=N
    System Variable stored_program_definition_cache
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 256
    Minimum Value 256
    Maximum Value 524288

    Defines a limit for the number of stored program definition objects, both used and unused, that can be kept in the dictionary object cache.

    Unused stored program definition objects are only kept in the dictionary object cache when the number in use is less than the capacity defined by stored_program_definition_cache.

    A setting of 0 means that stored program definition objects are only kept in the dictionary object cache while they are in use.

    The stored program definition cache partition exists in parallel with the stored procedure and stored function caches that are configured using the stored_program_cache option.

    The stored_program_cache option sets a soft upper limit for the number of cached stored procedures or functions per connection, and the limit is checked each time a connection executes a stored procedure or function. The stored program definition cache partition, on the other hand, is a shared cache that stores stored program definition objects for other purposes. The existence of objects in the stored program definition cache partition has no dependence on the existence of objects in the stored procedure cache or stored function cache, and vice versa.

    For related information, see Section 14.4, “Dictionary Object Cache”.

  • super_read_only

    Property Value
    Command-Line Format --super-read-only[={OFF|ON}]
    System Variable super_read_only
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    If the read_only system variable is enabled, the server permits client updates only from users who have the SUPER privilege. If the super_read_only system variable is also enabled, the server prohibits client updates even from users who have SUPER. See the description of the read_only system variable for a description of read-only mode and information about how read_only andsuper_read_only interact.

    Changes to super_read_only on a master server are not replicated to slave servers. The value can be set on a slave server independent of the setting on the master.

  • syseventlog.facility

    Property Value
    Command-Line Format --syseventlog.facility=value
    Introduced 8.0.13
    System Variable syseventlog.facility
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type string
    Default Value daemon

    The facility for error log output written to syslog (what type of program is sending the message). This variable is unavailable unless the log_sink_syseventlog error log component is installed. See Section 5.4.2.3, “Error Logging to the System Log”.

    The permitted values can vary per operating system; consult your system syslog documentation.

    This variable does not exist on Windows.

  • syseventlog.include_pid

    Property Value
    Command-Line Format --syseventlog.include-pid[={0|1}]
    Introduced 8.0.13
    System Variable syseventlog.include_pid
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON

    Whether to include the server process ID in each line of error log output written to syslog. This variable is unavailable unless thelog_sink_syseventlog error log component is installed. See Section 5.4.2.3, “Error Logging to the System Log”.

    This variable does not exist on Windows.

  • syseventlog.tag

    Property Value
    Command-Line Format --syseventlog.tag=tag
    Introduced 8.0.13
    System Variable syseventlog.tag
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type string
    Default Value empty string

    The tag to be added to the server identifier in error log output written to syslog. This variable is unavailable unless the log_sink_syseventlog error log component is installed. See Section 5.4.2.3, “Error Logging to the System Log”.

    By default, the server identifier is mysqld with no tag. If a tag value of tag is specified, it is appended to the server identifier with a leading hyphen, resulting in an identifier of mysqld-tag.

    On Windows, to use a tag that does not already exist, the server must be run from an account with Administrator privileges, to permit creation of a registry entry for the tag. Elevated privileges are not required if the tag already exists.

  • system_time_zone

    Property Value
    System Variable system_time_zone
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The server system time zone. When the server begins executing, it inherits a time zone setting from the machine defaults, possibly modified by the environment of the account used for running the server or the startup script. The value is used to set system_time_zone. Typically the time zone is specified by the TZ environment variable. It also can be specified using the --timezone option of the mysqld_safe script.

    The system_time_zone variable differs from time_zone. Although they might have the same value, the latter variable is used to initialize the time zone for each client that connects. See Section 5.1.12, “MySQL Server Time Zone Support”.

  • table_definition_cache

    Property Value
    System Variable table_definition_cache
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value -1 (signifies autosizing; do not assign this literal value)
    Minimum Value 400
    Maximum Value 524288

    The number of table definitions that can be stored in the definition cache. If you use a large number of tables, you can create a large table definition cache to speed up opening of tables. The table definition cache takes less space and does not use file descriptors, unlike the normal table cache. The minimum value is 400. The default value is based on the following formula, capped to a limit of 2000:

    MIN(400 + table_open_cache / 2, 2000)

    For InnoDB, table_definition_cache acts as a soft limit for the number of open table instances in the InnoDB data dictionary cache. If the number of open table instances exceeds the table_definition_cache setting, the LRU mechanism begins to mark table instances for eviction and eventually removes them from the data dictionary cache. The limit helps address situations in which significant amounts of memory would be used to cache rarely used table instances until the next server restart. The number of table instances with cached metadata could be higher than the limit defined by table_definition_cache, because parent and child table instances with foreign key relationships are not placed on the LRU list and are not subject to eviction from memory.

    Additionally, table_definition_cache defines a soft limit for the number of InnoDB file-per-table tablespaces that can be open at one time, which is also controlled by innodb_open_files. If both table_definition_cache and innodb_open_files are set, the highest setting is used. If neither variable is set, table_definition_cache, which has a higher default value, is used. If the number of open tablespace file handles exceeds the limit defined by table_definition_cache or innodb_open_files, the LRU mechanism searches the tablespace file LRU list for files that are fully flushed and are not currently being extended. This process is performed each time a new tablespace is opened. If there are no inactive tablespaces, no tablespace files are closed.

    The table definition cache exists in parallel with the table definition cache partition of the dictionary object cache. Both caches store table definitions but serve different parts of the MySQL server. Objects in one cache have no dependence on the existence objects in the other. For more information, see Section 14.4, “Dictionary Object Cache”.

  • table_open_cache

    Property Value
    System Variable table_open_cache
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value (>= 8.0.4) 4000
    Default Value (<= 8.0.3) 2000
    Minimum Value 1
    Maximum Value 524288

    The number of open tables for all threads. Increasing this value increases the number of file descriptors that mysqld requires. You can check whether you need to increase the table cache by checking the Opened_tables status variable. See Section 5.1.9, “Server Status Variables”. If the value of Opened_tables is large and you do not use FLUSH TABLES often (which just forces all tables to be closed and reopened), then you should increase the value of the table_open_cache variable. For more information about the table cache, see Section 8.4.3.1, “How MySQL Opens and Closes Tables”.

  • table_open_cache_instances

    Property Value
    System Variable table_open_cache_instances
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type integer
    Default Value 16
    Minimum Value 1
    Maximum Value 64

    The number of open tables cache instances. To improve scalability by reducing contention among sessions, the open tables cache can be partitioned into several smaller cache instances of size table_open_cache / table_open_cache_instances . A session needs to lock only one instance to access it for DML statements. This segments cache access among instances, permitting higher performance for operations that use the cache when there are many sessions accessing tables. (DDL statements still require a lock on the entire cache, but such statements are much less frequent than DML statements.)

    A value of 8 or 16 is recommended on systems that routinely use 16 or more cores.

  • temptable_max_ram

    Property Value
    Command-Line Format --temptable-max-ram=#
    Introduced 8.0.2
    System Variable temptable_max_ram
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 1073741824
    Minimum Value 2097152
    Maximum Value 2^64-1

    Defines the maximum amount of memory that can be occupied by the TempTable storage engine before it starts storing data on disk. The default value is 1073741824 bytes (1GiB). For more information, see Section 8.4.4, “Internal Temporary Table Use in MySQL”.

  • thread_cache_size

    Property Value
    Command-Line Format --thread-cache-size=#
    System Variable thread_cache_size
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value -1 (signifies autosizing; do not assign this literal value)
    Minimum Value 0
    Maximum Value 16384

    How many threads the server should cache for reuse. When a client disconnects, the client's threads are put in the cache if there are fewer than thread_cache_size threads there. Requests for threads are satisfied by reusing threads taken from the cache if possible, and only when the cache is empty is a new thread created. This variable can be increased to improve performance if you have a lot of new connections. Normally, this does not provide a notable performance improvement if you have a good thread implementation. However, if your server sees hundreds of connections per second you should normally set thread_cache_sizehigh enough so that most new connections use cached threads. By examining the difference between the Connections andThreads_created status variables, you can see how efficient the thread cache is. For details, see Section 5.1.9, “Server Status Variables”.

    The default value is based on the following formula, capped to a limit of 100:

    8 + (max_connections / 100)
  • thread_handling

    Property Value
    Command-Line Format --thread-handling=name
    System Variable thread_handling
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type enumeration
    Default Value one-thread-per-connection
    Valid Values

    no-threads

    one-thread-per-connection

    loaded-dynamically

    The thread-handling model used by the server for connection threads. The permissible values are no-threads (the server uses a single thread to handle one connection) and one-thread-per-connection (the server uses one thread to handle each client connection). no-threads is useful for debugging under Linux; see Section 28.5, “Debugging and Porting MySQL”.

  • thread_pool_algorithm

    Property Value
    Command-Line Format --thread-pool-algorithm=#
    Introduced 8.0.11
    System Variable thread_pool_algorithm
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type integer
    Default Value 0
    Minimum Value 0
    Maximum Value 1

    This variable controls which algorithm the thread pool plugin uses:

    • A value of 0 (the default) uses a conservative low-concurrency algorithm which is most well tested and is known to produce very good results.

    • A value of 1 increases the concurrency and uses a more aggressive algorithm which at times has been known to perform 5–10% better on optimal thread counts, but has degrading performance as the number of connections increases. Its use should be considered as experimental and not supported.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_pool_high_priority_connection

    Property Value
    Command-Line Format --thread-pool-high-priority-connection=#
    Introduced 8.0.11
    System Variable thread_pool_high_priority_connection
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 0
    Minimum Value 0
    Maximum Value 1

    This variable affects queuing of new statements prior to execution. If the value is 0 (false, the default), statement queuing uses both the low-priority and high-priority queues. If the value is 1 (true), queued statements always go to the high-priority queue.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_pool_max_unused_threads

    Property Value
    Command-Line Format --thread-pool-max-unused-threads=#
    Introduced 8.0.11
    System Variable thread_pool_max_unused_threads
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 0
    Minimum Value 0
    Maximum Value 4096

    The maximum permitted number of unused threads in the thread pool. This variable makes it possible to limit the amount of memory used by sleeping threads.

    A value of 0 (the default) means no limit on the number of sleeping threads. A value of N where N is greater than 0 means 1 consumer thread and N−1 reserve threads. In this case, if a thread is ready to sleep but the number of sleeping threads is already at the maximum, the thread exits rather than going to sleep.

    A sleeping thread is either sleeping as a consumer thread or a reserve thread. The thread pool permits one thread to be the consumer thread when sleeping. If a thread goes to sleep and there is no existing consumer thread, it will sleep as a consumer thread. When a thread must be woken up, a consumer thread is selected if there is one. A reserve thread is selected only when there is no consumer thread to wake up.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_pool_prio_kickup_timer

    Property Value
    Command-Line Format --thread-pool-prio-kickup-timer=#
    Introduced 8.0.11
    System Variable thread_pool_prio_kickup_timer
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 1000
    Minimum Value 0
    Maximum Value 4294967294

    This variable affects statements waiting for execution in the low-priority queue. The value is the number of milliseconds before a waiting statement is moved to the high-priority queue. The default is 1000 (1 second). The range of values is 0 to 232 − 2.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_pool_size

    Property Value
    Command-Line Format --thread-pool-size=#
    Introduced 8.0.11
    System Variable thread_pool_size
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type integer
    Default Value 16
    Minimum Value 1
    Maximum Value 64

    The number of thread groups in the thread pool. This is the most important parameter controlling thread pool performance. It affects how many statements can execute simultaneously. The default value is 16, with a range from 1 to 64 of permissible values. If a value outside this range is specified, the thread pool plugin does not load and the server writes a message to the error log.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_pool_stall_limit

    Property Value
    Command-Line Format --thread-pool-stall-limit=#
    Introduced 8.0.11
    System Variable thread_pool_stall_limit
    Scope Global
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 6
    Minimum Value 4
    Maximum Value 600

    This variable affects executing statements. The value is the amount of time a statement has to finish after starting to execute before it becomes defined as stalled, at which point the thread pool permits the thread group to begin executing another statement. The value is measured in 10 millisecond units, so a value of 6 (the default) means 60ms. The range of values is 4 to 600 (40ms to 6s). Short wait values permit threads to start more quickly. Short values are also better for avoiding deadlock situations. Long wait values are useful for workloads that include long-running statements, to avoid starting too many new statements while the current ones execute.

    This variable is available only if the thread pool plugin is enabled. See Section 5.6.3, “MySQL Enterprise Thread Pool”

  • thread_stack

    Property Value
    Command-Line Format --thread-stack=#
    System Variable thread_stack
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type integer
    Default Value (64-bit platforms) 262144
    Default Value (32-bit platforms) 196608
    Minimum Value 131072
    Maximum Value (64-bit platforms) 18446744073709551615
    Maximum Value (32-bit platforms) 4294967295
    Block Size 1024

    The stack size for each thread. The default of 192KB (256KB for 64-bit systems) is large enough for normal operation. If the thread stack size is too small, it limits the complexity of the SQL statements that the server can handle, the recursion depth of stored procedures, and other memory-consuming actions.

  • time_format

    This system variable was removed in MySQL 8.0.3.

  • time_zone

    Property Value
    System Variable time_zone
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type string

    The current time zone. This variable is used to initialize the time zone for each client that connects. By default, the initial value of this is 'SYSTEM' (which means, use the value of system_time_zone). The value can be specified explicitly at server startup with the --default-time-zone option. See Section 5.1.12, “MySQL Server Time Zone Support”.

    Note

    If set to SYSTEM, every MySQL function call that requires a timezone calculation makes a system library call to determine the current system timezone. This call may be protected by a global mutex, resulting in contention.

  • timestamp

    Property Value
    System Variable timestamp
    Scope Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type numeric

    Set the time for this client. This is used to get the original timestamp if you use the binary log to restore rows. timestamp_valueshould be a Unix epoch timestamp (a value like that returned by UNIX_TIMESTAMP(), not a value in 'YYYY-MM-DD hh:mm:ss'format) or DEFAULT.

    Setting timestamp to a constant value causes it to retain that value until it is changed again. Setting timestamp to DEFAULTcauses its value to be the current date and time as of the time it is accessed.

    In MySQL 8.0, timestamp is a DOUBLE rather than BIGINT because its value includes a microseconds part.

    SET timestamp affects the value returned by NOW() but not by SYSDATE(). This means that timestamp settings in the binary log have no effect on invocations of SYSDATE(). The server can be started with the --sysdate-is-now option to cause SYSDATE() to be an alias for NOW(), in which case SET timestamp affects both functions.

  • tls_version

    Property Value
    Command-Line Format --tls-version=protocol_list
    System Variable tls_version
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string
    Default Value (>= 8.0.11) TLSv1,TLSv1.1,TLSv1.2
    Default Value (<= 8.0.4)

    TLSv1,TLSv1.1,TLSv1.2 (OpenSSL)

    TLSv1,TLSv1.1 (yaSSL)

    The protocols permitted by the server for encrypted connections. The value is a comma-separated list containing one or more protocol names. The protocols that can be named for this variable depend on the SSL library used to compile MySQL. For details, see Section 6.4.6, “Encrypted Connection Protocols and Ciphers”.

  • tmp_table_size

    Property Value
    Command-Line Format --tmp-table-size=#
    System Variable tmp_table_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type integer
    Default Value 16777216
    Minimum Value 1024
    Maximum Value 18446744073709551615

    The maximum size of internal in-memory temporary tables. This variable does not apply to user-created MEMORY tables.

    The actual limit is determined from whichever of the values of tmp_table_size and max_heap_table_size is smaller. If an in-memory temporary table exceeds the limit, MySQL automatically converts it to an on-disk temporary table. Theinternal_tmp_disk_storage_engine option defines the storage engine used for on-disk temporary tables.

    Increase the value of tmp_table_size (and max_heap_table_size if necessary) if you do many advanced GROUP BY queries and you have lots of memory.

    You can compare the number of internal on-disk temporary tables created to the total number of internal temporary tables created by comparing the values of the Created_tmp_disk_tables and Created_tmp_tables variables.

    See also Section 8.4.4, “Internal Temporary Table Use in MySQL”.

  • tmpdir

    Property Value
    Command-Line Format --tmpdir=dir_name
    System Variable tmpdir
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type directory name

    The directory used for temporary files and temporary tables. This variable can be set to a list of several paths that are used in round-robin fashion. Paths should be separated by colon characters (:) on Unix and semicolon characters (;) on Windows.

    The multiple-directory feature can be used to spread the load between several physical disks. If the MySQL server is acting as a replication slave, you should not set tmpdir to point to a directory on a memory-based file system or to a directory that is cleared when the server host restarts. A replication slave needs some of its temporary files to survive a machine restart so that it can replicate temporary tables or LOAD DATA INFILE operations. If files in the temporary file directory are lost when the server restarts, replication fails. You can set the slave's temporary directory using the slave_load_tmpdir variable. In that case, the slave will not use the general tmpdir value and you can set tmpdir to a nonpermanent location.

  • transaction_alloc_block_size

    Property Value
    Command-Line Format --transaction-alloc-block-size=#
    System Variable transaction_alloc_block_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 8192
    Minimum Value 1024
    Maximum Value 131072
    Block Size 1024

    The amount in bytes by which to increase a per-transaction memory pool which needs memory. See the description oftransaction_prealloc_size.

  • transaction_isolation

    Property Value
    Command-Line Format --transaction-isolation=name
    System Variable transaction_isolation
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value REPEATABLE-READ
    Valid Values

    READ-UNCOMMITTED

    READ-COMMITTED

    REPEATABLE-READ

    SERIALIZABLE

    The default transaction isolation level. Defaults to REPEATABLE-READ.

    This variable can be set directly, or indirectly using the SET TRANSACTION statement. See Section 13.3.7, “SET TRANSACTION Syntax”. If you set transaction_isolation directly to an isolation level name that contains a space, the name should be enclosed within quotation marks, with the space replaced by a dash. For example:

    SET transaction_isolation = 'READ-COMMITTED';

    Any unique prefix of a valid value may be used to set the value of this variable.

    The default transaction isolation level can also be set at startup using the --transaction-isolation server option.

    This variable has nonstandard semantics for runtime changes to the session value made using the SET statement. For most session system variables, these statements are equivalent:

    SET @@var_name = value;
    SET @@session.var_name = value;

    For transaction_isolation, these semantics apply instead:

    • SET @@transaction_isolation = value

      • Not permitted within transactions.

      • Sets the value only for the next single transaction within the session.

    • SET @@session.transaction_isolation = value

      • Permitted within transactions.

      • Sets the value for all subsequent transactions within the session.

      • Does not affect the current ongoing transaction.

      • If executed between transactions, overrides any preceding SET @@transaction_isolation statement to set the value for the next transaction.

  • transaction_prealloc_size

    Property Value
    Command-Line Format --transaction-prealloc-size=#
    System Variable transaction_prealloc_size
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 4096
    Minimum Value 1024
    Maximum Value 131072
    Block Size 1024

    There is a per-transaction memory pool from which various transaction-related allocations take memory. The initial size of the pool in bytes is transaction_prealloc_size. For every allocation that cannot be satisfied from the pool because it has insufficient memory available, the pool is increased by transaction_alloc_block_size bytes. When the transaction ends, the pool is truncated to transaction_prealloc_size bytes.

    By making transaction_prealloc_size sufficiently large to contain all statements within a single transaction, you can avoid many malloc() calls.

  • transaction_read_only

    Property Value
    Command-Line Format --transaction-read-only
    System Variable transaction_read_only
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    The default transaction access mode. The value can be OFF (read/write, the default) or ON (read only).

    This variable can be set directly, or indirectly using the SET TRANSACTION statement. See Section 13.3.7, “SET TRANSACTION Syntax”.

    To set the default transaction access mode at startup, use the --transaction-read-only server option.

    This variable has nonstandard semantics for runtime changes to the session value made using the SET statement. For most session system variables, these statements are equivalent:

    SET @@var_name = value;
    SET @@session.var_name = value;

    For transaction_read_only, these semantics apply instead:

    • SET @@transaction_read_only = value

      • Not permitted within transactions.

      • Sets the value only for the next single transaction within the session.

    • SET @@session.transaction_read_only = value

      • Permitted within transactions.

      • Sets the value for all subsequent transactions within the session.

      • Does not affect the current ongoing transaction.

      • If executed between transactions, overrides any preceding SET @@transaction_read_only statement to set the value for the next transaction.

  • tx_isolation

    Property Value
    Deprecated Yes (removed in 8.0.3)
    System Variable tx_isolation
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type enumeration
    Default Value REPEATABLE-READ
    Valid Values

    READ-UNCOMMITTED

    READ-COMMITTED

    REPEATABLE-READ

    SERIALIZABLE

    This system variable was removed in MySQL 8.0.3. Use transaction_isolation instead.

  • tx_read_only

    Property Value
    Deprecated Yes (removed in 8.0.3)
    System Variable tx_read_only
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type boolean
    Default Value OFF

    This system variable was removed in MySQL 8.0.3. Use transaction_read_only instead.

  • unique_checks

    Property Value
    System Variable unique_checks
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value 1

    If set to 1 (the default), uniqueness checks for secondary indexes in InnoDB tables are performed. If set to 0, storage engines are permitted to assume that duplicate keys are not present in input data. If you know for certain that your data does not contain uniqueness violations, you can set this to 0 to speed up large table imports to InnoDB.

    Setting this variable to 0 does not require storage engines to ignore duplicate keys. An engine is still permitted to check for them and issue duplicate-key errors if it detects them.

  • updatable_views_with_limit

    Property Value
    Command-Line Format --updatable-views-with-limit=#
    System Variable updatable_views_with_limit
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value 1

    This variable controls whether updates to a view can be made when the view does not contain all columns of the primary key defined in the underlying table, if the update statement contains a LIMIT clause. (Such updates often are generated by GUI tools.) An update is an UPDATE or DELETE statement. Primary key here means a PRIMARY KEY, or a UNIQUE index in which no column can contain NULL.

    The variable can have two values:

    • 1 or YES: Issue a warning only (not an error message). This is the default value.

    • 0 or NO: Prohibit the update.

  • use_secondary_engine

    Property Value
    Introduced 8.0.13
    System Variable use_secondary_engine
    Scope Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type enumeration
    Default Value OFF
    Valid Values

    OFF

    ON

    FORCE

    For future use.

  • validate_password.xxx

    The validate_password component implements a set of system variables having names of the form validate_password.xxx. These variables affect password testing by that component; see Section 6.5.3.2, “Password Validation Options and Variables”.

  • validate_user_plugins

    Property Value
    System Variable validate_user_plugins
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type boolean
    Default Value ON

    If this variable is enabled (the default), the server checks each user account and produces a warning if conditions are found that would make the account unusable:

    • The account requires an authentication plugin that is not loaded.

    • The account requires the sha256_password or caching_sha2_password authentication plugin but the server was started with neither SSL nor RSA enabled as required by the plugin.

    Enabling validate_user_plugins slows down server initialization and FLUSH PRIVILEGES. If you do not require the additional checking, you can disable this variable at startup to avoid the performance decrement.

  • version

    The version number for the server. The value might also include a suffix indicating server build or configuration information. -debug indicates that the server was built with debugging support enabled.

  • version_comment

    Property Value
    System Variable version_comment
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The CMake configuration program has a COMPILATION_COMMENT option that permits a comment to be specified when building MySQL. This variable contains the value of that comment. See Section 2.8.4, “MySQL Source-Configuration Options”.

  • version_compile_machine

    Property Value
    System Variable version_compile_machine
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The type of the server binary.

  • version_compile_os

    Property Value
    System Variable version_compile_os
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The type of operating system on which MySQL was built.

  • version_compile_zlib

    Property Value
    Introduced 8.0.11
    System Variable version_compile_zlib
    Scope Global
    Dynamic No
    SET_VAR Hint Applies No
    Type string

    The version of the compiled-in zlib library.

  • wait_timeout

    Property Value
    Command-Line Format --wait-timeout=#
    System Variable wait_timeout
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies No
    Type integer
    Default Value 28800
    Minimum Value 1
    Maximum Value (Other) 31536000
    Maximum Value (Windows) 2147483

    The number of seconds the server waits for activity on a noninteractive connection before closing it.

    On thread startup, the session wait_timeout value is initialized from the global wait_timeout value or from the globalinteractive_timeout value, depending on the type of client (as defined by the CLIENT_INTERACTIVE connect option tomysql_real_connect()). See also interactive_timeout.

  • warning_count

    The number of errors, warnings, and notes that resulted from the last statement that generated messages. This variable is read only. See Section 13.7.6.40, “SHOW WARNINGS Syntax”.

  • windowing_use_high_precision

    Property Value
    Command-Line Format --windowing-use-high-precision=#
    Introduced 8.0.2
    System Variable windowing_use_high_precision
    Scope Global, Session
    Dynamic Yes
    SET_VAR Hint Applies Yes
    Type boolean
    Default Value ON

    Whether to compute window operations without loss of precision. See Section 8.2.1.19, “Window Function Optimization”.

为您推荐

友情链接 |九搜汽车网 |手机ok生活信息网|ok生活信息网|ok微生活
 Powered by www.360SDN.COM   京ICP备11022651号-4 © 2012-2016 版权