MySQL服务器配置选项(mysqld)
mysqld是MySQL服务器。以下讨论涵盖了这些MySQL服务器配置主题:
- 服务器支持的启动选项。您可以在命令行上,通过配置文件或同时在这两者上指定这些选项。
- 服务器系统变量。这些变量反映了启动选项的当前状态和值,其中一些可以在服务器运行时进行修改。
- 服务器状态变量。这些变量包含有关运行时操作的计数器和统计信息。
- 如何设置服务器SQL模式。此设置修改了SQL语法和语义的某些方面,例如为了与其他数据库系统的代码兼容,或控制特定情况下的错误处理。
- 配置和使用IPv6支持。
- 配置和使用时区支持。
- 服务器端帮助功能。
- 服务器关闭过程。根据表的类型(事务性或非事务性)以及是否使用复制,需要考虑性能和可靠性。
有关在MySQL 8.0中已添加,不建议使用或删除的MySQL服务器变量和选项的列表,请参见“在MySQL 8.0中添加,不建议使用或删除的服务器和状态变量及选项”。
注意并非所有MySQL服务器二进制文件和配置都支持所有存储引擎。要了解如何确定MySQL服务器安装支持的存储引擎,请参见“ SHOW ENGINES语句”。
服务器配置默认值
MySQL服务器具有许多操作参数,您可以在服务器启动时使用命令行选项或配置文件(选项文件)进行更改。也可以在运行时更改许多参数。有关在启动或运行时设置参数的一般说明,请参见“服务器命令选项”和“服务器系统变量”。
在Windows上,MySQL Installer与用户进行交互,并my.ini
在基本安装目录中创建一个名为默认选项文件的文件。
注意在Windows上,可能不会显示
.ini
或.cnf
选项文件扩展名。
完成安装过程后,您可以随时编辑默认选项文件,以修改服务器使用的参数。例如,要在文件#
的行首使用带注释的参数设置,请删除#
,并在必要时修改参数值。要禁用设置,请#
在行首添加a 或将其删除。
对于非Windows平台,在服务器安装或数据目录初始化过程中不会创建默认选项文件。按照“使用选项文件”中的说明创建选项文件。如果没有选项文件,则服务器仅以其默认设置启动-有关如何检查这些设置的信息,请参见“服务器配置默认值”。
有关选项文件格式和语法的更多信息,请参见“使用选项文件”。
服务器配置验证
从MySQL 8.0.16开始,MySQL Server支持一个--validate-config
选项,该选项使您无需在正常操作模式下运行服务器即可检查启动配置是否存在问题:
mysqld --validate-config
如果未找到错误,则服务器以退出代码0终止。如果发现错误,则服务器显示诊断消息,并以退出代码1终止。例如:
shell>mysqld --validate-config --no-such-option 2018-11-05T17:50:12.738919Z 0 [ERROR] [MY-000068] [Server] unknown option '--no-such-option'. 2018-11-05T17:50:12.738962Z 0 [ERROR] [MY-010119] [Server] Aborting
一旦发现任何错误,服务器就会终止。要进行其他检查,请更正最初的问题,然后--validate-config
再次运行服务器。
对于前面的示例,如果--validate-config
在显示错误消息时使用结果,则服务器退出代码为1。根据log_error_verbosity
值,也可能会显示警告和信息消息,但不会立即产生终止验证或退出代码为1例如,此命令产生多个警告,两个警告均显示。但是没有错误发生,因此退出代码为0:
shell>mysqld --validate-config --log_error_verbosity=2 --read-only=s --transaction_read_only=s 2018-11-05T15:43:18.445863Z 0 [Warning] [MY-000076] [Server] option 'read_only': boolean value 's' was not recognized. Set to OFF. 2018-11-05T15:43:18.445882Z 0 [Warning] [MY-000076] [Server] option 'transaction-read-only': boolean value 's' was not recognized. Set to OFF.
此命令会产生相同的警告,但也会产生错误,因此错误消息将与警告一起显示,并且退出代码为1:
shell>mysqld --validate-config --log_error_verbosity=2 --no-such-option --read-only=s --transaction_read_only=s 2018-11-05T15:43:53.152886Z 0 [Warning] [MY-000076] [Server] option 'read_only': boolean value 's' was not recognized. Set to OFF. 2018-11-05T15:43:53.152913Z 0 [Warning] [MY-000076] [Server] option 'transaction-read-only': boolean value 's' was not recognized. Set to OFF. 2018-11-05T15:43:53.164889Z 0 [ERROR] [MY-000068] [Server] unknown option '--no-such-option'. 2018-11-05T15:43:53.165053Z 0 [ERROR] [MY-010119] [Server] Aborting
该--validate-config
选项的范围仅限于配置检查,以使服务器可以在不进行正常启动过程的情况下执行该检查。这样,配置检查不会初始化存储引擎和其他插件,组件等,也不会验证与那些未初始化的子系统关联的选项。
--validate-config
可以随时使用,但在升级后特别有用,它可以检查升级的服务器是否认为旧版本服务器先前使用的任何选项已被弃用或作废。例如,tx_read_only
系统变量在MySQL 5.7中已弃用,而在8.0中已删除。假设使用my.cnf
文件中的系统变量运行了MySQL 5.7服务器,然后将其升级到MySQL 8.0。运行升级的服务器--validate-config
以检查配置会产生以下结果:
shell>mysqld --validate-config 2018-11-05T10:40:02.712141Z 0 [ERROR] [MY-000067] [Server] unknown variable 'tx_read_only=ON'. 2018-11-05T10:40:02.712178Z 0 [ERROR] [MY-010119] [Server] Aborting
--validate-config
可以与--defaults-file
选项一起使用,以仅验证特定文件中的选项:
shell>mysqld --defaults-file=./my.cnf-test --validate-config 2018-11-05T10:40:02.712141Z 0 [ERROR] [MY-000067] [Server] unknown variable 'tx_read_only=ON'. 2018-11-05T10:40:02.712178Z 0 [ERROR] [MY-010119] [Server] Aborting
请记住--defaults-file
,如果指定,则必须是命令行上的第一个选项。(以相反的顺序执行前面的示例会生成一条消息,该消息--defaults-file
本身是未知的。)
服务器选项,系统变量和状态变量参考
下表列出了适用于的所有命令行选项,系统变量和状态变量mysqld
。
该表在一个统一列表中列出了命令行选项(Cmd-line),在配置文件中有效的选项(Option file),服务器系统变量(System Var)和状态变量(Status var),并指出了每个选项的位置或变量有效。如果在命令行或选项文件中设置的服务器选项与相应系统变量的名称不同,则将在相应选项的下方立即标记变量名称。对于系统变量和状态变量,变量的范围(Var Scope)为全局,会话或两者。有关设置以及使用选项和变量的详细信息,请参见相应的项目描述。在适当的地方,提供了指向有关该项目的更多信息的直接链接。
有关该表特定于NDB Cluster的版本,请参见“ NDB Cluster mysqld选项和变量参考”。
表5.1命令行选项,系统变量和状态变量摘要
Name | Cmd-Line | Option File | System Var | Status Var | Var Scope | Dynamic |
---|---|---|---|---|---|---|
bort-slave-event-count | Yes | Yes | ||||
Aborted_clients | Yes | Global | No | |||
Aborted_connects | Yes | Global | No | |||
Acl_cache_items_count | Yes | Global | No | |||
ctivate_all_roles_on_login | Yes | Yes | Yes | Global | Yes | |
dmin_address | Yes | Yes | Yes | Global | No | |
dmin_port | Yes | Yes | Yes | Global | No | |
llow-suspicious-udfs | Yes | Yes | ||||
nsi | Yes | Yes | ||||
udit-log | Yes | Yes | ||||
udit_log_buffer_size | Yes | Yes | Yes | Global | No | |
udit_log_compression | Yes | Yes | Yes | Global | No | |
udit_log_connection_policy | Yes | Yes | Yes | Global | Yes | |
udit_log_current_session | Yes | Both | No | |||
Audit_log_current_size | Yes | Global | No | |||
udit_log_encryption | Yes | Yes | Yes | Global | No | |
Audit_log_event_max_drop_size | Yes | Global | No | |||
Audit_log_events | Yes | Global | No | |||
Audit_log_events_filtered | Yes | Global | No | |||
Audit_log_events_lost | Yes | Global | No | |||
Audit_log_events_written | Yes | Global | No | |||
udit_log_exclude_accounts | Yes | Yes | Yes | Global | Yes | |
udit_log_file | Yes | Yes | Yes | Global | No | |
udit_log_filter_id | Yes | Both | No | |||
udit_log_flush | Yes | Global | Yes | |||
udit_log_format | Yes | Yes | Yes | Global | No | |
udit_log_include_accounts | Yes | Yes | Yes | Global | Yes | |
udit_log_password_history_keep_days | Yes | Yes | Yes | Global | Yes | |
udit_log_policy | Yes | Yes | Yes | Global | No | |
udit_log_read_buffer_size | Yes | Yes | Yes | Varies | Varies | |
udit_log_rotate_on_size | Yes | Yes | Yes | Global | Yes | |
udit_log_statement_policy | Yes | Yes | Yes | Global | Yes | |
udit_log_strategy | Yes | Yes | Yes | Global | No | |
Audit_log_total_size | Yes | Global | No | |||
Audit_log_write_waits | Yes | Global | No | |||
uthentication_ldap_sasl_auth_method_name | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_bind_base_dn | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_bind_root_dn | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_bind_root_pwd | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_ca_path | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_group_search_attr | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_group_search_filter | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_init_pool_size | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_log_status | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_max_pool_size | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_server_host | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_server_port | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_tls | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_sasl_user_search_attr | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_auth_method_name | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_bind_base_dn | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_bind_root_dn | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_bind_root_pwd | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_ca_path | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_group_search_attr | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_group_search_filter | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_init_pool_size | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_log_status | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_max_pool_size | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_server_host | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_server_port | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_tls | Yes | Yes | Yes | Global | Yes | |
uthentication_ldap_simple_user_search_attr | Yes | Yes | Yes | Global | Yes | |
uthentication_windows_log_level | Yes | Yes | Yes | Global | No | |
uthentication_windows_use_principal_name | Yes | Yes | Yes | Global | No | |
uto_generate_certs | Yes | Yes | Yes | Global | No | |
uto_increment_increment | Yes | Yes | Yes | Both | Yes | |
uto_increment_offset | Yes | Yes | Yes | Both | Yes | |
utocommit | Yes | Yes | Yes | Both | Yes | |
utomatic_sp_privileges | Yes | Yes | Yes | Global | Yes | |
void_temporal_upgrade | Yes | Yes | Yes | Global | Yes | |
back_log | Yes | Yes | Yes | Global | No | |
basedir | Yes | Yes | Yes | Global | No | |
big_tables | Yes | Yes | Yes | Both | Yes | |
bind_address | Yes | Yes | Yes | Global | No | |
Binlog_cache_disk_use | Yes | Global | No | |||
binlog_cache_size | Yes | Yes | Yes | Global | Yes | |
Binlog_cache_use | Yes | Global | No | |||
binlog-checksum | Yes | Yes | ||||
binlog_checksum | Yes | Yes | Yes | Global | Yes | |
binlog_direct_non_transactional_updates | Yes | Yes | Yes | Both | Yes | |
binlog-do-db | Yes | Yes | ||||
binlog_encryption | Yes | Yes | Yes | Global | Yes | |
binlog_error_action | Yes | Yes | Yes | Global | Yes | |
binlog_expire_logs_seconds | Yes | Yes | Yes | Global | Yes | |
binlog_format | Yes | Yes | Yes | Both | Yes | |
binlog_group_commit_sync_delay | Yes | Yes | Yes | Global | Yes | |
binlog_group_commit_sync_no_delay_count | Yes | Yes | Yes | Global | Yes | |
binlog_gtid_simple_recovery | Yes | Yes | Yes | Global | No | |
binlog-ignore-db | Yes | Yes | ||||
binlog_max_flush_queue_time | Yes | Yes | Yes | Global | Yes | |
binlog_order_commits | Yes | Yes | Yes | Global | Yes | |
binlog_rotate_encryption_master_key_at_startup | Yes | Yes | Yes | Global | No | |
binlog_row_event_max_size | Yes | Yes | Yes | Global | No | |
binlog_row_image | Yes | Yes | Yes | Both | Yes | |
binlog_row_metadat | Yes | Yes | Yes | Global | Yes | |
binlog_row_value_options | Yes | Yes | Yes | Both | Yes | |
binlog_rows_query_log_events | Yes | Yes | Yes | Both | Yes | |
Binlog_stmt_cache_disk_use | Yes | Global | No | |||
binlog_stmt_cache_size | Yes | Yes | Yes | Global | Yes | |
Binlog_stmt_cache_use | Yes | Global | No | |||
binlog_transaction_dependency_history_size | Yes | Yes | Yes | Global | Yes | |
binlog_transaction_dependency_tracking | Yes | Yes | Yes | Global | Yes | |
block_encryption_mode | Yes | Yes | Yes | Both | Yes | |
bulk_insert_buffer_size | Yes | Yes | Yes | Both | Yes | |
Bytes_received | Yes | Both | No | |||
Bytes_sent | Yes | Both | No | |||
caching_sha2_password_auto_generate_rsa_keys | Yes | Yes | Yes | Global | No | |
caching_sha2_password_private_key_path | Yes | Yes | Yes | Global | No | |
caching_sha2_password_public_key_path | Yes | Yes | Yes | Global | No | |
Caching_sha2_password_rsa_public_key | Yes | Global | No | |||
character_set_client | Yes | Both | Yes | |||
character-set-client-handshake | Yes | Yes | ||||
character_set_connection | Yes | Both | Yes | |||
character_set_database(note 1) | Yes | Both | Yes | |||
character_set_filesystem | Yes | Yes | Yes | Both | Yes | |
character_set_results | Yes | Both | Yes | |||
character_set_server | Yes | Yes | Yes | Both | Yes | |
character_set_system | Yes | Global | No | |||
character_sets_dir | Yes | Yes | Yes | Global | No | |
check_proxy_users | Yes | Yes | Yes | Global | Yes | |
chroot | Yes | Yes | ||||
clone_autotune_concurrency | Yes | Yes | Yes | Global | Yes | |
clone_buffer_size | Yes | Yes | Yes | Global | Yes | |
clone_ddl_timeout | Yes | Yes | Yes | Global | Yes | |
clone_enable_compression | Yes | Yes | Yes | Global | Yes | |
clone_max_concurrency | Yes | Yes | Yes | Global | Yes | |
clone_max_data_bandwidth | Yes | Yes | Yes | Global | Yes | |
clone_max_network_bandwidth | Yes | Yes | Yes | Global | Yes | |
clone_ssl_c | Yes | Yes | Yes | Global | Yes | |
clone_ssl_cert | Yes | Yes | Yes | Global | Yes | |
clone_ssl_key | Yes | Yes | Yes | Global | Yes | |
clone_valid_donor_list | Yes | Yes | Yes | Global | Yes | |
collation_connection | Yes | Both | Yes | |||
collation_database(note 1) | Yes | Both | Yes | |||
collation_server | Yes | Yes | Yes | Both | Yes | |
Com_admin_commands | Yes | Both | No | |||
Com_alter_db | Yes | Both | No | |||
Com_alter_event | Yes | Both | No | |||
Com_alter_function | Yes | Both | No | |||
Com_alter_procedure | Yes | Both | No | |||
Com_alter_resource_group | Yes | Global | No | |||
Com_alter_server | Yes | Both | No | |||
Com_alter_table | Yes | Both | No | |||
Com_alter_tablespace | Yes | Both | No | |||
Com_alter_user | Yes | Both | No | |||
Com_alter_user_default_role | Yes | Global | No | |||
Com_analyze | Yes | Both | No | |||
Com_assign_to_keycache | Yes | Both | No | |||
Com_begin | Yes | Both | No | |||
Com_binlog | Yes | Both | No | |||
Com_call_procedure | Yes | Both | No | |||
Com_change_db | Yes | Both | No | |||
Com_change_master | Yes | Both | No | |||
Com_change_repl_filter | Yes | Both | No | |||
Com_check | Yes | Both | No | |||
Com_checksum | Yes | Both | No | |||
Com_clone | Yes | Global | No | |||
Com_commit | Yes | Both | No | |||
Com_create_db | Yes | Both | No | |||
Com_create_event | Yes | Both | No | |||
Com_create_function | Yes | Both | No | |||
Com_create_index | Yes | Both | No | |||
Com_create_procedure | Yes | Both | No | |||
Com_create_resource_group | Yes | Global | No | |||
Com_create_role | Yes | Global | No | |||
Com_create_server | Yes | Both | No | |||
Com_create_table | Yes | Both | No | |||
Com_create_trigger | Yes | Both | No | |||
Com_create_udf | Yes | Both | No | |||
Com_create_user | Yes | Both | No | |||
Com_create_view | Yes | Both | No | |||
Com_dealloc_sql | Yes | Both | No | |||
Com_delete | Yes | Both | No | |||
Com_delete_multi | Yes | Both | No | |||
Com_do | Yes | Both | No | |||
Com_drop_db | Yes | Both | No | |||
Com_drop_event | Yes | Both | No | |||
Com_drop_function | Yes | Both | No | |||
Com_drop_index | Yes | Both | No | |||
Com_drop_procedure | Yes | Both | No | |||
Com_drop_resource_group | Yes | Global | No | |||
Com_drop_role | Yes | Global | No | |||
Com_drop_server | Yes | Both | No | |||
Com_drop_table | Yes | Both | No | |||
Com_drop_trigger | Yes | Both | No | |||
Com_drop_user | Yes | Both | No | |||
Com_drop_view | Yes | Both | No | |||
Com_empty_query | Yes | Both | No | |||
Com_execute_sql | Yes | Both | No | |||
Com_explain_other | Yes | Both | No | |||
Com_flush | Yes | Both | No | |||
Com_get_diagnostics | Yes | Both | No | |||
Com_grant | Yes | Both | No | |||
Com_grant_roles | Yes | Global | No | |||
Com_group_replication_start | Yes | Global | No | |||
Com_group_replication_stop | Yes | Global | No | |||
Com_ha_close | Yes | Both | No | |||
Com_ha_open | Yes | Both | No | |||
Com_ha_read | Yes | Both | No | |||
Com_help | Yes | Both | No | |||
Com_insert | Yes | Both | No | |||
Com_insert_select | Yes | Both | No | |||
Com_install_component | Yes | Global | No | |||
Com_install_plugin | Yes | Both | No | |||
Com_kill | Yes | Both | No | |||
Com_load | Yes | Both | No | |||
Com_lock_tables | Yes | Both | No | |||
Com_optimize | Yes | Both | No | |||
Com_preload_keys | Yes | Both | No | |||
Com_prepare_sql | Yes | Both | No | |||
Com_purge | Yes | Both | No | |||
Com_purge_before_date | Yes | Both | No | |||
Com_release_savepoint | Yes | Both | No | |||
Com_rename_table | Yes | Both | No | |||
Com_rename_user | Yes | Both | No | |||
Com_repair | Yes | Both | No | |||
Com_replace | Yes | Both | No | |||
Com_replace_select | Yes | Both | No | |||
Com_reset | Yes | Both | No | |||
Com_resignal | Yes | Both | No | |||
Com_restart | Yes | Both | No | |||
Com_revoke | Yes | Both | No | |||
Com_revoke_all | Yes | Both | No | |||
Com_revoke_roles | Yes | Global | No | |||
Com_rollback | Yes | Both | No | |||
Com_rollback_to_savepoint | Yes | Both | No | |||
Com_savepoint | Yes | Both | No | |||
Com_select | Yes | Both | No | |||
Com_set_option | Yes | Both | No | |||
Com_set_resource_group | Yes | Global | No | |||
Com_set_role | Yes | Global | No | |||
Com_show_authors | Yes | Both | No | |||
Com_show_binlog_events | Yes | Both | No | |||
Com_show_binlogs | Yes | Both | No | |||
Com_show_charsets | Yes | Both | No | |||
Com_show_collations | Yes | Both | No | |||
Com_show_contributors | Yes | Both | No | |||
Com_show_create_db | Yes | Both | No | |||
Com_show_create_event | Yes | Both | No | |||
Com_show_create_func | Yes | Both | No | |||
Com_show_create_proc | Yes | Both | No | |||
Com_show_create_table | Yes | Both | No | |||
Com_show_create_trigger | Yes | Both | No | |||
Com_show_create_user | Yes | Both | No | |||
Com_show_databases | Yes | Both | No | |||
Com_show_engine_logs | Yes | Both | No | |||
Com_show_engine_mutex | Yes | Both | No | |||
Com_show_engine_status | Yes | Both | No | |||
Com_show_errors | Yes | Both | No | |||
Com_show_events | Yes | Both | No | |||
Com_show_fields | Yes | Both | No | |||
Com_show_function_code | Yes | Both | No | |||
Com_show_function_status | Yes | Both | No | |||
Com_show_grants | Yes | Both | No | |||
Com_show_keys | Yes | Both | No | |||
Com_show_master_status | Yes | Both | No | |||
Com_show_ndb_status | Yes | Both | No | |||
Com_show_open_tables | Yes | Both | No | |||
Com_show_plugins | Yes | Both | No | |||
Com_show_privileges | Yes | Both | No | |||
Com_show_procedure_code | Yes | Both | No | |||
Com_show_procedure_status | Yes | Both | No | |||
Com_show_processlist | Yes | Both | No | |||
Com_show_profile | Yes | Both | No | |||
Com_show_profiles | Yes | Both | No | |||
Com_show_relaylog_events | Yes | Both | No | |||
Com_show_slave_hosts | Yes | Both | No | |||
Com_show_slave_status | Yes | Both | No | |||
Com_show_status | Yes | Both | No | |||
Com_show_storage_engines | Yes | Both | No | |||
Com_show_table_status | Yes | Both | No | |||
Com_show_tables | Yes | Both | No | |||
Com_show_triggers | Yes | Both | No | |||
Com_show_variables | Yes | Both | No | |||
Com_show_warnings | Yes | Both | No | |||
Com_shutdown | Yes | Both | No | |||
Com_signal | Yes | Both | No | |||
Com_slave_start | Yes | Both | No | |||
Com_slave_stop | Yes | Both | No | |||
Com_stmt_close | Yes | Both | No | |||
Com_stmt_execute | Yes | Both | No | |||
Com_stmt_fetch | Yes | Both | No | |||
Com_stmt_prepare | Yes | Both | No | |||
Com_stmt_reprepare | Yes | Both | No | |||
Com_stmt_reset | Yes | Both | No | |||
Com_stmt_send_long_dat | Yes | Both | No | |||
Com_truncate | Yes | Both | No | |||
Com_uninstall_component | Yes | Global | No | |||
Com_uninstall_plugin | Yes | Both | No | |||
Com_unlock_tables | Yes | Both | No | |||
Com_update | Yes | Both | No | |||
Com_update_multi | Yes | Both | No | |||
Com_xa_commit | Yes | Both | No | |||
Com_xa_end | Yes | Both | No | |||
Com_xa_prepare | Yes | Both | No | |||
Com_xa_recover | Yes | Both | No | |||
Com_xa_rollback | Yes | Both | No | |||
Com_xa_start | Yes | Both | No | |||
completion_type | Yes | Yes | Yes | Both | Yes | |
Compression | Yes | Session | No | |||
Compression_algorithm | Yes | Global | No | |||
Compression_level | Yes | Global | No | |||
concurrent_insert | Yes | Yes | Yes | Global | Yes | |
connect_timeout | Yes | Yes | Yes | Global | Yes | |
Connection_control_delay_generated | Yes | Global | No | |||
connection_control_failed_connections_threshold | Yes | Yes | Yes | Global | Yes | |
connection_control_max_connection_delay | Yes | Yes | Yes | Global | Yes | |
connection_control_min_connection_delay | Yes | Yes | Yes | Global | Yes | |
Connection_errors_accept | Yes | Global | No | |||
Connection_errors_internal | Yes | Global | No | |||
Connection_errors_max_connections | Yes | Global | No | |||
Connection_errors_peer_address | Yes | Global | No | |||
Connection_errors_select | Yes | Global | No | |||
Connection_errors_tcpwrap | Yes | Global | No | |||
Connections | Yes | Global | No | |||
console | Yes | Yes | ||||
core-file | Yes | Yes | ||||
core_file | Yes | Global | No | |||
create_admin_listener_thread | Yes | Yes | Yes | Global | No | |
Created_tmp_disk_tables | Yes | Both | No | |||
Created_tmp_files | Yes | Global | No | |||
Created_tmp_tables | Yes | Both | No | |||
cte_max_recursion_depth | Yes | Yes | Yes | Both | Yes | |
Current_tls_c | Yes | Global | No | |||
Current_tls_capath | Yes | Global | No | |||
Current_tls_cert | Yes | Global | No | |||
Current_tls_cipher | Yes | Global | No | |||
Current_tls_ciphersuites | Yes | Global | No | |||
Current_tls_crl | Yes | Global | No | |||
Current_tls_crlpath | Yes | Global | No | |||
Current_tls_key | Yes | Global | No | |||
Current_tls_version | Yes | Global | No | |||
daemon_memcached_enable_binlog | Yes | Yes | Yes | Global | No | |
daemon_memcached_engine_lib_name | Yes | Yes | Yes | Global | No | |
daemon_memcached_engine_lib_path | Yes | Yes | Yes | Global | No | |
daemon_memcached_option | Yes | Yes | Yes | Global | No | |
daemon_memcached_r_batch_size | Yes | Yes | Yes | Global | No | |
daemon_memcached_w_batch_size | Yes | Yes | Yes | Global | No | |
daemonize | Yes | Yes | ||||
datadir | Yes | Yes | Yes | Global | No | |
ddl-rewriter | Yes | Yes | ||||
debug | Yes | Yes | Yes | Both | Yes | |
debug_sync | Yes | Session | Yes | |||
debug-sync-timeout | Yes | Yes | ||||
default_authentication_plugin | Yes | Yes | Yes | Global | No | |
default_collation_for_utf8mb4 | Yes | Both | Yes | |||
default_password_lifetime | Yes | Yes | Yes | Global | Yes | |
default_storage_engine | Yes | Yes | Yes | Both | Yes | |
default_table_encryption | Yes | Yes | Yes | Both | Yes | |
default-time-zone | Yes | Yes | ||||
default_tmp_storage_engine | Yes | Yes | Yes | Both | Yes | |
default_week_format | Yes | Yes | Yes | Both | Yes | |
defaults-extra-file | Yes | |||||
defaults-file | Yes | |||||
defaults-group-suffix | Yes | |||||
delay_key_write | Yes | Yes | Yes | Global | Yes | |
Delayed_errors | Yes | Global | No | |||
delayed_insert_limit | Yes | Yes | Yes | Global | Yes | |
Delayed_insert_threads | Yes | Global | No | |||
delayed_insert_timeout | Yes | Yes | Yes | Global | Yes | |
delayed_queue_size | Yes | Yes | Yes | Global | Yes | |
Delayed_writes | Yes | Global | No | |||
disabled_storage_engines | Yes | Yes | Yes | Global | No | |
disconnect_on_expired_password | Yes | Yes | Yes | Global | No | |
disconnect-slave-event-count | Yes | Yes | ||||
div_precision_increment | Yes | Yes | Yes | Both | Yes | |
dragnet.log_error_filter_rules | Yes | Yes | Yes | Global | Yes | |
dragnet.Status | Yes | Global | No | |||
early-plugin-load | Yes | Yes | ||||
end_markers_in_json | Yes | Yes | Yes | Both | Yes | |
enforce_gtid_consistency | Yes | Yes | Yes | Global | Yes | |
eq_range_index_dive_limit | Yes | Yes | Yes | Both | Yes | |
error_count | Yes | Session | No | |||
event_scheduler | Yes | Yes | Yes | Global | Yes | |
exit-info | Yes | Yes | ||||
expire_logs_days | Yes | Yes | Yes | Global | Yes | |
explicit_defaults_for_timestamp | Yes | Yes | Yes | Both | Yes | |
external-locking | Yes | Yes | ||||
-Variable: skip_external_locking | ||||||
external_user | Yes | Session | No | |||
federated | Yes | Yes | ||||
Firewall_access_denied | Yes | Global | No | |||
Firewall_access_granted | Yes | Global | No | |||
Firewall_cached_entries | Yes | Global | No | |||
flush | Yes | Yes | Yes | Global | Yes | |
Flush_commands | Yes | Global | No | |||
flush_time | Yes | Yes | Yes | Global | Yes | |
foreign_key_checks | Yes | Both | Yes | |||
ft_boolean_syntax | Yes | Yes | Yes | Global | Yes | |
ft_max_word_len | Yes | Yes | Yes | Global | No | |
ft_min_word_len | Yes | Yes | Yes | Global | No | |
ft_query_expansion_limit | Yes | Yes | Yes | Global | No | |
ft_stopword_file | Yes | Yes | Yes | Global | No | |
gdb | Yes | Yes | ||||
general_log | Yes | Yes | Yes | Global | Yes | |
general_log_file | Yes | Yes | Yes | Global | Yes | |
generated_random_password_length | Yes | Yes | Yes | Both | Yes | |
group_concat_max_len | Yes | Yes | Yes | Both | Yes | |
group_replication_allow_local_lower_version_join | Yes | Yes | Yes | Global | Yes | |
group_replication_auto_increment_increment | Yes | Yes | Yes | Global | Yes | |
group_replication_autorejoin_tries | Yes | Yes | Yes | Global | Yes | |
group_replication_bootstrap_group | Yes | Yes | Yes | Global | Yes | |
group_replication_clone_threshold | Yes | Yes | Yes | Global | Yes | |
group_replication_communication_debug_options | Yes | Yes | Yes | Global | Yes | |
group_replication_communication_max_message_size | Yes | Yes | Yes | Global | Yes | |
group_replication_components_stop_timeout | Yes | Yes | Yes | Global | Yes | |
group_replication_compression_threshold | Yes | Yes | Yes | Global | Yes | |
group_replication_consistency | Yes | Yes | Yes | Both | Yes | |
group_replication_enforce_update_everywhere_checks | Yes | Yes | Yes | Global | Yes | |
group_replication_exit_state_action | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_applier_threshold | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_certifier_threshold | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_hold_percent | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_max_commit_quot | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_member_quota_percent | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_min_quot | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_min_recovery_quot | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_mode | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_period | Yes | Yes | Yes | Global | Yes | |
group_replication_flow_control_release_percent | Yes | Yes | Yes | Global | Yes | |
group_replication_force_members | Yes | Yes | Yes | Global | Yes | |
group_replication_group_name | Yes | Yes | Yes | Global | Yes | |
group_replication_group_seeds | Yes | Yes | Yes | Global | Yes | |
group_replication_gtid_assignment_block_size | Yes | Yes | Yes | Global | Yes | |
group_replication_ip_whitelist | Yes | Yes | Yes | Global | Yes | |
group_replication_local_address | Yes | Yes | Yes | Global | Yes | |
group_replication_member_expel_timeout | Yes | Yes | Yes | Global | Yes | |
group_replication_member_weight | Yes | Yes | Yes | Global | Yes | |
group_replication_message_cache_size | Yes | Yes | Yes | Global | Yes | |
group_replication_poll_spin_loops | Yes | Yes | Yes | Global | Yes | |
group_replication_primary_member | Yes | Global | No | |||
group_replication_recovery_complete_at | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_compression_algorithm | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_get_public_key | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_public_key_path | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_reconnect_interval | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_retry_count | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_c | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_capath | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_cert | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_cipher | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_crl | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_crlpath | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_key | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_ssl_verify_server_cert | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_tls_ciphersuites | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_tls_version | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_use_ssl | Yes | Yes | Yes | Global | Yes | |
group_replication_recovery_zstd_compression_level | Yes | Yes | Yes | Global | Yes | |
group_replication_single_primary_mode | Yes | Yes | Yes | Global | Yes | |
group_replication_ssl_mode | Yes | Yes | Yes | Global | Yes | |
group_replication_start_on_boot | Yes | Yes | Yes | Global | Yes | |
group_replication_transaction_size_limit | Yes | Yes | Yes | Global | Yes | |
group_replication_unreachable_majority_timeout | Yes | Yes | Yes | Global | Yes | |
gtid_executed | Yes | Varies | No | |||
gtid_executed_compression_period | Yes | Yes | Yes | Global | Yes | |
gtid_mode | Yes | Yes | Yes | Global | Yes | |
gtid_next | Yes | Session | Yes | |||
gtid_owned | Yes | Both | No | |||
gtid_purged | Yes | Global | Yes | |||
Handler_commit | Yes | Both | No | |||
Handler_delete | Yes | Both | No | |||
Handler_discover | Yes | Both | No | |||
Handler_external_lock | Yes | Both | No | |||
Handler_mrr_init | Yes | Both | No | |||
Handler_prepare | Yes | Both | No | |||
Handler_read_first | Yes | Both | No | |||
Handler_read_key | Yes | Both | No | |||
Handler_read_last | Yes | Both | No | |||
Handler_read_next | Yes | Both | No | |||
Handler_read_prev | Yes | Both | No | |||
Handler_read_rnd | Yes | Both | No | |||
Handler_read_rnd_next | Yes | Both | No | |||
Handler_rollback | Yes | Both | No | |||
Handler_savepoint | Yes | Both | No | |||
Handler_savepoint_rollback | Yes | Both | No | |||
Handler_update | Yes | Both | No | |||
Handler_write | Yes | Both | No | |||
have_compress | Yes | Global | No | |||
have_dynamic_loading | Yes | Global | No | |||
have_geometry | Yes | Global | No | |||
have_openssl | Yes | Global | No | |||
have_profiling | Yes | Global | No | |||
have_query_cache | Yes | Global | No | |||
have_rtree_keys | Yes | Global | No | |||
have_ssl | Yes | Global | No | |||
have_statement_timeout | Yes | Global | No | |||
have_symlink | Yes | Global | No | |||
help | Yes | Yes | ||||
histogram_generation_max_mem_size | Yes | Yes | Yes | Both | Yes | |
host_cache_size | Yes | Yes | Yes | Global | Yes | |
hostname | Yes | Global | No | |||
identity | Yes | Session | Yes | |||
immediate_server_version | Yes | Session | Yes | |||
information_schema_stats_expiry | Yes | Yes | Yes | Both | Yes | |
init_connect | Yes | Yes | Yes | Global | Yes | |
init_file | Yes | Yes | Yes | Global | No | |
init_slave | Yes | Yes | Yes | Global | Yes | |
initialize | Yes | Yes | ||||
initialize-insecure | Yes | Yes | ||||
innodb | Yes | Yes | ||||
innodb_adaptive_flushing | Yes | Yes | Yes | Global | Yes | |
innodb_adaptive_flushing_lwm | Yes | Yes | Yes | Global | Yes | |
innodb_adaptive_hash_index | Yes | Yes | Yes | Global | Yes | |
innodb_adaptive_hash_index_parts | Yes | Yes | Yes | Global | No | |
innodb_adaptive_max_sleep_delay | Yes | Yes | Yes | Global | Yes | |
innodb_api_bk_commit_interval | Yes | Yes | Yes | Global | Yes | |
innodb_api_disable_rowlock | Yes | Yes | Yes | Global | No | |
innodb_api_enable_binlog | Yes | Yes | Yes | Global | No | |
innodb_api_enable_mdl | Yes | Yes | Yes | Global | No | |
innodb_api_trx_level | Yes | Yes | Yes | Global | Yes | |
innodb_autoextend_increment | Yes | Yes | Yes | Global | Yes | |
innodb_autoinc_lock_mode | Yes | Yes | Yes | Global | No | |
innodb_background_drop_list_empty | Yes | Yes | Yes | Global | Yes | |
Innodb_buffer_pool_bytes_dat | Yes | Global | No | |||
Innodb_buffer_pool_bytes_dirty | Yes | Global | No | |||
innodb_buffer_pool_chunk_size | Yes | Yes | Yes | Global | No | |
innodb_buffer_pool_debug | Yes | Yes | Yes | Global | No | |
innodb_buffer_pool_dump_at_shutdown | Yes | Yes | Yes | Global | Yes | |
innodb_buffer_pool_dump_now | Yes | Yes | Yes | Global | Yes | |
innodb_buffer_pool_dump_pct | Yes | Yes | Yes | Global | Yes | |
Innodb_buffer_pool_dump_status | Yes | Global | No | |||
innodb_buffer_pool_filename | Yes | Yes | Yes | Global | Yes | |
innodb_buffer_pool_in_core_file | Yes | Yes | Yes | Global | Yes | |
innodb_buffer_pool_instances | Yes | Yes | Yes | Global | No | |
innodb_buffer_pool_load_abort | Yes | Yes | Yes | Global | Yes | |
innodb_buffer_pool_load_at_startup | Yes | Yes | Yes | Global | No | |
innodb_buffer_pool_load_now | Yes | Yes | Yes | Global | Yes | |
Innodb_buffer_pool_load_status | Yes | Global | No | |||
Innodb_buffer_pool_pages_dat | Yes | Global | No | |||
Innodb_buffer_pool_pages_dirty | Yes | Global | No | |||
Innodb_buffer_pool_pages_flushed | Yes | Global | No | |||
Innodb_buffer_pool_pages_free | Yes | Global | No | |||
Innodb_buffer_pool_pages_latched | Yes | Global | No | |||
Innodb_buffer_pool_pages_misc | Yes | Global | No | |||
Innodb_buffer_pool_pages_total | Yes | Global | No | |||
Innodb_buffer_pool_read_ahead | Yes | Global | No | |||
Innodb_buffer_pool_read_ahead_evicted | Yes | Global | No | |||
Innodb_buffer_pool_read_ahead_rnd | Yes | Global | No | |||
Innodb_buffer_pool_read_requests | Yes | Global | No | |||
Innodb_buffer_pool_reads | Yes | Global | No | |||
Innodb_buffer_pool_resize_status | Yes | Global | No | |||
innodb_buffer_pool_size | Yes | Yes | Yes | Global | Yes | |
Innodb_buffer_pool_wait_free | Yes | Global | No | |||
Innodb_buffer_pool_write_requests | Yes | Global | No | |||
innodb_change_buffer_max_size | Yes | Yes | Yes | Global | Yes | |
innodb_change_buffering | Yes | Yes | Yes | Global | Yes | |
innodb_change_buffering_debug | Yes | Yes | Yes | Global | Yes | |
innodb_checkpoint_disabled | Yes | Yes | Yes | Global | Yes | |
innodb_checksum_algorithm | Yes | Yes | Yes | Global | Yes | |
innodb_cmp_per_index_enabled | Yes | Yes | Yes | Global | Yes | |
innodb_commit_concurrency | Yes | Yes | Yes | Global | Yes | |
innodb_compress_debug | Yes | Yes | Yes | Global | Yes | |
innodb_compression_failure_threshold_pct | Yes | Yes | Yes | Global | Yes | |
innodb_compression_level | Yes | Yes | Yes | Global | Yes | |
innodb_compression_pad_pct_max | Yes | Yes | Yes | Global | Yes | |
innodb_concurrency_tickets | Yes | Yes | Yes | Global | Yes | |
innodb_data_file_path | Yes | Yes | Yes | Global | No | |
Innodb_data_fsyncs | Yes | Global | No | |||
innodb_data_home_dir | Yes | Yes | Yes | Global | No | |
Innodb_data_pending_fsyncs | Yes | Global | No | |||
Innodb_data_pending_reads | Yes | Global | No | |||
Innodb_data_pending_writes | Yes | Global | No | |||
Innodb_data_read | Yes | Global | No | |||
Innodb_data_reads | Yes | Global | No | |||
Innodb_data_writes | Yes | Global | No | |||
Innodb_data_written | Yes | Global | No | |||
Innodb_dblwr_pages_written | Yes | Global | No | |||
Innodb_dblwr_writes | Yes | Global | No | |||
innodb_ddl_log_crash_reset_debug | Yes | Yes | Yes | Global | Yes | |
innodb_deadlock_detect | Yes | Yes | Yes | Global | Yes | |
innodb_dedicated_server | Yes | Yes | Yes | Global | No | |
innodb_default_row_format | Yes | Yes | Yes | Global | Yes | |
innodb_directories | Yes | Yes | Yes | Global | No | |
innodb_disable_sort_file_cache | Yes | Yes | Yes | Global | Yes | |
innodb_doublewrite | Yes | Yes | Yes | Global | No | |
innodb_fast_shutdown | Yes | Yes | Yes | Global | Yes | |
innodb_fil_make_page_dirty_debug | Yes | Yes | Yes | Global | Yes | |
innodb_file_per_table | Yes | Yes | Yes | Global | Yes | |
innodb_fill_factor | Yes | Yes | Yes | Global | Yes | |
innodb_flush_log_at_timeout | Yes | Yes | Yes | Global | Yes | |
innodb_flush_log_at_trx_commit | Yes | Yes | Yes | Global | Yes | |
innodb_flush_method | Yes | Yes | Yes | Global | No | |
innodb_flush_neighbors | Yes | Yes | Yes | Global | Yes | |
innodb_flush_sync | Yes | Yes | Yes | Global | Yes | |
innodb_flushing_avg_loops | Yes | Yes | Yes | Global | Yes | |
innodb_force_load_corrupted | Yes | Yes | Yes | Global | No | |
innodb_force_recovery | Yes | Yes | Yes | Global | No | |
innodb_fsync_threshold | Yes | Yes | Yes | Global | Yes | |
innodb_ft_aux_table | Yes | Global | Yes | |||
innodb_ft_cache_size | Yes | Yes | Yes | Global | No | |
innodb_ft_enable_diag_print | Yes | Yes | Yes | Global | Yes | |
innodb_ft_enable_stopword | Yes | Yes | Yes | Both | Yes | |
innodb_ft_max_token_size | Yes | Yes | Yes | Global | No | |
innodb_ft_min_token_size | Yes | Yes | Yes | Global | No | |
innodb_ft_num_word_optimize | Yes | Yes | Yes | Global | Yes | |
innodb_ft_result_cache_limit | Yes | Yes | Yes | Global | Yes | |
innodb_ft_server_stopword_table | Yes | Yes | Yes | Global | Yes | |
innodb_ft_sort_pll_degree | Yes | Yes | Yes | Global | No | |
innodb_ft_total_cache_size | Yes | Yes | Yes | Global | No | |
innodb_ft_user_stopword_table | Yes | Yes | Yes | Both | Yes | |
Innodb_have_atomic_builtins | Yes | Global | No | |||
innodb_idle_flush_pct | Yes | Yes | Yes | Global | Yes | |
innodb_io_capacity | Yes | Yes | Yes | Global | Yes | |
innodb_io_capacity_max | Yes | Yes | Yes | Global | Yes | |
innodb_limit_optimistic_insert_debug | Yes | Yes | Yes | Global | Yes | |
innodb_lock_wait_timeout | Yes | Yes | Yes | Both | Yes | |
innodb_log_buffer_size | Yes | Yes | Yes | Global | Varies | |
innodb_log_checkpoint_fuzzy_now | Yes | Yes | Yes | Global | Yes | |
innodb_log_checkpoint_now | Yes | Yes | Yes | Global | Yes | |
innodb_log_checksums | Yes | Yes | Yes | Global | Yes | |
innodb_log_compressed_pages | Yes | Yes | Yes | Global | Yes | |
innodb_log_file_size | Yes | Yes | Yes | Global | No | |
innodb_log_files_in_group | Yes | Yes | Yes | Global | No | |
innodb_log_group_home_dir | Yes | Yes | Yes | Global | No | |
innodb_log_spin_cpu_abs_lwm | Yes | Yes | Yes | Global | Yes | |
innodb_log_spin_cpu_pct_hwm | Yes | Yes | Yes | Global | Yes | |
innodb_log_wait_for_flush_spin_hwm | Yes | Yes | Yes | Global | Yes | |
Innodb_log_waits | Yes | Global | No | |||
innodb_log_write_ahead_size | Yes | Yes | Yes | Global | Yes | |
Innodb_log_write_requests | Yes | Global | No | |||
Innodb_log_writes | Yes | Global | No | |||
innodb_lru_scan_depth | Yes | Yes | Yes | Global | Yes | |
innodb_max_dirty_pages_pct | Yes | Yes | Yes | Global | Yes | |
innodb_max_dirty_pages_pct_lwm | Yes | Yes | Yes | Global | Yes | |
innodb_max_purge_lag | Yes | Yes | Yes | Global | Yes | |
innodb_max_purge_lag_delay | Yes | Yes | Yes | Global | Yes | |
innodb_max_undo_log_size | Yes | Yes | Yes | Global | Yes | |
innodb_merge_threshold_set_all_debug | Yes | Yes | Yes | Global | Yes | |
innodb_monitor_disable | Yes | Yes | Yes | Global | Yes | |
innodb_monitor_enable | Yes | Yes | Yes | Global | Yes | |
innodb_monitor_reset | Yes | Yes | Yes | Global | Yes | |
innodb_monitor_reset_all | Yes | Yes | Yes | Global | Yes | |
Innodb_num_open_files | Yes | Global | No | |||
innodb_numa_interleave | Yes | Yes | Yes | Global | No | |
innodb_old_blocks_pct | Yes | Yes | Yes | Global | Yes | |
innodb_old_blocks_time | Yes | Yes | Yes | Global | Yes | |
innodb_online_alter_log_max_size | Yes | Yes | Yes | Global | Yes | |
innodb_open_files | Yes | Yes | Yes | Global | No | |
innodb_optimize_fulltext_only | Yes | Yes | Yes | Global | Yes | |
Innodb_os_log_fsyncs | Yes | Global | No | |||
Innodb_os_log_pending_fsyncs | Yes | Global | No | |||
Innodb_os_log_pending_writes | Yes | Global | No | |||
Innodb_os_log_written | Yes | Global | No | |||
innodb_page_cleaners | Yes | Yes | Yes | Global | No | |
Innodb_page_size | Yes | Global | No | |||
innodb_page_size | Yes | Yes | Yes | Global | No | |
Innodb_pages_created | Yes | Global | No | |||
Innodb_pages_read | Yes | Global | No | |||
Innodb_pages_written | Yes | Global | No | |||
innodb_parallel_read_threads | Yes | Yes | Yes | Session | Yes | |
innodb_print_all_deadlocks | Yes | Yes | Yes | Global | Yes | |
innodb_print_ddl_logs | Yes | Yes | Yes | Global | Yes | |
innodb_purge_batch_size | Yes | Yes | Yes | Global | Yes | |
innodb_purge_rseg_truncate_frequency | Yes | Yes | Yes | Global | Yes | |
innodb_purge_threads | Yes | Yes | Yes | Global | No | |
innodb_random_read_ahead | Yes | Yes | Yes | Global | Yes | |
innodb_read_ahead_threshold | Yes | Yes | Yes | Global | Yes | |
innodb_read_io_threads | Yes | Yes | Yes | Global | No | |
innodb_read_only | Yes | Yes | Yes | Global | No | |
innodb_redo_log_archive_dirs | Yes | Yes | Yes | Global | Yes | |
innodb_redo_log_encrypt | Yes | Yes | Yes | Global | Yes | |
innodb_replication_delay | Yes | Yes | Yes | Global | Yes | |
innodb_rollback_on_timeout | Yes | Yes | Yes | Global | No | |
innodb_rollback_segments | Yes | Yes | Yes | Global | Yes | |
Innodb_row_lock_current_waits | Yes | Global | No | |||
Innodb_row_lock_time | Yes | Global | No | |||
Innodb_row_lock_time_avg | Yes | Global | No | |||
Innodb_row_lock_time_max | Yes | Global | No | |||
Innodb_row_lock_waits | Yes | Global | No | |||
Innodb_rows_deleted | Yes | Global | No | |||
Innodb_rows_inserted | Yes | Global | No | |||
Innodb_rows_read | Yes | Global | No | |||
Innodb_rows_updated | Yes | Global | No | |||
innodb_saved_page_number_debug | Yes | Yes | Yes | Global | Yes | |
innodb_sort_buffer_size | Yes | Yes | Yes | Global | No | |
innodb_spin_wait_delay | Yes | Yes | Yes | Global | Yes | |
innodb_spin_wait_pause_multiplier | Yes | Yes | Yes | Global | Yes | |
innodb_stats_auto_recalc | Yes | Yes | Yes | Global | Yes | |
innodb_stats_include_delete_marked | Yes | Yes | Yes | Global | Yes | |
innodb_stats_method | Yes | Yes | Yes | Global | Yes | |
innodb_stats_on_metadat | Yes | Yes | Yes | Global | Yes | |
innodb_stats_persistent | Yes | Yes | Yes | Global | Yes | |
innodb_stats_persistent_sample_pages | Yes | Yes | Yes | Global | Yes | |
innodb_stats_transient_sample_pages | Yes | Yes | Yes | Global | Yes | |
innodb-status-file | Yes | Yes | ||||
innodb_status_output | Yes | Yes | Yes | Global | Yes | |
innodb_status_output_locks | Yes | Yes | Yes | Global | Yes | |
innodb_strict_mode | Yes | Yes | Yes | Both | Yes | |
innodb_sync_array_size | Yes | Yes | Yes | Global | No | |
innodb_sync_debug | Yes | Yes | Yes | Global | No | |
innodb_sync_spin_loops | Yes | Yes | Yes | Global | Yes | |
Innodb_system_rows_deleted | Yes | Global | No | |||
Innodb_system_rows_inserted | Yes | Global | No | |||
Innodb_system_rows_read | Yes | Global | No | |||
innodb_table_locks | Yes | Yes | Yes | Both | Yes | |
innodb_temp_data_file_path | Yes | Yes | Yes | Global | No | |
innodb_temp_tablespaces_dir | Yes | Yes | Yes | Global | No | |
innodb_thread_concurrency | Yes | Yes | Yes | Global | Yes | |
innodb_thread_sleep_delay | Yes | Yes | Yes | Global | Yes | |
innodb_tmpdir | Yes | Yes | Yes | Both | Yes | |
Innodb_truncated_status_writes | Yes | Global | No | |||
innodb_trx_purge_view_update_only_debug | Yes | Yes | Yes | Global | Yes | |
innodb_trx_rseg_n_slots_debug | Yes | Yes | Yes | Global | Yes | |
innodb_undo_directory | Yes | Yes | Yes | Global | No | |
innodb_undo_log_encrypt | Yes | Yes | Yes | Global | Yes | |
innodb_undo_log_truncate | Yes | Yes | Yes | Global | Yes | |
innodb_undo_tablespaces | Yes | Yes | Yes | Global | Varies | |
Innodb_undo_tablespaces_active | Yes | Global | No | |||
Innodb_undo_tablespaces_explicit | Yes | Global | No | |||
Innodb_undo_tablespaces_implicit | Yes | Global | No | |||
Innodb_undo_tablespaces_total | Yes | Global | No | |||
innodb_use_native_aio | Yes | Yes | Yes | Global | No | |
innodb_version | Yes | Global | No | |||
innodb_write_io_threads | Yes | Yes | Yes | Global | No | |
insert_id | Yes | Session | Yes | |||
install | Yes | |||||
install-manual | Yes | |||||
interactive_timeout | Yes | Yes | Yes | Both | Yes | |
internal_tmp_disk_storage_engine | Yes | Yes | Yes | Global | Yes | |
internal_tmp_mem_storage_engine | Yes | Yes | Yes | Both | Yes | |
join_buffer_size | Yes | Yes | Yes | Both | Yes | |
keep_files_on_create | Yes | Yes | Yes | Both | Yes | |
Key_blocks_not_flushed | Yes | Global | No | |||
Key_blocks_unused | Yes | Global | No | |||
Key_blocks_used | Yes | Global | No | |||
key_buffer_size | Yes | Yes | Yes | Global | Yes | |
key_cache_age_threshold | Yes | Yes | Yes | Global | Yes | |
key_cache_block_size | Yes | Yes | Yes | Global | Yes | |
key_cache_division_limit | Yes | Yes | Yes | Global | Yes | |
Key_read_requests | Yes | Global | No | |||
Key_reads | Yes | Global | No | |||
Key_write_requests | Yes | Global | No | |||
Key_writes | Yes | Global | No | |||
keyring_aws_cmk_id | Yes | Yes | Yes | Global | Yes | |
keyring_aws_conf_file | Yes | Yes | Yes | Global | No | |
keyring_aws_data_file | Yes | Yes | Yes | Global | No | |
keyring_aws_region | Yes | Yes | Yes | Global | Yes | |
keyring_encrypted_file_dat | Yes | Yes | Yes | Global | Yes | |
keyring_encrypted_file_password | Yes | Yes | Yes | Global | Yes | |
keyring_file_dat | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_auth_path | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_ca_path | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_caching | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_commit_auth_path | Yes | Global | No | |||
keyring_hashicorp_commit_ca_path | Yes | Global | No | |||
keyring_hashicorp_commit_caching | Yes | Global | No | |||
keyring_hashicorp_commit_role_id | Yes | Global | No | |||
keyring_hashicorp_commit_server_url | Yes | Global | No | |||
keyring_hashicorp_commit_store_path | Yes | Global | No | |||
keyring_hashicorp_role_id | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_secret_id | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_server_url | Yes | Yes | Yes | Global | Yes | |
keyring_hashicorp_store_path | Yes | Yes | Yes | Global | Yes | |
keyring-migration-destination | Yes | Yes | ||||
keyring-migration-host | Yes | Yes | ||||
keyring-migration-password | Yes | Yes | ||||
keyring-migration-port | Yes | Yes | ||||
keyring-migration-socket | Yes | Yes | ||||
keyring-migration-source | Yes | Yes | ||||
keyring-migration-user | Yes | Yes | ||||
keyring_okv_conf_dir | Yes | Yes | Yes | Global | Yes | |
keyring_operations | Yes | Global | Yes | |||
language | Yes | Yes | Yes | Global | No | |
large_files_support | Yes | Global | No | |||
large_page_size | Yes | Global | No | |||
large_pages | Yes | Yes | Yes | Global | No | |
last_insert_id | Yes | Session | Yes | |||
Last_query_cost | Yes | Session | No | |||
Last_query_partial_plans | Yes | Session | No | |||
lc_messages | Yes | Yes | Yes | Both | Yes | |
lc_messages_dir | Yes | Yes | Yes | Global | No | |
lc_time_names | Yes | Yes | Yes | Both | Yes | |
license | Yes | Global | No | |||
local_infile | Yes | Yes | Yes | Global | Yes | |
local-service | Yes | |||||
lock_order | Yes | Yes | Yes | Global | No | |
lock_order_debug_loop | Yes | Yes | Yes | Global | No | |
lock_order_debug_missing_arc | Yes | Yes | Yes | Global | No | |
lock_order_debug_missing_key | Yes | Yes | Yes | Global | No | |
lock_order_debug_missing_unlock | Yes | Yes | Yes | Global | No | |
lock_order_dependencies | Yes | Yes | Yes | Global | No | |
lock_order_extra_dependencies | Yes | Yes | Yes | Global | No | |
lock_order_output_directory | Yes | Yes | Yes | Global | No | |
lock_order_print_txt | Yes | Yes | Yes | Global | No | |
lock_order_trace_loop | Yes | Yes | Yes | Global | No | |
lock_order_trace_missing_arc | Yes | Yes | Yes | Global | No | |
lock_order_trace_missing_key | Yes | Yes | Yes | Global | No | |
lock_order_trace_missing_unlock | Yes | Yes | Yes | Global | No | |
lock_wait_timeout | Yes | Yes | Yes | Both | Yes | |
Locked_connects | Yes | Global | No | |||
locked_in_memory | Yes | Global | No | |||
log-bin | Yes | Yes | ||||
log_bin | Yes | Global | No | |||
log_bin_basename | Yes | Global | No | |||
log_bin_index | Yes | Yes | Yes | Global | No | |
log_bin_trust_function_creators | Yes | Yes | Yes | Global | Yes | |
log_bin_use_v1_row_events | Yes | Yes | Yes | Global | No | |
log_error | Yes | Yes | Yes | Global | No | |
log_error_services | Yes | Yes | Yes | Global | Yes | |
log_error_suppression_list | Yes | Yes | Yes | Global | Yes | |
log_error_verbosity | Yes | Yes | Yes | Global | Yes | |
log-isam | Yes | Yes | ||||
log_output | Yes | Yes | Yes | Global | Yes | |
log_queries_not_using_indexes | Yes | Yes | Yes | Global | Yes | |
log_raw | Yes | Yes | Yes | Global | Yes | |
log-short-format | Yes | Yes | ||||
log_slave_updates | Yes | Yes | Yes | Global | No | |
log_slow_admin_statements | Yes | Yes | Yes | Global | Yes | |
log_slow_extr | Yes | Yes | Yes | Global | Yes | |
log_slow_slave_statements | Yes | Yes | Yes | Global | Yes | |
log_statements_unsafe_for_binlog | Yes | Yes | Yes | Global | Yes | |
log_syslog | Yes | Yes | Yes | Global | Yes | |
log_syslog_facility | Yes | Yes | Yes | Global | Yes | |
log_syslog_include_pid | Yes | Yes | Yes | Global | Yes | |
log_syslog_tag | Yes | Yes | Yes | Global | Yes | |
log-tc | Yes | Yes | ||||
log-tc-size | Yes | Yes | ||||
log_throttle_queries_not_using_indexes | Yes | Yes | Yes | Global | Yes | |
log_timestamps | Yes | Yes | Yes | Global | Yes | |
long_query_time | Yes | Yes | Yes | Both | Yes | |
low_priority_updates | Yes | Yes | Yes | Both | Yes | |
lower_case_file_system | Yes | Global | No | |||
lower_case_table_names | Yes | Yes | Yes | Global | No | |
mandatory_roles | Yes | Yes | Yes | Global | Yes | |
master-info-file | Yes | Yes | ||||
master_info_repository | Yes | Yes | Yes | Global | Yes | |
master-retry-count | Yes | Yes | ||||
master_verify_checksum | Yes | Yes | Yes | Global | Yes | |
max_allowed_packet | Yes | Yes | Yes | Both | Yes | |
max_binlog_cache_size | Yes | Yes | Yes | Global | Yes | |
max-binlog-dump-events | Yes | Yes | ||||
max_binlog_size | Yes | Yes | Yes | Global | Yes | |
max_binlog_stmt_cache_size | Yes | Yes | Yes | Global | Yes | |
max_connect_errors | Yes | Yes | Yes | Global | Yes | |
max_connections | Yes | Yes | Yes | Global | Yes | |
max_delayed_threads | Yes | Yes | Yes | Both | Yes | |
max_digest_length | Yes | Yes | Yes | Global | No | |
max_error_count | Yes | Yes | Yes | Both | Yes | |
max_execution_time | Yes | Yes | Yes | Both | Yes | |
Max_execution_time_exceeded | Yes | Both | No | |||
Max_execution_time_set | Yes | Both | No | |||
Max_execution_time_set_failed | Yes | Both | No | |||
max_heap_table_size | Yes | Yes | Yes | Both | Yes | |
max_insert_delayed_threads | Yes | Both | Yes | |||
max_join_size | Yes | Yes | Yes | Both | Yes | |
max_length_for_sort_dat | Yes | Yes | Yes | Both | Yes | |
max_points_in_geometry | Yes | Yes | Yes | Both | Yes | |
max_prepared_stmt_count | Yes | Yes | Yes | Global | Yes | |
max_relay_log_size | Yes | Yes | Yes | Global | Yes | |
max_seeks_for_key | Yes | Yes | Yes | Both | Yes | |
max_sort_length | Yes | Yes | Yes | Both | Yes | |
max_sp_recursion_depth | Yes | Yes | Yes | Both | Yes | |
Max_used_connections | Yes | Global | No | |||
Max_used_connections_time | Yes | Global | No | |||
max_user_connections | Yes | Yes | Yes | Both | Yes | |
max_write_lock_count | Yes | Yes | Yes | Global | Yes | |
mecab_charset | Yes | Global | No | |||
mecab_rc_file | Yes | Yes | Yes | Global | No | |
memlock | Yes | Yes | ||||
-Variable: locked_in_memory | ||||||
metadata_locks_cache_size | Yes | Yes | Yes | Global | No | |
metadata_locks_hash_instances | Yes | Yes | Yes | Global | No | |
min_examined_row_limit | Yes | Yes | Yes | Both | Yes | |
myisam-block-size | Yes | Yes | ||||
myisam_data_pointer_size | Yes | Yes | Yes | Global | Yes | |
myisam_max_sort_file_size | Yes | Yes | Yes | Global | Yes | |
myisam_mmap_size | Yes | Yes | Yes | Global | No | |
myisam_recover_options | Yes | Yes | Yes | Global | No | |
myisam_repair_threads | Yes | Yes | Yes | Both | Yes | |
myisam_sort_buffer_size | Yes | Yes | Yes | Both | Yes | |
myisam_stats_method | Yes | Yes | Yes | Both | Yes | |
myisam_use_mmap | Yes | Yes | Yes | Global | Yes | |
mysql_firewall_mode | Yes | Yes | Yes | Global | Yes | |
mysql_firewall_trace | Yes | Yes | Yes | Global | Yes | |
mysql_native_password_proxy_users | Yes | Yes | Yes | Global | Yes | |
mysqlx | Yes | Yes | ||||
Mysqlx_aborted_clients | Yes | Global | No | |||
Mysqlx_address | Yes | Global | No | |||
mysqlx_bind_address | Yes | Yes | Yes | Global | No | |
Mysqlx_bytes_received | Yes | Both | No | |||
Mysqlx_bytes_received_compressed_payload | Yes | Both | No | |||
Mysqlx_bytes_received_uncompressed_frame | Yes | Both | No | |||
Mysqlx_bytes_sent | Yes | Both | No | |||
Mysqlx_bytes_sent_compressed_payload | Yes | Both | No | |||
Mysqlx_bytes_sent_uncompressed_frame | Yes | Both | No | |||
mysqlx_compression_algorithms | Yes | Yes | Yes | Global | Yes | |
mysqlx_connect_timeout | Yes | Yes | Yes | Global | Yes | |
Mysqlx_connection_accept_errors | Yes | Both | No | |||
Mysqlx_connection_errors | Yes | Both | No | |||
Mysqlx_connections_accepted | Yes | Global | No | |||
Mysqlx_connections_closed | Yes | Global | No | |||
Mysqlx_connections_rejected | Yes | Global | No | |||
Mysqlx_crud_create_view | Yes | Both | No | |||
Mysqlx_crud_delete | Yes | Both | No | |||
Mysqlx_crud_drop_view | Yes | Both | No | |||
Mysqlx_crud_find | Yes | Both | No | |||
Mysqlx_crud_insert | Yes | Both | No | |||
Mysqlx_crud_modify_view | Yes | Both | No | |||
Mysqlx_crud_update | Yes | Both | No | |||
Mysqlx_cursor_close | Yes | Both | No | |||
Mysqlx_cursor_fetch | Yes | Both | No | |||
Mysqlx_cursor_open | Yes | Both | No | |||
mysqlx_document_id_unique_prefix | Yes | Yes | Yes | Global | Yes | |
mysqlx_enable_hello_notice | Yes | Yes | Yes | Global | Yes | |
Mysqlx_errors_sent | Yes | Both | No | |||
Mysqlx_errors_unknown_message_type | Yes | Both | No | |||
Mysqlx_expect_close | Yes | Both | No | |||
Mysqlx_expect_open | Yes | Both | No | |||
mysqlx_idle_worker_thread_timeout | Yes | Yes | Yes | Global | Yes | |
Mysqlx_init_error | Yes | Both | No | |||
mysqlx_interactive_timeout | Yes | Yes | Yes | Global | Yes | |
mysqlx_max_allowed_packet | Yes | Yes | Yes | Global | Yes | |
mysqlx_max_connections | Yes | Yes | Yes | Global | Yes | |
mysqlx_min_worker_threads | Yes | Yes | Yes | Global | Yes | |
Mysqlx_notice_global_sent | Yes | Both | No | |||
Mysqlx_notice_other_sent | Yes | Both | No | |||
Mysqlx_notice_warning_sent | Yes | Both | No | |||
Mysqlx_notified_by_group_replication | Yes | Both | No | |||
Mysqlx_port | Yes | Global | No | |||
mysqlx_port | Yes | Yes | Yes | Global | No | |
mysqlx_port_open_timeout | Yes | Yes | Yes | Global | No | |
Mysqlx_prep_deallocate | Yes | Both | No | |||
Mysqlx_prep_execute | Yes | Both | No | |||
Mysqlx_prep_prepare | Yes | Both | No | |||
mysqlx_read_timeout | Yes | Yes | Yes | Session | Yes | |
Mysqlx_rows_sent | Yes | Both | No | |||
Mysqlx_sessions | Yes | Global | No | |||
Mysqlx_sessions_accepted | Yes | Global | No | |||
Mysqlx_sessions_closed | Yes | Global | No | |||
Mysqlx_sessions_fatal_error | Yes | Global | No | |||
Mysqlx_sessions_killed | Yes | Global | No | |||
Mysqlx_sessions_rejected | Yes | Global | No | |||
Mysqlx_socket | Yes | Global | No | |||
mysqlx_socket | Yes | Yes | Yes | Global | No | |
Mysqlx_ssl_accept_renegotiates | Yes | Global | No | |||
Mysqlx_ssl_accepts | Yes | Global | No | |||
Mysqlx_ssl_active | Yes | Both | No | |||
mysqlx_ssl_c | Yes | Yes | Yes | Global | No | |
mysqlx_ssl_capath | Yes | Yes | Yes | Global | No | |
mysqlx_ssl_cert | Yes | Yes | Yes | Global | No | |
Mysqlx_ssl_cipher | Yes | Both | No | |||
mysqlx_ssl_cipher | Yes | Yes | Yes | Global | No | |
Mysqlx_ssl_cipher_list | Yes | Both | No | |||
mysqlx_ssl_crl | Yes | Yes | Yes | Global | No | |
mysqlx_ssl_crlpath | Yes | Yes | Yes | Global | No | |
Mysqlx_ssl_ctx_verify_depth | Yes | Both | No | |||
Mysqlx_ssl_ctx_verify_mode | Yes | Both | No | |||
Mysqlx_ssl_finished_accepts | Yes | Global | No | |||
mysqlx_ssl_key | Yes | Yes | Yes | Global | No | |
Mysqlx_ssl_server_not_after | Yes | Global | No | |||
Mysqlx_ssl_server_not_before | Yes | Global | No | |||
Mysqlx_ssl_verify_depth | Yes | Global | No | |||
Mysqlx_ssl_verify_mode | Yes | Global | No | |||
Mysqlx_ssl_version | Yes | Both | No | |||
Mysqlx_stmt_create_collection | Yes | Both | No | |||
Mysqlx_stmt_create_collection_index | Yes | Both | No | |||
Mysqlx_stmt_disable_notices | Yes | Both | No | |||
Mysqlx_stmt_drop_collection | Yes | Both | No | |||
Mysqlx_stmt_drop_collection_index | Yes | Both | No | |||
Mysqlx_stmt_enable_notices | Yes | Both | No | |||
Mysqlx_stmt_ensure_collection | Yes | Both | No | |||
Mysqlx_stmt_execute_mysqlx | Yes | Both | No | |||
Mysqlx_stmt_execute_sql | Yes | Both | No | |||
Mysqlx_stmt_execute_xplugin | Yes | Both | No | |||
Mysqlx_stmt_get_collection_options | Yes | Both | No | |||
Mysqlx_stmt_kill_client | Yes | Both | No | |||
Mysqlx_stmt_list_clients | Yes | Both | No | |||
Mysqlx_stmt_list_notices | Yes | Both | No | |||
Mysqlx_stmt_list_objects | Yes | Both | No | |||
Mysqlx_stmt_modify_collection_options | Yes | Both | No | |||
Mysqlx_stmt_ping | Yes | Both | No | |||
mysqlx_wait_timeout | Yes | Yes | Yes | Session | Yes | |
Mysqlx_worker_threads | Yes | Global | No | |||
Mysqlx_worker_threads_active | Yes | Global | No | |||
mysqlx_write_timeout | Yes | Yes | Yes | Session | Yes | |
named_pipe | Yes | Yes | Yes | Global | No | |
named_pipe_full_access_group | Yes | Yes | Yes | Global | No | |
ndb_allow_copying_alter_table | Yes | Yes | Yes | Both | Yes | |
Ndb_api_bytes_received_count | Yes | Global | No | |||
Ndb_api_bytes_received_count_session | Yes | Session | No | |||
Ndb_api_bytes_received_count_slave | Yes | Global | No | |||
Ndb_api_bytes_sent_count | Yes | Global | No | |||
Ndb_api_bytes_sent_count_session | Yes | Session | No | |||
Ndb_api_bytes_sent_count_slave | Yes | Global | No | |||
Ndb_api_event_bytes_count | Yes | Global | No | |||
Ndb_api_event_bytes_count_injector | Yes | Global | No | |||
Ndb_api_event_data_count | Yes | Global | No | |||
Ndb_api_event_data_count_injector | Yes | Global | No | |||
Ndb_api_event_nondata_count | Yes | Global | No | |||
Ndb_api_event_nondata_count_injector | Yes | Global | No | |||
Ndb_api_pk_op_count | Yes | Global | No | |||
Ndb_api_pk_op_count_session | Yes | Session | No | |||
Ndb_api_pk_op_count_slave | Yes | Global | No | |||
Ndb_api_pruned_scan_count | Yes | Global | No | |||
Ndb_api_pruned_scan_count_session | Yes | Session | No | |||
Ndb_api_pruned_scan_count_slave | Yes | Global | No | |||
Ndb_api_range_scan_count | Yes | Global | No | |||
Ndb_api_range_scan_count_session | Yes | Session | No | |||
Ndb_api_range_scan_count_slave | Yes | Global | No | |||
Ndb_api_read_row_count | Yes | Global | No | |||
Ndb_api_read_row_count_session | Yes | Session | No | |||
Ndb_api_read_row_count_slave | Yes | Global | No | |||
Ndb_api_scan_batch_count | Yes | Global | No | |||
Ndb_api_scan_batch_count_session | Yes | Session | No | |||
Ndb_api_scan_batch_count_slave | Yes | Global | No | |||
Ndb_api_table_scan_count | Yes | Global | No | |||
Ndb_api_table_scan_count_session | Yes | Session | No | |||
Ndb_api_table_scan_count_slave | Yes | Global | No | |||
Ndb_api_trans_abort_count | Yes | Global | No | |||
Ndb_api_trans_abort_count_session | Yes | Session | No | |||
Ndb_api_trans_abort_count_slave | Yes | Global | No | |||
Ndb_api_trans_close_count | Yes | Global | No | |||
Ndb_api_trans_close_count_session | Yes | Session | No | |||
Ndb_api_trans_close_count_slave | Yes | Global | No | |||
Ndb_api_trans_commit_count | Yes | Global | No | |||
Ndb_api_trans_commit_count_session | Yes | Session | No | |||
Ndb_api_trans_commit_count_slave | Yes | Global | No | |||
Ndb_api_trans_local_read_row_count | Yes | Global | No | |||
Ndb_api_trans_local_read_row_count_session | Yes | Session | No | |||
Ndb_api_trans_local_read_row_count_slave | Yes | Global | No | |||
Ndb_api_trans_start_count | Yes | Global | No | |||
Ndb_api_trans_start_count_session | Yes | Session | No | |||
Ndb_api_trans_start_count_slave | Yes | Global | No | |||
Ndb_api_uk_op_count | Yes | Global | No | |||
Ndb_api_uk_op_count_session | Yes | Session | No | |||
Ndb_api_uk_op_count_slave | Yes | Global | No | |||
Ndb_api_wait_exec_complete_count | Yes | Global | No | |||
Ndb_api_wait_exec_complete_count_session | Yes | Session | No | |||
Ndb_api_wait_exec_complete_count_slave | Yes | Global | No | |||
Ndb_api_wait_meta_request_count | Yes | Global | No | |||
Ndb_api_wait_meta_request_count_session | Yes | Session | No | |||
Ndb_api_wait_meta_request_count_slave | Yes | Global | No | |||
Ndb_api_wait_nanos_count | Yes | Global | No | |||
Ndb_api_wait_nanos_count_session | Yes | Session | No | |||
Ndb_api_wait_nanos_count_slave | Yes | Global | No | |||
Ndb_api_wait_scan_result_count | Yes | Global | No | |||
Ndb_api_wait_scan_result_count_session | Yes | Session | No | |||
Ndb_api_wait_scan_result_count_slave | Yes | Global | No | |||
ndb_autoincrement_prefetch_sz | Yes | Yes | Yes | Both | Yes | |
ndb_batch_size | Yes | Yes | Yes | Global | No | |
ndb_blob_read_batch_bytes | Yes | Yes | Yes | Both | Yes | |
ndb_blob_write_batch_bytes | Yes | Yes | Yes | Both | Yes | |
ndb_cache_check_time | Yes | Yes | Yes | Global | Yes | |
ndb_clear_apply_status | Yes | Yes | Global | Yes | ||
ndb_cluster_connection_pool | Yes | Yes | Yes | Global | No | |
ndb_cluster_connection_pool_nodeids | Yes | Yes | Yes | Global | No | |
Ndb_cluster_node_id | Yes | Global | No | |||
Ndb_config_from_host | Yes | Both | No | |||
Ndb_config_from_port | Yes | Both | No | |||
Ndb_conflict_fn_epoch | Yes | Global | No | |||
Ndb_conflict_fn_epoch_trans | Yes | Global | No | |||
Ndb_conflict_fn_epoch2 | Yes | Global | No | |||
Ndb_conflict_fn_epoch2_trans | Yes | Global | No | |||
Ndb_conflict_fn_max | Yes | Global | No | |||
Ndb_conflict_fn_old | Yes | Global | No | |||
Ndb_conflict_last_conflict_epoch | Yes | Global | No | |||
Ndb_conflict_last_stable_epoch | Yes | Global | No | |||
Ndb_conflict_reflected_op_discard_count | Yes | Global | No | |||
Ndb_conflict_reflected_op_prepare_count | Yes | Global | No | |||
Ndb_conflict_refresh_op_count | Yes | Global | No | |||
Ndb_conflict_trans_conflict_commit_count | Yes | Global | No | |||
Ndb_conflict_trans_detect_iter_count | Yes | Global | No | |||
Ndb_conflict_trans_reject_count | Yes | Global | No | |||
Ndb_conflict_trans_row_conflict_count | Yes | Global | No | |||
Ndb_conflict_trans_row_reject_count | Yes | Global | No | |||
ndb-connectstring | Yes | Yes | ||||
ndb_data_node_neighbour | Yes | Yes | Yes | Global | Yes | |
ndb_dbg_check_shares | Yes | Yes | Yes | Both | Yes | |
ndb_default_column_format | Yes | Yes | Yes | Global | Yes | |
ndb_default_column_format | Yes | Yes | Yes | Global | Yes | |
ndb_deferred_constraints | Yes | Yes | Yes | Both | Yes | |
ndb_deferred_constraints | Yes | Yes | Yes | Both | Yes | |
ndb_distribution | Yes | Yes | Yes | Global | Yes | |
ndb_distribution | Yes | Yes | Yes | Global | Yes | |
Ndb_epoch_delete_delete_count | Yes | Global | No | |||
ndb_eventbuffer_free_percent | Yes | Yes | Yes | Global | Yes | |
ndb_eventbuffer_max_alloc | Yes | Yes | Yes | Global | Yes | |
Ndb_execute_count | Yes | Global | No | |||
ndb_extra_logging | Yes | Yes | Yes | Global | Yes | |
ndb_force_send | Yes | Yes | Yes | Both | Yes | |
ndb_fully_replicated | Yes | Yes | Yes | Both | Yes | |
ndb_index_stat_enable | Yes | Yes | Yes | Both | Yes | |
ndb_index_stat_option | Yes | Yes | Yes | Both | Yes | |
ndb_join_pushdown | Yes | Both | Yes | |||
Ndb_last_commit_epoch_server | Yes | Global | No | |||
Ndb_last_commit_epoch_session | Yes | Session | No | |||
ndb_log_apply_status | Yes | Yes | Yes | Global | No | |
ndb_log_apply_status | Yes | Yes | Yes | Global | No | |
ndb_log_bin | Yes | Yes | Both | Yes | ||
ndb_log_binlog_index | Yes | Yes | Global | Yes | ||
ndb_log_empty_epochs | Yes | Yes | Yes | Global | Yes | |
ndb_log_empty_epochs | Yes | Yes | Yes | Global | Yes | |
ndb_log_empty_update | Yes | Yes | Yes | Global | Yes | |
ndb_log_empty_update | Yes | Yes | Yes | Global | Yes | |
ndb_log_exclusive_reads | Yes | Yes | Yes | Both | Yes | |
ndb_log_exclusive_reads | Yes | Yes | Yes | Both | Yes | |
ndb_log_orig | Yes | Yes | Yes | Global | No | |
ndb_log_orig | Yes | Yes | Yes | Global | No | |
ndb_log_transaction_id | Yes | Yes | Yes | Global | No | |
ndb_log_transaction_id | Yes | Global | No | |||
ndb_log_update_as_write | Yes | Yes | Yes | Global | Yes | |
ndb_log_update_minimal | Yes | Yes | Yes | Global | Yes | |
ndb_log_updated_only | Yes | Yes | Yes | Global | Yes | |
Ndb_metadata_blacklist_size | Yes | Global | No | |||
ndb_metadata_check | Yes | Yes | Yes | Global | Yes | |
ndb_metadata_check_interval | Yes | Yes | Yes | Global | Yes | |
Ndb_metadata_detected_count | Yes | Global | No | |||
ndb_metadata_sync | Yes | Global | Yes | |||
Ndb_metadata_synced_count | Yes | Global | No | |||
ndb-mgmd-host | Yes | Yes | ||||
ndb_nodeid | Yes | Yes | Yes | Global | No | |
Ndb_number_of_data_nodes | Yes | Global | No | |||
ndb_optimization_delay | Yes | Yes | Yes | Global | Yes | |
ndb_optimized_node_selection | Yes | Yes | Yes | Global | No | |
Ndb_pruned_scan_count | Yes | Global | No | |||
Ndb_pushed_queries_defined | Yes | Global | No | |||
Ndb_pushed_queries_dropped | Yes | Global | No | |||
Ndb_pushed_queries_executed | Yes | Global | No | |||
Ndb_pushed_reads | Yes | Global | No | |||
ndb_read_backup | Yes | Yes | Yes | Global | Yes | |
ndb_recv_thread_activation_threshold | Yes | Yes | Yes | Global | Yes | |
ndb_recv_thread_cpu_mask | Yes | Yes | Yes | Global | Yes | |
ndb_report_thresh_binlog_epoch_slip | Yes | Yes | Yes | Global | Yes | |
ndb_report_thresh_binlog_mem_usage | Yes | Yes | Yes | Global | Yes | |
ndb_row_checksum | Yes | Both | Yes | |||
Ndb_scan_count | Yes | Global | No | |||
ndb_schema_dist_lock_wait_timeout | Yes | Yes | Yes | Global | Yes | |
ndb_schema_dist_timeout | Yes | Yes | Yes | Global | No | |
ndb_schema_dist_timeout | Yes | Yes | Yes | Global | No | |
ndb_schema_dist_upgrade_allowed | Yes | Yes | Yes | Global | No | |
ndb_show_foreign_key_mock_tables | Yes | Yes | Yes | Global | Yes | |
ndb_slave_conflict_role | Yes | Yes | Yes | Global | Yes | |
Ndb_slave_max_replicated_epoch | Yes | Global | No | |||
Ndb_system_name | Yes | Global | No | |||
ndb_table_no_logging | Yes | Session | Yes | |||
ndb_table_temporary | Yes | Session | Yes | |||
Ndb_trans_hint_count_session | Yes | Both | No | |||
ndb-transid-mysql-connection-map | Yes | |||||
ndb_use_copying_alter_table | Yes | Both | No | |||
ndb_use_exact_count | Yes | Both | Yes | |||
ndb_use_transactions | Yes | Yes | Yes | Both | Yes | |
ndb_version | Yes | Global | No | |||
ndb_version_string | Yes | Global | No | |||
ndb_wait_connected | Yes | Yes | Yes | Global | No | |
ndb_wait_setup | Yes | Yes | Yes | Global | No | |
ndbcluster | Yes | Yes | ||||
ndbinfo | Yes | |||||
ndbinfo_database | Yes | Global | No | |||
ndbinfo_max_bytes | Yes | Yes | Both | Yes | ||
ndbinfo_max_rows | Yes | Yes | Both | Yes | ||
ndbinfo_offline | Yes | Global | Yes | |||
ndbinfo_show_hidden | Yes | Yes | Both | Yes | ||
ndbinfo_table_prefix | Yes | Yes | Both | Yes | ||
ndbinfo_version | Yes | Global | No | |||
net_buffer_length | Yes | Yes | Yes | Both | Yes | |
net_read_timeout | Yes | Yes | Yes | Both | Yes | |
net_retry_count | Yes | Yes | Yes | Both | Yes | |
net_write_timeout | Yes | Yes | Yes | Both | Yes | |
new | Yes | Yes | Yes | Both | Yes | |
ngram_token_size | Yes | Yes | Yes | Global | No | |
no-dd-upgrade | Yes | Yes | ||||
no-defaults | Yes | |||||
no-monitor | Yes | Yes | ||||
Not_flushed_delayed_rows | Yes | Global | No | |||
offline_mode | Yes | Yes | Yes | Global | Yes | |
old | Yes | Yes | Yes | Global | No | |
old_alter_table | Yes | Yes | Yes | Both | Yes | |
old-style-user-limits | Yes | Yes | ||||
Ongoing_anonymous_gtid_violating_transaction_count | Yes | Global | No | |||
Ongoing_anonymous_transaction_count | Yes | Global | No | |||
Ongoing_automatic_gtid_violating_transaction_count | Yes | Global | No | |||
Open_files | Yes | Global | No | |||
open_files_limit | Yes | Yes | Yes | Global | No | |
Open_streams | Yes | Global | No | |||
Open_table_definitions | Yes | Global | No | |||
Open_tables | Yes | Both | No | |||
Opened_files | Yes | Global | No | |||
Opened_table_definitions | Yes | Both | No | |||
Opened_tables | Yes | Both | No | |||
optimizer_prune_level | Yes | Yes | Yes | Both | Yes | |
optimizer_search_depth | Yes | Yes | Yes | Both | Yes | |
optimizer_switch | Yes | Yes | Yes | Both | Yes | |
optimizer_trace | Yes | Yes | Yes | Both | Yes | |
optimizer_trace_features | Yes | Yes | Yes | Both | Yes | |
optimizer_trace_limit | Yes | Yes | Yes | Both | Yes | |
optimizer_trace_max_mem_size | Yes | Yes | Yes | Both | Yes | |
optimizer_trace_offset | Yes | Yes | Yes | Both | Yes | |
original_commit_timestamp | Yes | Session | Yes | |||
original_server_version | Yes | Session | Yes | |||
parser_max_mem_size | Yes | Yes | Yes | Both | Yes | |
partial_revokes | Yes | Yes | Yes | Global | Yes | |
password_history | Yes | Yes | Yes | Global | Yes | |
password_require_current | Yes | Yes | Yes | Global | Yes | |
password_reuse_interval | Yes | Yes | Yes | Global | Yes | |
performance_schem | Yes | Yes | Yes | Global | No | |
Performance_schema_accounts_lost | Yes | Global | No | |||
performance_schema_accounts_size | Yes | Yes | Yes | Global | No | |
Performance_schema_cond_classes_lost | Yes | Global | No | |||
Performance_schema_cond_instances_lost | Yes | Global | No | |||
performance-schema-consumer-events-stages-current | Yes | Yes | ||||
performance-schema-consumer-events-stages-history | Yes | Yes | ||||
performance-schema-consumer-events-stages-history-long | Yes | Yes | ||||
performance-schema-consumer-events-statements-current | Yes | Yes | ||||
performance-schema-consumer-events-statements-history | Yes | Yes | ||||
performance-schema-consumer-events-statements-history-long | Yes | Yes | ||||
performance-schema-consumer-events-transactions-current | Yes | Yes | ||||
performance-schema-consumer-events-transactions-history | Yes | Yes | ||||
performance-schema-consumer-events-transactions-history-long | Yes | Yes | ||||
performance-schema-consumer-events-waits-current | Yes | Yes | ||||
performance-schema-consumer-events-waits-history | Yes | Yes | ||||
performance-schema-consumer-events-waits-history-long | Yes | Yes | ||||
performance-schema-consumer-global-instrumentation | Yes | Yes | ||||
performance-schema-consumer-statements-digest | Yes | Yes | ||||
performance-schema-consumer-thread-instrumentation | Yes | Yes | ||||
Performance_schema_digest_lost | Yes | Global | No | |||
performance_schema_digests_size | Yes | Yes | Yes | Global | No | |
performance_schema_error_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_stages_history_long_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_stages_history_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_statements_history_long_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_statements_history_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_transactions_history_long_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_transactions_history_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_waits_history_long_size | Yes | Yes | Yes | Global | No | |
performance_schema_events_waits_history_size | Yes | Yes | Yes | Global | No | |
Performance_schema_file_classes_lost | Yes | Global | No | |||
Performance_schema_file_handles_lost | Yes | Global | No | |||
Performance_schema_file_instances_lost | Yes | Global | No | |||
Performance_schema_hosts_lost | Yes | Global | No | |||
performance_schema_hosts_size | Yes | Yes | Yes | Global | No | |
Performance_schema_index_stat_lost | Yes | Global | No | |||
performance-schema-instrument | Yes | Yes | ||||
Performance_schema_locker_lost | Yes | Global | No | |||
performance_schema_max_cond_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_cond_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_digest_length | Yes | Yes | Yes | Global | No | |
performance_schema_max_digest_sample_age | Yes | Yes | Yes | Global | Yes | |
performance_schema_max_file_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_file_handles | Yes | Yes | Yes | Global | No | |
performance_schema_max_file_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_index_stat | Yes | Yes | Yes | Global | No | |
performance_schema_max_memory_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_metadata_locks | Yes | Yes | Yes | Global | No | |
performance_schema_max_mutex_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_mutex_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_prepared_statements_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_program_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_rwlock_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_rwlock_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_socket_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_socket_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_sql_text_length | Yes | Yes | Yes | Global | No | |
performance_schema_max_stage_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_statement_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_statement_stack | Yes | Yes | Yes | Global | No | |
performance_schema_max_table_handles | Yes | Yes | Yes | Global | No | |
performance_schema_max_table_instances | Yes | Yes | Yes | Global | No | |
performance_schema_max_table_lock_stat | Yes | Yes | Yes | Global | No | |
performance_schema_max_thread_classes | Yes | Yes | Yes | Global | No | |
performance_schema_max_thread_instances | Yes | Yes | Yes | Global | No | |
Performance_schema_memory_classes_lost | Yes | Global | No | |||
Performance_schema_metadata_lock_lost | Yes | Global | No | |||
Performance_schema_mutex_classes_lost | Yes | Global | No | |||
Performance_schema_mutex_instances_lost | Yes | Global | No | |||
Performance_schema_nested_statement_lost | Yes | Global | No | |||
Performance_schema_prepared_statements_lost | Yes | Global | No | |||
Performance_schema_program_lost | Yes | Global | No | |||
Performance_schema_rwlock_classes_lost | Yes | Global | No | |||
Performance_schema_rwlock_instances_lost | Yes | Global | No | |||
Performance_schema_session_connect_attrs_longest_seen | Yes | Global | No | |||
Performance_schema_session_connect_attrs_lost | Yes | Global | No | |||
performance_schema_session_connect_attrs_size | Yes | Yes | Yes | Global | No | |
performance_schema_setup_actors_size | Yes | Yes | Yes | Global | No | |
performance_schema_setup_objects_size | Yes | Yes | Yes | Global | No | |
Performance_schema_socket_classes_lost | Yes | Global | No | |||
Performance_schema_socket_instances_lost | Yes | Global | No | |||
Performance_schema_stage_classes_lost | Yes | Global | No | |||
Performance_schema_statement_classes_lost | Yes | Global | No | |||
Performance_schema_table_handles_lost | Yes | Global | No | |||
Performance_schema_table_instances_lost | Yes | Global | No | |||
Performance_schema_table_lock_stat_lost | Yes | Global | No | |||
Performance_schema_thread_classes_lost | Yes | Global | No | |||
Performance_schema_thread_instances_lost | Yes | Global | No | |||
Performance_schema_users_lost | Yes | Global | No | |||
performance_schema_users_size | Yes | Yes | Yes | Global | No | |
persist_only_admin_x509_subject | Yes | Yes | Yes | Global | No | |
persisted_globals_load | Yes | Yes | Yes | Global | No | |
pid_file | Yes | Yes | Yes | Global | No | |
plugin_dir | Yes | Yes | Yes | Global | No | |
plugin_load | Yes | Yes | Yes | Global | No | |
plugin_load_add | Yes | Yes | Yes | Global | No | |
plugin-xxx | Yes | Yes | ||||
port | Yes | Yes | Yes | Global | No | |
port-open-timeout | Yes | Yes | ||||
preload_buffer_size | Yes | Yes | Yes | Both | Yes | |
Prepared_stmt_count | Yes | Global | No | |||
print-defaults | Yes | |||||
print_identified_with_as_hex | Yes | Yes | Yes | Both | Yes | |
profiling | Yes | Both | Yes | |||
profiling_history_size | Yes | Yes | Yes | Both | Yes | |
protocol_compression_algorithms | Yes | Yes | Yes | Global | Yes | |
protocol_version | Yes | Global | No | |||
proxy_user | Yes | Session | No | |||
pseudo_slave_mode | Yes | Session | Yes | |||
pseudo_thread_id | Yes | Session | Yes | |||
Queries | Yes | Both | No | |||
query_alloc_block_size | Yes | Yes | Yes | Both | Yes | |
query_prealloc_size | Yes | Yes | Yes | Both | Yes | |
Questions | Yes | Both | No | |||
rand_seed1 | Yes | Session | Yes | |||
rand_seed2 | Yes | Session | Yes | |||
range_alloc_block_size | Yes | Yes | Yes | Both | Yes | |
range_optimizer_max_mem_size | Yes | Yes | Yes | Both | Yes | |
rbr_exec_mode | Yes | Both | Yes | |||
read_buffer_size | Yes | Yes | Yes | Both | Yes | |
read_only | Yes | Yes | Yes | Global | Yes | |
read_rnd_buffer_size | Yes | Yes | Yes | Both | Yes | |
regexp_stack_limit | Yes | Yes | Yes | Global | Yes | |
regexp_time_limit | Yes | Yes | Yes | Global | Yes | |
relay_log | Yes | Yes | Yes | Global | No | |
relay_log_basename | Yes | Global | No | |||
relay_log_index | Yes | Yes | Yes | Global | No | |
relay_log_info_file | Yes | Yes | Yes | Global | No | |
relay_log_info_repository | Yes | Yes | Yes | Global | Yes | |
relay_log_purge | Yes | Yes | Yes | Global | Yes | |
relay_log_recovery | Yes | Yes | Yes | Global | No | |
relay_log_space_limit | Yes | Yes | Yes | Global | No | |
remove | Yes | |||||
replicate-do-db | Yes | Yes | ||||
replicate-do-table | Yes | Yes | ||||
replicate-ignore-db | Yes | Yes | ||||
replicate-ignore-table | Yes | Yes | ||||
replicate-rewrite-db | Yes | Yes | ||||
replicate-same-server-id | Yes | Yes | ||||
replicate-wild-do-table | Yes | Yes | ||||
replicate-wild-ignore-table | Yes | Yes | ||||
report_host | Yes | Yes | Yes | Global | No | |
report_password | Yes | Yes | Yes | Global | No | |
report_port | Yes | Yes | Yes | Global | No | |
report_user | Yes | Yes | Yes | Global | No | |
require_row_format | Yes | Session | Yes | |||
require_secure_transport | Yes | Yes | Yes | Global | Yes | |
resultset_metadat | Yes | Session | Yes | |||
rewriter_enabled | Yes | Global | Yes | |||
Rewriter_number_loaded_rules | Yes | Global | No | |||
Rewriter_number_reloads | Yes | Global | No | |||
Rewriter_number_rewritten_queries | Yes | Global | No | |||
Rewriter_reload_error | Yes | Global | No | |||
rewriter_verbose | Yes | Global | Yes | |||
rpl_read_size | Yes | Yes | Yes | Global | Yes | |
Rpl_semi_sync_master_clients | Yes | Global | No | |||
rpl_semi_sync_master_enabled | Yes | Yes | Yes | Global | Yes | |
Rpl_semi_sync_master_net_avg_wait_time | Yes | Global | No | |||
Rpl_semi_sync_master_net_wait_time | Yes | Global | No | |||
Rpl_semi_sync_master_net_waits | Yes | Global | No | |||
Rpl_semi_sync_master_no_times | Yes | Global | No | |||
Rpl_semi_sync_master_no_tx | Yes | Global | No | |||
Rpl_semi_sync_master_status | Yes | Global | No | |||
Rpl_semi_sync_master_timefunc_failures | Yes | Global | No | |||
rpl_semi_sync_master_timeout | Yes | Yes | Yes | Global | Yes | |
rpl_semi_sync_master_trace_level | Yes | Yes | Yes | Global | Yes | |
Rpl_semi_sync_master_tx_avg_wait_time | Yes | Global | No | |||
Rpl_semi_sync_master_tx_wait_time | Yes | Global | No | |||
Rpl_semi_sync_master_tx_waits | Yes | Global | No | |||
rpl_semi_sync_master_wait_for_slave_count | Yes | Yes | Yes | Global | Yes | |
rpl_semi_sync_master_wait_no_slave | Yes | Yes | Yes | Global | Yes | |
rpl_semi_sync_master_wait_point | Yes | Yes | Yes | Global | Yes | |
Rpl_semi_sync_master_wait_pos_backtraverse | Yes | Global | No | |||
Rpl_semi_sync_master_wait_sessions | Yes | Global | No | |||
Rpl_semi_sync_master_yes_tx | Yes | Global | No | |||
rpl_semi_sync_slave_enabled | Yes | Yes | Yes | Global | Yes | |
Rpl_semi_sync_slave_status | Yes | Global | No | |||
rpl_semi_sync_slave_trace_level | Yes | Yes | Yes | Global | Yes | |
rpl_stop_slave_timeout | Yes | Yes | Yes | Global | Yes | |
Rsa_public_key | Yes | Global | No | |||
safe-user-create | Yes | Yes | ||||
schema_definition_cache | Yes | Yes | Yes | Global | Yes | |
secondary_engine_cost_threshold | Yes | Session | Yes | |||
Secondary_engine_execution_count | Yes | Both | No | |||
secure_file_priv | Yes | Yes | Yes | Global | No | |
Select_full_join | Yes | Both | No | |||
Select_full_range_join | Yes | Both | No | |||
Select_range | Yes | Both | No | |||
Select_range_check | Yes | Both | No | |||
Select_scan | Yes | Both | No | |||
server_id | Yes | Yes | Yes | Global | Yes | |
server_id_bits | Yes | Yes | Yes | Global | No | |
server_uuid | Yes | Global | No | |||
session_track_gtids | Yes | Yes | Yes | Both | Yes | |
session_track_schem | Yes | Yes | Yes | Both | Yes | |
session_track_state_change | Yes | Yes | Yes | Both | Yes | |
session_track_system_variables | Yes | Yes | Yes | Both | Yes | |
session_track_transaction_info | Yes | Yes | Yes | Both | Yes | |
sha256_password_auto_generate_rsa_keys | Yes | Yes | Yes | Global | No | |
sha256_password_private_key_path | Yes | Yes | Yes | Global | No | |
sha256_password_proxy_users | Yes | Yes | Yes | Global | Yes | |
sha256_password_public_key_path | Yes | Yes | Yes | Global | No | |
shared_memory | Yes | Yes | Yes | Global | No | |
shared_memory_base_name | Yes | Yes | Yes | Global | No | |
show_create_table_skip_secondary_engine | Yes | Yes | Yes | Session | Yes | |
show_create_table_verbosity | Yes | Yes | Yes | Both | Yes | |
show_old_temporals | Yes | Yes | Yes | Both | Yes | |
show-slave-auth-info | Yes | Yes | ||||
skip-character-set-client-handshake | Yes | Yes | ||||
skip_external_locking | Yes | Yes | Yes | Global | No | |
skip-grant-tables | Yes | Yes | ||||
skip-host-cache | Yes | Yes | ||||
skip_name_resolve | Yes | Yes | Yes | Global | No | |
skip-ndbcluster | Yes | Yes | ||||
skip_networking | Yes | Yes | Yes | Global | No | |
skip-new | Yes | Yes | ||||
skip_show_database | Yes | Yes | Yes | Global | No | |
skip-slave-start | Yes | Yes | ||||
skip-ssl | Yes | Yes | ||||
skip-stack-trace | Yes | Yes | ||||
slave_allow_batching | Yes | Yes | Yes | Global | Yes | |
slave_checkpoint_group | Yes | Yes | Yes | Global | Yes | |
slave_checkpoint_period | Yes | Yes | Yes | Global | Yes | |
slave_compressed_protocol | Yes | Yes | Yes | Global | Yes | |
slave_exec_mode | Yes | Yes | Yes | Global | Yes | |
slave_load_tmpdir | Yes | Yes | Yes | Global | No | |
slave_max_allowed_packet | Yes | Yes | Yes | Global | Yes | |
slave_net_timeout | Yes | Yes | Yes | Global | Yes | |
Slave_open_temp_tables | Yes | Global | No | |||
slave_parallel_type | Yes | Yes | Yes | Global | Yes | |
slave_parallel_workers | Yes | Yes | Yes | Global | Yes | |
slave_pending_jobs_size_max | Yes | Yes | Yes | Global | Yes | |
slave_preserve_commit_order | Yes | Yes | Yes | Global | Yes | |
Slave_rows_last_search_algorithm_used | Yes | Global | No | |||
slave_rows_search_algorithms | Yes | Yes | Yes | Global | Yes | |
slave_skip_errors | Yes | Yes | Yes | Global | No | |
slave-sql-verify-checksum | Yes | Yes | ||||
slave_sql_verify_checksum | Yes | Yes | Yes | Global | Yes | |
slave_transaction_retries | Yes | Yes | Yes | Global | Yes | |
slave_type_conversions | Yes | Yes | Yes | Global | No | |
Slow_launch_threads | Yes | Both | No | |||
slow_launch_time | Yes | Yes | Yes | Global | Yes | |
Slow_queries | Yes | Both | No | |||
slow_query_log | Yes | Yes | Yes | Global | Yes | |
slow_query_log_file | Yes | Yes | Yes | Global | Yes | |
slow-start-timeout | Yes | Yes | ||||
socket | Yes | Yes | Yes | Global | No | |
sort_buffer_size | Yes | Yes | Yes | Both | Yes | |
Sort_merge_passes | Yes | Both | No | |||
Sort_range | Yes | Both | No | |||
Sort_rows | Yes | Both | No | |||
Sort_scan | Yes | Both | No | |||
sporadic-binlog-dump-fail | Yes | Yes | ||||
sql_auto_is_null | Yes | Both | Yes | |||
sql_big_selects | Yes | Both | Yes | |||
sql_buffer_result | Yes | Both | Yes | |||
sql_log_bin | Yes | Session | Yes | |||
sql_log_off | Yes | Both | Yes | |||
sql_mode | Yes | Yes | Yes | Both | Yes | |
sql_notes | Yes | Both | Yes | |||
sql_quote_show_create | Yes | Both | Yes | |||
sql_require_primary_key | Yes | Yes | Yes | Both | Yes | |
sql_safe_updates | Yes | Both | Yes | |||
sql_select_limit | Yes | Both | Yes | |||
sql_slave_skip_counter | Yes | Global | Yes | |||
sql_warnings | Yes | Both | Yes | |||
ssl | Yes | Yes | ||||
Ssl_accept_renegotiates | Yes | Global | No | |||
Ssl_accepts | Yes | Global | No | |||
ssl_c | Yes | Yes | Yes | Global | Varies | |
Ssl_callback_cache_hits | Yes | Global | No | |||
ssl_capath | Yes | Yes | Yes | Global | Varies | |
ssl_cert | Yes | Yes | Yes | Global | Varies | |
Ssl_cipher | Yes | Both | No | |||
ssl_cipher | Yes | Yes | Yes | Global | Varies | |
Ssl_cipher_list | Yes | Both | No | |||
Ssl_client_connects | Yes | Global | No | |||
Ssl_connect_renegotiates | Yes | Global | No | |||
ssl_crl | Yes | Yes | Yes | Global | Varies | |
ssl_crlpath | Yes | Yes | Yes | Global | Varies | |
Ssl_ctx_verify_depth | Yes | Global | No | |||
Ssl_ctx_verify_mode | Yes | Global | No | |||
Ssl_default_timeout | Yes | Both | No | |||
Ssl_finished_accepts | Yes | Global | No | |||
Ssl_finished_connects | Yes | Global | No | |||
ssl_fips_mode | Yes | Yes | Yes | Global | Yes | |
ssl_key | Yes | Yes | Yes | Global | Varies | |
Ssl_server_not_after | Yes | Both | No | |||
Ssl_server_not_before | Yes | Both | No | |||
Ssl_session_cache_hits | Yes | Global | No | |||
Ssl_session_cache_misses | Yes | Global | No | |||
Ssl_session_cache_mode | Yes | Global | No | |||
Ssl_session_cache_overflows | Yes | Global | No | |||
Ssl_session_cache_size | Yes | Global | No | |||
Ssl_session_cache_timeouts | Yes | Global | No | |||
Ssl_sessions_reused | Yes | Both | No | |||
Ssl_used_session_cache_entries | Yes | Global | No | |||
Ssl_verify_depth | Yes | Both | No | |||
Ssl_verify_mode | Yes | Both | No | |||
Ssl_version | Yes | Both | No | |||
standalone | Yes | Yes | ||||
stored_program_cache | Yes | Yes | Yes | Global | Yes | |
stored_program_definition_cache | Yes | Yes | Yes | Global | Yes | |
super-large-pages | Yes | Yes | ||||
super_read_only | Yes | Yes | Yes | Global | Yes | |
symbolic-links | Yes | Yes | ||||
sync_binlog | Yes | Yes | Yes | Global | Yes | |
sync_master_info | Yes | Yes | Yes | Global | Yes | |
sync_relay_log | Yes | Yes | Yes | Global | Yes | |
sync_relay_log_info | Yes | Yes | Yes | Global | Yes | |
sysdate-is-now | Yes | Yes | ||||
syseventlog.facility | Yes | Yes | Yes | Global | Yes | |
syseventlog.include_pid | Yes | Yes | Yes | Global | Yes | |
syseventlog.tag | Yes | Yes | Yes | Global | Yes | |
system_time_zone | Yes | Global | No | |||
table_definition_cache | Yes | Yes | Yes | Global | Yes | |
table_encryption_privilege_check | Yes | Yes | Yes | Global | Yes | |
Table_locks_immediate | Yes | Global | No | |||
Table_locks_waited | Yes | Global | No | |||
table_open_cache | Yes | Yes | Yes | Global | Yes | |
Table_open_cache_hits | Yes | Both | No | |||
table_open_cache_instances | Yes | Yes | Yes | Global | No | |
Table_open_cache_misses | Yes | Both | No | |||
Table_open_cache_overflows | Yes | Both | No | |||
tablespace_definition_cache | Yes | Yes | Yes | Global | Yes | |
tc-heuristic-recover | Yes | Yes | ||||
Tc_log_max_pages_used | Yes | Global | No | |||
Tc_log_page_size | Yes | Global | No | |||
Tc_log_page_waits | Yes | Global | No | |||
temptable_max_ram | Yes | Yes | Yes | Global | Yes | |
temptable_use_mmap | Yes | Yes | Yes | Global | Yes | |
thread_cache_size | Yes | Yes | Yes | Global | Yes | |
thread_handling | Yes | Yes | Yes | Global | No | |
thread_pool_algorithm | Yes | Yes | Yes | Global | No | |
thread_pool_high_priority_connection | Yes | Yes | Yes | Both | Yes | |
thread_pool_max_active_query_threads | Yes | Yes | Yes | Global | Yes | |
thread_pool_max_unused_threads | Yes | Yes | Yes | Global | Yes | |
thread_pool_prio_kickup_timer | Yes | Yes | Yes | Both | Yes | |
thread_pool_size | Yes | Yes | Yes | Global | No | |
thread_pool_stall_limit | Yes | Yes | Yes | Global | Yes | |
thread_stack | Yes | Yes | Yes | Global | No | |
Threads_cached | Yes | Global | No | |||
Threads_connected | Yes | Global | No | |||
Threads_created | Yes | Global | No | |||
Threads_running | Yes | Global | No | |||
time_zone | Yes | Both | Yes | |||
timestamp | Yes | Session | Yes | |||
tls_ciphersuites | Yes | Yes | Yes | Global | Yes | |
tls_version | Yes | Yes | Yes | Global | Varies | |
tmp_table_size | Yes | Yes | Yes | Both | Yes | |
tmpdir | Yes | Yes | Yes | Global | No | |
transaction_alloc_block_size | Yes | Yes | Yes | Both | Yes | |
transaction_allow_batching | Yes | Session | Yes | |||
transaction_isolation | Yes | Yes | Yes | Both | Yes | |
transaction_prealloc_size | Yes | Yes | Yes | Both | Yes | |
transaction_read_only | Yes | Yes | Yes | Both | Yes | |
transaction_write_set_extraction | Yes | Yes | Yes | Both | Yes | |
unique_checks | Yes | Both | Yes | |||
updatable_views_with_limit | Yes | Yes | Yes | Both | Yes | |
upgrade | Yes | Yes | ||||
Uptime | Yes | Global | No | |||
Uptime_since_flush_status | Yes | Global | No | |||
use_secondary_engine | Yes | Session | Yes | |||
user | Yes | Yes | ||||
validate-config | Yes | Yes | ||||
validate-password | Yes | Yes | ||||
validate_password_check_user_name | Yes | Yes | Yes | Global | Yes | |
validate_password_dictionary_file | Yes | Yes | Yes | Global | Yes | |
validate_password_dictionary_file_last_parsed | Yes | Global | No | |||
validate_password_dictionary_file_words_count | Yes | Global | No | |||
validate_password_length | Yes | Yes | Yes | Global | Yes | |
validate_password_mixed_case_count | Yes | Yes | Yes | Global | Yes | |
validate_password_number_count | Yes | Yes | Yes | Global | Yes | |
validate_password_policy | Yes | Yes | Yes | Global | Yes | |
validate_password_special_char_count | Yes | Yes | Yes | Global | Yes | |
validate_password.check_user_name | Yes | Yes | Yes | Global | Yes | |
validate_password.dictionary_file | Yes | Yes | Yes | Global | Yes | |
validate_password.dictionary_file_last_parsed | Yes | Global | No | |||
validate_password.dictionary_file_words_count | Yes | Global | No | |||
validate_password.length | Yes | Yes | Yes | Global | Yes | |
validate_password.mixed_case_count | Yes | Yes | Yes | Global | Yes | |
validate_password.number_count | Yes | Yes | Yes | Global | Yes | |
validate_password.policy | Yes | Yes | Yes | Global | Yes | |
validate_password.special_char_count | Yes | Yes | Yes | Global | Yes | |
validate_user_plugins | Yes | Yes | Yes | Global | No | |
verbose | Yes | Yes | ||||
version | Yes | Global | No | |||
version_comment | Yes | Global | No | |||
version_compile_machine | Yes | Global | No | |||
version_compile_os | Yes | Global | No | |||
version_compile_zlib | Yes | Global | No | |||
version_tokens_session | Yes | Yes | Yes | Both | Yes | |
version_tokens_session_number | Yes | Yes | Yes | Both | No | |
wait_timeout | Yes | Yes | Yes | Both | Yes | |
warning_count | Yes | Session | No | |||
windowing_use_high_precision | Yes | Yes | Yes | Both | Yes |
服务器系统变量
MySQL服务器维护许多配置其操作的系统变量。每个系统变量都有一个默认值。可以在服务器启动时使用命令行或选项文件中的选项设置系统变量。可以使用以下SET
语句在运行时动态更改其中的大多数内容,该语句使您无需停止并重新启动服务器即可修改服务器的操作。您也可以在表达式中使用系统变量值。
设置全局系统变量运行时值通常需要SYSTEM_VARIABLES_ADMIN
或SUPER
特权。设置会话系统运行时变量值通常不需要特殊特权,并且任何用户都可以完成,尽管有例外。有关更多信息,请参见“系统变量特权”
有几种方法可以参见系统变量的名称和值:
要参见服务器根据其内建的默认值和读取的任何选项文件将使用的值,请使用以下命令:
mysqld --verbose --help
要仅根据服务器的编译缺省值参见服务器将使用的值,而忽略任何选项文件中的设置,请使用以下命令:
mysqld --no-defaults --verbose --help
- 要参见正在运行的服务器使用的当前值,请使用该
SHOW VARIABLES
语句或Performance Schema系统变量表。请参见“性能架构系统变量表”。
本节提供每个系统变量的描述。有关系统变量摘要表,请参见“服务器系统变量参考”。有关操纵系统变量的更多信息,请参见“使用MySQL服务器系统变量”。
有关其他系统变量信息,请参见以下部分:
- “使用系统变量”讨论了设置和显示系统变量值的语法。
- “动态系统变量”列出了可以在运行时设置的变量。
- 有关调整系统变量的信息,请参见“配置服务器”。
- “ InnoDB启动选项和系统变量”列出了
InnoDB
系统变量。 - “ NDB群集系统变量”列出了特定于NDB群集的系统变量。
- 有关特定于复制的服务器系统变量的信息,请参见“复制和二进制日志记录选项和变量”。
注意以下某些变量描述涉及“启用”或“禁用”变量。可以
SET
通过将其设置为ON
或来启用这些变量1
,或者通过将其设置为OFF
或来禁用这些变量0
。布尔变量可以在启动时被设置为的值ON
,TRUE
,OFF
,和FALSE
(不区分大小写),以及1
和0
。请参见“程序选项修饰符”。
一些系统变量控制缓冲区或高速缓存的大小。对于给定的缓冲区,服务器可能需要分配内部数据结构。这些结构通常是从分配给缓冲区的总内存中分配的,所需的空间量可能取决于平台。这意味着,当您将值分配给控制缓冲区大小的系统变量时,实际可用空间量可能与分配的值不同。在某些情况下,金额可能小于分配的值。服务器也可能向上调整一个值。例如,如果为变量的最小值为1024分配了0值,则服务器会将其设置为1024。
除非另有说明,否则缓冲区大小,长度和堆栈大小的值以字节为单位。
一些系统变量采用文件名值。除非另有说明,否则,如果值是相对路径名,则默认文件位置是数据目录。要明确指定位置,请使用绝对路径名。假设数据目录为/var/mysql/dat
。如果将文件值变量指定为相对路径名,则它将位于下/var/mysql/dat
。如果该值是绝对路径名,则其位置由路径名指定。
ctivate_all_roles_on_login
属性 值 命令行格式 --activate-all-roles-on-login[={OFF|ON}]
系统变量 ctivate_all_roles_on_login
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
用户登录服务器时是否启用所有授予的角色的自动激活:
- 如果
ctivate_all_roles_on_login
启用,则服务器将在登录时激活授予每个帐户的所有角色。这优先于通过指定的默认角色SET DEFAULT ROLE
。 - 如果
ctivate_all_roles_on_login
已禁用,则服务器将SET DEFAULT ROLE
在登录时激活用(如果有)指定的默认角色。
授予的角色包括显式授予用户的角色和在
mandatory_roles
系统变量值中命名的角色。ctivate_all_roles_on_login
仅在登录时和在定义程序上下文中执行的存储程序和视图执行开始时适用。要更改会话中的活动角色,请使用SET ROLE
。要更改存储程序的活动角色,程序主体应执行SET ROLE
。- 如果
dmin_address
属性 值 命令行格式 --admin-address=addr
介绍了 8.0.14 系统变量 dmin_address
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 在管理网络接口上侦听TCP / IP连接的IP地址(请参见“ MySQL如何处理客户端连接”)。没有默认
dmin_address
值。如果在启动时未指定此变量,则服务器不维护任何管理界面。该服务器还有一个bind_address
系统变量,用于配置常规(非管理)客户端TCP / IP连接。请参见“ MySQL如何处理客户端连接”。如果
dmin_address
指定,则其值必须满足以下要求:- 该值必须是单个IPv4地址,IPv6地址或主机名。
- 该值不能指定一个通配符地址格式(
*
,0.0.0.0
,或::
)。
可以将IP地址指定为IPv4或IPv6地址。如果该值为主机名,则服务器将名称解析为IP地址并绑定到该地址。如果主机名解析为多个IP地址,则服务器使用第一个IPv4地址(如果存在),否则使用第一个IPv6地址。
服务器按以下方式处理不同类型的地址:
- 如果该地址是IPv4映射的地址,则服务器接受该地址的IPv4或IPv6格式的TCP / IP连接。例如,如果服务器已绑定
::ffff:127.0.0.1
,则客户端可以使用--host=127.0.0.1
或连接--host=::ffff:127.0.0.1
。 - 如果该地址是“常规” IPv4或IPv6地址(例如
127.0.0.1
或::1
),则服务器仅接受该IPv4或IPv6地址的TCP / IP连接。
如果绑定到该地址失败,则服务器将产生错误,并且不会启动。
该
dmin_address
系统变量类似于bind_address
将服务器绑定到普通客户端连接地址的系统变量,但存在以下差异:bind_address
允许多个地址。dmin_address
允许一个地址。bind_address
允许使用通配符地址。dmin_address
才不是。
dmin_port
属性 值 命令行格式 --admin-port=port_num
介绍了 8.0.14 系统变量 dmin_port
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 33062
最低值 0
最大值 65535
用于管理网络接口上的连接的TCP / IP端口号(请参见“ MySQL如何处理客户端连接”)。将此变量设置为0将导致使用默认值。
dmin_port
如果dmin_address
未指定,则设置无效,因为在这种情况下,服务器不维护管理网络接口。uthentication_windows_log_level
属性 值 命令行格式 --authentication-windows-log-level=#
系统变量 uthentication_windows_log_level
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 2
最低值 0
最大值 4
仅当
uthentication_windows
启用Windows身份验证插件并启用调试代码时,此变量才可用。请参见“ Windows可插入身份验证”。此变量设置Windows身份验证插件的日志记录级别。下表显示了允许的值。
值 描述 0 没有记录 1个 仅记录错误消息 2 日志级别1消息和警告消息 3 日志级别2的消息和信息说明 4 记录3级消息和调试消息 uthentication_windows_use_principal_name
属性 值 命令行格式 --authentication-windows-use-principal-name[={OFF|ON}]
系统变量 uthentication_windows_use_principal_name
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
仅当
uthentication_windows
启用Windows身份验证插件时,此变量才可用。请参见“ Windows可插入身份验证”。使用该
InitSecurityContext()
功能进行身份验证的客户端应提供一个字符串,用于标识与其连接的服务(targetName
)。MySQL使用运行服务器的帐户的主体名称(UPN)。UPN具有表格,无需在任何要使用的地方进行注册。服务器在身份验证握手开始时发送此UPN。user_id@computer_name
此变量控制服务器在初始质询中是否发送UPN。默认情况下,该变量处于启用状态。出于安全原因,可以将其禁用,以避免将服务器的帐户名作为明文发送给客户端。如果禁用了该变量,则服务器将始终
0x00
在第一个质询中发送一个字节,客户端未指定targetName
,因此将使用NTLM身份验证。如果服务器无法获取其UPN(主要发生在不支持Kerberos身份验证的环境中),则服务器不会发送UPN,而是使用NTLM身份验证。
utocommit
属性 值 命令行格式 --autocommit[={OFF|ON}]
系统变量 utocommit
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
自动提交模式。如果设置为1,对表的所有更改将立即生效。如果设置为0,则必须使用
COMMIT
接受交易或ROLLBACK
取消交易。如果utocommit
为0,并将其更改为1,则MySQL会自动执行COMMIT
所有未清事务。开始交易的另一种方法是使用START TRANSACTION
orBEGIN
语句。请参见“ START TRANSACTION,COMMIT和ROLLBACK语句”。默认情况下,客户端连接以
utocommit
设置为1 开始。要使客户端以默认值0utocommit
开始,请通过使用--autocommit=0
选项启动服务器来设置全局值。要使用选项文件设置变量,请包括以下几行:[mysqld] utocommit=0
utomatic_sp_privileges
属性 值 命令行格式 --automatic-sp-privileges[={OFF|ON}]
系统变量 utomatic_sp_privileges
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
当此变量的值为1(默认值)时,如果用户不能执行和更改或删除该例程,则服务器会自动向该例程的创建者授予
EXECUTE
和ALTER ROUTINE
特权。(ALTER ROUTINE
删除该例程需要特权。)删除例程后,服务器也会自动从创建者那里删除那些特权。如果utomatic_sp_privileges
为0,则服务器不会自动添加或删除这些特权。例程的创建者是用于为其执行
CREATE
语句的帐户。这可能DEFINER
与例程定义中名为的帐户不同。如果启动mysqld的使用
--skip-new
,utomatic_sp_privileges
设置为OFF
。另请参见“存储的例程和MySQL特权”。
uto_generate_certs
属性 值 命令行格式 --auto-generate-certs[={OFF|ON}]
系统变量 uto_generate_certs
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
此变量控制服务器是否自动生成数据目录中的SSL密钥和证书文件(如果尚不存在)。
启动时,如果
uto_generate_certs
启用了系统变量,未--ssl
指定除SSL选项之外的其他任何选项,并且数据中缺少服务器端SSL文件,则服务器会在数据目录中自动生成服务器端和客户端SSL证书和密钥文件。目录。这些文件使用SSL启用安全的客户端连接。请参见“配置MySQL以使用加密连接”。有关SSL文件自动生成的更多信息,包括文件名和特征,请参见“创建SSL和RSA证书和密钥”
该
sha256_password_auto_generate_rsa_keys
和caching_sha2_password_auto_generate_rsa_keys
系统变量相关,但所需要的使用RSA在unencypted连接的安全密码交换RSA密钥对文件控制自动生成。void_temporal_upgrade
属性 值 命令行格式 --avoid-temporal-upgrade[={OFF|ON}]
不推荐使用 是 系统变量 void_temporal_upgrade
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
这个变量控制是否
ALTER TABLE
隐式升级时间列发现在预5.6.4格式(TIME
,DATETIME
,和TIMESTAMP
列不为小数精度秒支持)。升级此类列需要重新构建表,这将阻止使用任何可能会应用于要执行的操作的快速更改。默认情况下禁用此变量。启用它会导致
ALTER TABLE
不重建时态列,从而能够利用可能的快速更改。不建议使用此变量,并将在将来的MySQL版本中将其删除。
back_log
属性 值 命令行格式 --back-log=#
系统变量 back_log
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 -1
(表示自动调整大小;不分配此文字值)最低值 1
最大值 65535
MySQL可以拥有的未完成连接请求数。当主要的MySQL线程在很短的时间内收到很多连接请求时,就会发挥作用。然后,主线程需要花费一些时间(尽管很少)来检查连接并启动新线程。该
back_log
值指示在MySQL暂时停止回答新请求之前的短时间内可以堆叠多少个请求。仅当您期望在短时间内有大量连接时,才需要增加此数量。换句话说,此值是传入TCP / IP连接的侦听队列的大小。您的操作系统对此队列的大小有自己的限制。Unix
listen()
系统调用的手册页应包含更多详细信息。检查您的操作系统文档以获取此变量的最大值。back_log
不能将其设置为高于操作系统限制。默认值为的值
max_connections
,这使允许的积压工作可以调整为最大允许的连接数。basedir
属性 值 命令行格式 --basedir=dir_name
系统变量 basedir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 默认值 parent of mysqld installation directory
MySQL安装基础目录的路径。
big_tables
属性 值 命令行格式 --big-tables[={OFF|ON}]
系统变量 big_tables
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果启用,服务器会将所有临时表存储在磁盘上,而不是存储在内存中。这样可以避免大多数需要大型临时表的操作出错,同时也减慢了内存表就足够的查询。
The table tbl_name is full
SELECT
新连接的默认值为
OFF
(使用内存临时表)。通常,永远不需要启用此变量。当内存内部临时表由TempTable
存储引擎管理(默认设置),并且TempTable
超出了TempTable
存储引擎可以占用的最大内存量时,存储引擎将开始将数据存储到磁盘上的临时文件中。当MEMORY
存储引擎管理内存临时表时,内存表会根据需要自动转换为基于磁盘的表。有关更多信息,请参见“ MySQL中的内部临时表使用”。bind_address
属性 值 命令行格式 --bind-address=addr
系统变量 bind_address
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 *
MySQL服务器在一个或多个网络套接字上侦听TCP / IP连接。每个套接字都绑定到一个地址,但是一个地址可以映射到多个网络接口。要指定服务器应如何侦听TCP / IP连接,请
bind_address
在服务器启动时设置系统变量。服务器还具有一个dmin_address
系统变量,该变量在专用接口上启用管理连接。请参见“ MySQL如何处理客户端连接”。如果
bind_address
指定,则其值必须满足以下要求:- 之前的MySQL 8.0.13,
bind_address
接受一个单独的地址值,其可以指定单个非通配符IP地址或主机名,或在允许对多个网络接口侦听的通配符地址格式中的一种(*
,0.0.0.0
,或::
)。 - 从MySQL 8.0.13开始,
bind_address
接受如上所述的单个值,或接受逗号分隔值的列表。当变量命名一个包含多个值的列表时,每个值必须指定一个非通配IP地址或主机名;没有人可以指定一个通配符地址格式(*
,0.0.0.0
,或::
)。
IP地址可以指定为IPv4或IPv6地址。对于任何作为主机名的值,服务器都会将该名称解析为IP地址并绑定到该地址。如果主机名解析为多个IP地址,则服务器使用第一个IPv4地址(如果存在),否则使用第一个IPv6地址。
服务器按以下方式处理不同类型的地址:
- 如果地址为
*
,则服务器在所有服务器主机的IPv4接口上接受TCP / IP连接,如果服务器主机支持IPv6,则在所有IPv6接口上接受TCP / IP连接。使用此地址可以在所有服务器接口上同时允许IPv4和IPv6连接。此值为默认值。如果该选项指定了多个值的列表,则不允许使用该值。 - 如果地址为
0.0.0.0
,则服务器在所有服务器主机IPv4接口上接受TCP / IP连接。如果该选项指定了多个值的列表,则不允许使用该值。 - 如果地址为
::
,则服务器在所有服务器主机IPv4和IPv6接口上接受TCP / IP连接。如果该选项指定了多个值的列表,则不允许使用该值。 - 如果该地址是IPv4映射的地址,则服务器接受该地址的IPv4或IPv6格式的TCP / IP连接。例如,如果服务器已绑定
::ffff:127.0.0.1
,则客户端可以使用--host=127.0.0.1
或连接--host=::ffff:127.0.0.1
。 - 如果该地址是“常规” IPv4或IPv6地址(例如
127.0.0.1
或::1
),则服务器仅接受该IPv4或IPv6地址的TCP / IP连接。
如果绑定到任何地址失败,则服务器将产生错误并且无法启动。
例子:
bind_address=*
服务器侦听
*
通配符指定的所有IPv4或IPv6地址。bind_address=198.51.100.20
服务器仅在
198.51.100.20
IPv4地址上侦听。bind_address=198.51.100.20,2001:db8:0:f101::1
服务器侦听
198.51.100.20
IPv4地址和2001:db8:0:f101::1
IPv6地址。bind_address=198.51.100.20,*
产生错误是因为在
bind_address
命名多个值的列表时不允许使用通配符地址。
当
bind_address
命名单个值(通配符或非通配符)时,服务器在单个套接字上侦听,该套接字上的通配符地址可能绑定到多个网络接口。当bind_address
命名多个值的列表时,服务器在每个值上侦听一个套接字,每个套接字都绑定到一个网络接口。套接字的数量与指定的值的数量成线性关系。根据操作系统连接接受效率,长值列表可能会因接受TCP / IP连接而导致性能下降。由于文件描述符是为侦听套接字分配的,因此可能有必要增加
open_files_limit
系统变量。如果打算将服务器绑定到特定地址,请确保
mysql.user
系统表包含一个具有管理特权的帐户,可用于连接该地址。否则,您将无法关闭服务器。例如,如果将服务器绑定到*
,则可以使用所有现有帐户连接到该服务器。但是,如果将服务器绑定到::1
,则服务器仅在该地址上接受连接。在这种情况下,首先请确保'root'@'::1'
该mysql.user
表中存在该帐户,以便您仍然可以连接到服务器以将其关闭。- 之前的MySQL 8.0.13,
block_encryption_mode
属性 值 命令行格式 --block-encryption-mode=#
系统变量 block_encryption_mode
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 es-128-ecb
此变量控制基于块的算法(例如AES)的块加密模式。它影响
AES_ENCRYPT()
和的加密AES_DECRYPT()
。block_encryption_mode
采用格式值,其中是以位为单位的密钥长度,是加密模式。该值不区分大小写。允许的值是128,192和256允许的值是,,,,,和。es-keylen-mode
keylen
mode
keylen
mode
ECB
CBC
CFB1
CFB8
CFB128
OFB
例如,以下语句使AES加密功能使用256位的密钥长度和CBC模式:
SET block_encryption_mode = 'aes-256-cbc';尝试将其设置
block_encryption_mode
为包含不支持的密钥长度的值或SSL库不支持的模式时发生错误。bulk_insert_buffer_size
属性 值 命令行格式 --bulk-insert-buffer-size=#
系统变量 bulk_insert_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 8388608
最低值 0
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
MyISAM
使用一种特殊的树状缓存,使批量插入更快INSERT ... SELECT
,INSERT ... VALUES(...),(...),...
以及LOAD DATA
将数据添加到非空表时。此变量限制高速缓存树的大小(每个线程以字节为单位)。将其设置为0将禁用此优化。默认值为8MB。从MySQL 8.0.14开始,设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
caching_sha2_password_auto_generate_rsa_keys
属性 值 命令行格式 --caching-sha2-password-auto-generate-rsa-keys[={OFF|ON}]
系统变量 caching_sha2_password_auto_generate_rsa_keys
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
服务器使用此变量来确定是否自动生成数据目录中的RSA私钥/公钥对文件(如果尚不存在)。
在启动时,服务器会自动生成数据目录RSA公钥/私钥对的文件,如果所有这些条件为真:
sha256_password_auto_generate_rsa_keys
或caching_sha2_password_auto_generate_rsa_keys
系统变量启用;未指定RSA选项;数据目录中缺少RSA文件。这些密钥对文件可通过RSAsha256_password
或caching_sha2_password
插件认证的帐户,通过未加密的连接使用RSA进行安全密码交换;请参见“ SHA-256可插拔身份验证”和“缓存SHA-2可插拔身份验证”。有关RSA文件自动生成的更多信息,包括文件名和特征,请参见“创建SSL和RSA证书和密钥”
该
uto_generate_certs
系统变量相关,但SSL证书,并需要使用SSL安全连接密钥文件的控制自动生成。caching_sha2_password_private_key_path
属性 值 命令行格式 --caching-sha2-password-private-key-path=file_name
系统变量 caching_sha2_password_private_key_path
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 默认值 private_key.pem
此变量指定
caching_sha2_password
身份验证插件的RSA私钥文件的路径名。如果文件被命名为相对路径,则会相对于服务器数据目录进行解释。该文件必须为PEM格式。重要
由于此文件存储私钥,因此应限制其访问模式,以便只有MySQL服务器才能读取它。
有关的信息
caching_sha2_password
,请参见“缓存SHA-2可插拔身份验证”。caching_sha2_password_public_key_path
属性 值 命令行格式 --caching-sha2-password-public-key-path=file_name
系统变量 caching_sha2_password_public_key_path
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 默认值 public_key.pem
此变量指定
caching_sha2_password
身份验证插件的RSA公钥文件的路径名。如果文件被命名为相对路径,则会相对于服务器数据目录进行解释。该文件必须为PEM格式。有关的信息
caching_sha2_password
(包括有关客户端如何请求RSA公钥的信息),请参见“缓存SHA-2可插拔身份验证”。character_set_client
属性 值 系统变量 character_set_client
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4
来自客户端的语句的字符集。当客户端连接到服务器时,使用客户端请求的字符集设置此变量的会话值。(许多客户端支持
--default-character-set
启用该字符集的显式指定的选项。另请参见“连接字符集和校验规则”。)在客户端请求的情况下,变量的全局值用于设置会话值值未知或不可用,或者服务器配置为忽略客户端请求:- 客户端请求服务器不知道的字符集。例如,
sjis
当连接到未配置sjis
支持的服务器时,启用日语的客户端会请求。 - 客户端来自低于MySQL 4.1的MySQL版本,因此不请求字符集。
- mysqld是使用该
--skip-character-set-client-handshake
选项启动的,导致该选项忽略客户端字符集配置。这重现了MySQL 4.0的行为,如果您希望在不升级所有客户端的情况下升级服务器,则将很有用。
某些字符集不能用作客户端字符集。尝试将它们用作
character_set_client
值会产生错误。请参阅不允许的客户字符集。- 客户端请求服务器不知道的字符集。例如,
character_set_connection
属性 值 系统变量 character_set_connection
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4
该字符集用于不带字符集介绍符的指定文字,以及用于数字到字符串的转换。有关介绍人的信息,请参见“字符串字符集和校验规则”。
character_set_database
属性 值 系统变量 character_set_database
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4
脚注 此选项是动态的,但只有服务器应设置此信息。您不应手动设置此变量的值。 默认数据库使用的字符集。每当默认数据库更改时,服务器都会设置此变量。如果没有默认数据库,则该变量的值与相同
character_set_server
。从MySQL 8.0.14开始,设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
全局变量
character_set_database
和collation_database
系统变量已弃用,并将在MySQL的未来版本中删除。不建议为会话
character_set_database
和collation_database
系统变量分配值,并且分配会产生警告。会话变量在MySQL的未来版本中将变为只读,并且赋值将产生错误。仍然可以访问会话变量,以确定默认数据库的数据库字符集和排序规则。character_set_filesystem
属性 值 命令行格式 --character-set-filesystem=name
系统变量 character_set_filesystem
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 binary
文件系统字符集。此变量用于解释引用文件名的字符串文字,例如
LOAD DATA
ndSELECT ... INTO OUTFILE
语句和LOAD_FILE()
函数。这样的文件名从转换character_set_client
到character_set_filesystem
发生文件打开尝试之前。默认值为binary
,表示不进行任何转换。对于允许使用多字节文件名的系统,不同的值可能更合适。例如,如果系统使用UTF-8表示文件名,则设置character_set_filesystem
为'utf8mb4'
。从MySQL 8.0.14开始,设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
character_set_results
属性 值 系统变量 character_set_results
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4
用于将查询结果返回给客户端的字符集。这包括结果数据(例如列值),结果元数据(例如列名)和错误消息。
character_set_server
属性 值 命令行格式 --character-set-server=name
系统变量 character_set_server
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4
服务器默认字符集。请参见“字符集配置”。如果设置此变量,则还应该设置
collation_server
为字符集指定排序规则。character_set_system
属性 值 系统变量 character_set_system
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 utf8
服务器用于存储标识符的字符集。该值始终为
utf8
。character_sets_dir
属性 值 命令行格式 --character-sets-dir=dir_name
系统变量 character_sets_dir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 字符集的安装目录。请参见“字符集配置”。
check_proxy_users
属性 值 命令行格式 --check-proxy-users[={OFF|ON}]
系统变量 check_proxy_users
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
一些身份验证插件自己实现代理用户映射(例如,PAM和Windows身份验证插件)。默认情况下,其他身份验证插件不支持代理用户。其中,有些可以要求MySQL服务器本身根据授予的代理特权来映射代理用户:
mysql_native_password
,sha256_password
。如果
check_proxy_users
启用了系统变量,则服务器将对发出此请求的所有身份验证插件执行代理用户映射。但是,可能还需要启用特定于插件的系统变量以利用服务器代理用户映射支持:- 对于
mysql_native_password
插件,请启用mysql_native_password_proxy_users
。 - 对于
sha256_password
插件,请启用sha256_password_proxy_users
。
有关用户代理的信息,请参见“代理用户”。
- 对于
collation_connection
属性 值 系统变量 collation_connection
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 连接字符集的排序规则。
collation_connection
对于文字字符串的比较很重要。对于将字符串与列值进行比较,collation_connection
没有关系,因为列具有自己的排序规则,排序规则具有更高的排序规则优先级(请参见“表达式中的排序规则强制性”)。collation_database
属性 值 系统变量 collation_database
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4_0900_ai_ci
脚注 此选项是动态的,但只有服务器应设置此信息。您不应手动设置此变量的值。 默认数据库使用的排序规则。每当默认数据库更改时,服务器都会设置此变量。如果没有默认数据库,则该变量的值与相同
collation_server
。从MySQL 8.0.18开始,设置此系统变量的会话值不再是受限制的操作。
全局变量
character_set_database
和collation_database
系统变量已弃用,并将在MySQL的未来版本中删除。不建议为会话
character_set_database
和collation_database
系统变量分配值,并且分配会产生警告。会话变量在MySQL的未来版本中将变为只读,并且赋值将产生错误。仍然可以访问会话变量,以确定默认数据库的数据库字符集和排序规则。collation_server
属性 值 命令行格式 --collation-server=name
系统变量 collation_server
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 utf8mb4_0900_ai_ci
服务器的默认排序规则。请参见“字符集配置”。
completion_type
属性 值 命令行格式 --completion-type=#
系统变量 completion_type
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 NO_CHAIN
有效值 NO_CHAIN
CHAIN
RELEASE
0
1
2
交易完成类型。该变量可以采用下表中显示的值。可以使用名称值或相应的整数值来分配变量。
值 描述 NO_CHAIN
(或0)COMMIT
并且ROLLBACK
不受影响。这是默认值。CHAIN
(或1)COMMIT
和ROLLBACK
分别等于COMMIT AND CHAIN
和ROLLBACK AND CHAIN
。(新事务将以与刚刚终止的事务相同的隔离级别立即开始。)RELEASE
(或2个)COMMIT
和ROLLBACK
分别等于COMMIT RELEASE
和ROLLBACK RELEASE
。(服务器在终止事务后断开连接。)completion_type
会影响首先交易START TRANSACTION
或BEGIN
和结束与COMMIT
或ROLLBACK
。它不适用于因执行“导致隐式提交的语句”中列出的语句而导致的隐式提交。它也不会为应用XA COMMIT
,XA ROLLBACK
或当utocommit=1
。concurrent_insert
属性 值 命令行格式 --concurrent-insert[=value]
系统变量 concurrent_insert
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 AUTO
有效值 NEVER
AUTO
ALWAYS
0
1
2
如果
AUTO
(默认),MySQL允许INSERT
和SELECT
语句针对MyISAM
数据文件中间没有空闲块的表同时运行。该变量可以采用下表中显示的值。可以使用名称值或相应的整数值来分配变量。
值 描述 NEVER
(或0)禁用并发插入 AUTO
(或1)(默认)为 MyISAM
没有孔的表启用并发插入ALWAYS
(或2个)为所有 MyISAM
表启用并发插入,即使有孔的表也是如此。对于有孔的表,如果另一个线程正在使用该表,则在表的末尾插入新行。否则,MySQL将获得普通的写锁,并将该行插入到该孔中。如果启动mysqld的使用
--skip-new
,concurrent_insert
设置为NEVER
。另请参见“并发插入”。
connect_timeout
属性 值 命令行格式 --connect-timeout=#
系统变量 connect_timeout
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 10
最低值 2
最大值 31536000
mysqld服务器在以响应之前等待连接数据包的秒数
Bad handshake
。默认值为10秒。connect_timeout
如果客户经常遇到表格错误,则增加该值可能会有所帮助。Lost connection to MySQL server at 'XXX', system error:errno
core_file
属性 值 系统变量 core_file
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果服务器崩溃,是否写入核心文件。该变量由
--core-file
选项设置。create_admin_listener_thread
属性 值 命令行格式 --create-admin-listener-thread[={OFF|ON}]
介绍了 8.0.14 系统变量 create_admin_listener_thread
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
是否在管理网络接口上使用专用的侦听线程进行客户端连接(请参见“ MySQL如何处理客户端连接”)。默认设置是使用用于普通连接的侦听器线程来实现管理接口。
根据平台类型和工作负载等因素,您可能会发现此变量的一种设置比另一种设置产生更好的性能。
create_admin_listener_thread
如果dmin_address
未指定,则设置无效,因为在这种情况下,服务器不维护管理网络接口。cte_max_recursion_depth
属性 值 命令行格式 --cte-max-recursion-depth=#
系统变量 cte_max_recursion_depth
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1000
最低值 0
最大值 4294967295
公用表表达式(CTE)的最大递归深度。服务器终止任何递归级别高于此变量值的CTE。有关更多信息,请参见限制公用表表达式递归。
datadir
属性 值 命令行格式 --datadir=dir_name
系统变量 datadir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 MySQL服务器数据目录的路径。相对路径相对于当前目录进行解析。如果服务器将自动启动(即,在无法假定当前目录为上下文的上下文中),则最好将
datadir
值指定为绝对路径。debug
属性 值 命令行格式 --debug[=debug_options]
系统变量 debug
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 预设值(Windows) d:t:i:O,\mysqld.trace
预设值(Unix) d:t:i:o,/tmp/mysqld.trace
此变量指示当前的调试设置。它仅适用于带有调试支持的服务器。初始值来自
--debug
服务器启动时给出的选项实例的值。全局值和会话值可以在运行时设置。设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
分配一个以当前值开头
+
或-
导致该值增加或减去当前值的值:mysql>
SET debug = 'T'; mysql>SELECT @@debug; +--------- + | @@debug | +--------- + | T | +--------- + mysql>SET debug = ' +P'; mysql>SELECT @@debug; +--------- + | @@debug | +--------- + | P:T | +--------- + mysql>SET debug = '-P'; mysql>SELECT @@debug; +--------- + | @@debug | +--------- + | T | +--------- +有关更多信息,请参见“ DBUG软件包”。
debug_sync
属性 值 系统变量 debug_sync
范围 Session 动态 是 SET_VAR
提示适用没有 类型 string 此变量是“调试同步”工具的用户界面。使用Debug Sync要求使用CMake选项配置MySQL (请参见“ MySQL源代码配置选项”)。如果未编译调试同步,则此系统变量不可用。
-DENABLE_DEBUG_SYNC=1
全局变量值是只读的,它指示是否启用该功能。默认情况下,调试Sync被禁用和值
debug_sync
ISOFF
。如果服务器开始,这里是一个超时值大于0,调试同步启用和价值是其次是信号的名字。而且,成为各个同步点的默认超时。--debug-sync-timeout=N
N
debug_sync
ON - current signal
N
会话值可以由任何用户读取,并且将具有与全局变量相同的值。会话值可以设置为控制同步点。
设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
有关“调试同步”工具以及如何使用同步点的说明,请参见《 MySQL内部知识:测试同步》。
default_authentication_plugin
属性 值 命令行格式 --default-authentication-plugin=plugin_name
系统变量 default_authentication_plugin
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 列举 默认值 caching_sha2_password
有效值 mysql_native_password
sha256_password
caching_sha2_password
默认身份验证插件。这些值是允许的:
mysql_native_password
:使用MySQL本机密码;请参见“本地可插入身份验证”。sha256_password
:使用SHA-256密码;请参见“ SHA-256可插拔身份验证”。caching_sha2_password
:使用SHA-256密码;请参见“缓存SHA-2可插拔身份验证”。
注意
在MySQL 8.0中,
caching_sha2_password
是默认的身份验证插件,而不是mysql_native_password
。有关此更改对服务器操作的影响以及服务器与客户端和连接器的兼容性的信息,请参阅caching_sha2_password作为“首选身份验证插件”。该
default_authentication_plugin
值影响服务器操作的以下方面:- 它确定服务器将哪个身份验证插件分配给创建的新帐户,
CREATE USER
以及GRANT
未明确指定身份验证插件的语句。 对于使用以下语句创建的帐户,服务器将其与默认身份验证插件关联,并为该帐户分配给定密码,并按该插件的要求进行哈希处理:
CREATE USER ...IDENTIFIED BY 'cleartext password';
default_collation_for_utf8mb4
属性 值 系统变量 default_collation_for_utf8mb4
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 有效值 utf8mb4_0900_ai_ci
utf8mb4_general_ci
供复制内部使用。该系统变量设置为
utf8mb4
字符集的默认排序规则。变量的值从主服务器复制到从属服务器,以便从属服务器可以正确地处理源于主服务器的数据,并使用不同的默认排序规则utf8mb4
。此变量主要用于支持从MySQL 5.7或更早版本的主服务器到MySQL 8.0从属服务器的复制,或使用MySQL 5.7主节点和一个或多个MySQL 8.0辅助节点的组复制。utf8mb4
在MySQL 5.7中utf8mb4_general_ci
,默认排序规则是,但是utf8mb4_0900_ai_ci
在MySQL 8.0中。该变量在MySQL 8.0之前的版本中不存在,因此,如果从站未收到该变量的值,则假定主站来自较早的版本,并将该值设置为先前的默认归类utf8mb4_general_ci
。从MySQL 8.0.18开始,设置此系统变量的会话值不再是受限制的操作。
utf8mb4
在以下语句中使用默认排序规则:SHOW COLLATION
和SHOW CHARACTER SET
。CREATE TABLE
并ALTER TABLE
具有一个CHARACTER SET utf8mb4
无COLLATION
子句的子句,用于表字符集或列字符集。CREATE DATABASE
并ALTER DATABASE
具有CHARACTER SET utf8mb4
不带COLLATION
子句的子句。- 包含不带子句形式的字符串文字的任何语句。
_utf8mb4'some text'
COLLATE
default_password_lifetime
属性 值 命令行格式 --default-password-lifetime=#
系统变量 default_password_lifetime
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 65535
此变量定义全局自动密码过期策略。默认
default_password_lifetime
值为0,这将禁用自动密码过期。如果的值为default_password_lifetime
正整数N
,则表示允许的密码生存期;否则为0。密码必须每天更改N
。使用
CREATE USER
和ALTER USER
语句的密码到期选项,可以根据需要为单个帐户覆盖全局密码到期策略。请参见“帐户密码管理”。default_storage_engine
属性 值 命令行格式 --default-storage-engine=name
系统变量 default_storage_engine
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 InnoDB
表的默认存储引擎。请参见备用存储引擎。此变量仅将存储引擎设置为永久表。要设置
TEMPORARY
表的存储引擎,请设置default_tmp_storage_engine
系统变量。要参见哪些存储引擎可用和启用,请使用
SHOW ENGINES
语句或查询INFORMATION_SCHEMA
ENGINES
表。如果在服务器启动时禁用了默认存储引擎,则必须将永久和
TEMPORARY
表的默认引擎设置为其他引擎,否则服务器将无法启动。default_table_encryption
属性 值 命令行格式 --default-table-encryption[={OFF|ON}]
介绍了 8.0.16 系统变量 default_table_encryption
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
定义在创建架构和常规表空间时不指定
ENCRYPTION
子句的默认加密设置。该
default_table_encryption
变量仅适用于用户创建的模式和常规表空间。它不控制mysql
系统表空间的加密。设置的运行时值
default_table_encryption
需要SYSTEM_VARIABLES_ADMIN
和TABLE_ENCRYPTION_ADMIN
特权,或SUPER
特权。default_table_encryption
支持SET PERSIST
和SET PERSIST_ONLY
语法。请参见“持久性系统变量”。有关更多信息,请参见为架构和常规表空间定义加密默认值。
default_tmp_storage_engine
属性 值 命令行格式 --default-tmp-storage-engine=name
系统变量 default_tmp_storage_engine
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 列举 默认值 InnoDB
TEMPORARY
表的默认存储引擎(使用创建CREATE TEMPORARY TABLE
)。要为永久表设置存储引擎,请设置default_storage_engine
系统变量。另请参阅关于该变量有关可能值的讨论。如果在服务器启动时禁用了默认存储引擎,则必须将永久和
TEMPORARY
表的默认引擎设置为其他引擎,否则服务器将无法启动。default_week_format
属性 值 命令行格式 --default-week-format=#
系统变量 default_week_format
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 7
该
WEEK()
功能要使用的默认模式值。请参见“日期和时间函数”。delay_key_write
属性 值 命令行格式 --delay-key-write[={OFF|ON|ALL}]
系统变量 delay_key_write
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 ON
有效值 ON
OFF
ALL
此变量指定如何使用延迟键写入。它仅适用于
MyISAM
表。延迟的键写入导致键缓冲区在两次写入之间不刷新。另请参见“ MyISAM启动选项”。此变量可以具有以下值之一,以影响对
DELAY_KEY_WRITE
可在CREATE TABLE
语句中使用的表选项的处理。选项 描述 OFF
DELAY_KEY_WRITE
被忽略。ON
MySQL支持语句中 DELAY_KEY_WRITE
指定的任何选项CREATE TABLE
。这是默认值。ALL
将所有新打开的表视为已将其 DELAY_KEY_WRITE
启用后创建。注意
如果将此变量设置为
ALL
,则在使用MyISAM
表时,不应使用其他程序(例如,另一个MySQL服务器或myisamchk)中的表。这样做会导致索引损坏。如果
DELAY_KEY_WRITE
为表启用了此功能,则不会在每次索引更新时为该表刷新键缓冲区,而仅在关闭表时才刷新键缓冲区。这样可以大大加快键的写入速度,但是,如果使用此功能,则应MyISAM
通过使用myisam_recover_options
系统变量集(例如myisam_recover_options='BACKUP,FORCE'
)启动服务器,以添加对所有表的自动检查。请参见“服务器系统变量”和“ MyISAM启动选项”。如果启动mysqld的使用
--skip-new
,delay_key_write
设置为OFF
。警告
如果使用启用外部锁定
--external-locking
,则无法防止使用延迟键写入的表的索引损坏。delayed_insert_limit
属性 值 命令行格式 --delayed-insert-limit=#
不推荐使用 是 系统变量 delayed_insert_limit
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 100
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
不建议使用此系统变量(因为
DELAYED
不支持插入),并且在将来的版本中将其删除。delayed_insert_timeout
属性 值 命令行格式 --delayed-insert-timeout=#
不推荐使用 是 系统变量 delayed_insert_timeout
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 300
不建议使用此系统变量(因为
DELAYED
不支持插入),并且在将来的版本中将其删除。delayed_queue_size
属性 值 命令行格式 --delayed-queue-size=#
不推荐使用 是 系统变量 delayed_queue_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1000
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
不建议使用此系统变量(因为
DELAYED
不支持插入),并且在将来的版本中将其删除。disabled_storage_engines
属性 值 命令行格式 --disabled-storage-engines=engine[,engine]...
系统变量 disabled_storage_engines
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 empty string
此变量指示哪些存储引擎不能用于创建表或表空间。例如,为防止创建新表
MyISAM
或FEDERATED
表,请在服务器选项文件中使用以下几行启动服务器:[mysqld] disabled_storage_engines="MyISAM,FEDERATED"
默认情况下
disabled_storage_engines
为空(没有禁用引擎),但是可以将其设置为一个或多个引擎的逗号分隔列表(不区分大小写)。任何在值命名的发动机不能用于创建表或表空间CREATE TABLE
或者CREATE TABLESPACE
,并且不能与使用ALTER TABLE ... ENGINE
或ALTER TABLESPACE ... ENGINE
更改现有的表或表空间的存储引擎。尝试这样做会导致ER_DISABLED_STORAGE_ENGINE
错误。disabled_storage_engines
不限制为现有的表的其它DDL语句,比如CREATE INDEX
,TRUNCATE TABLE
,ANALYZE TABLE
,DROP TABLE
,或DROP TABLESPACE
。这允许平稳过渡,以便可以使用诸如之类的方法将使用禁用引擎的现有表或表空间迁移到允许的引擎。ALTER TABLE ... ENGINE permitted_engine
允许将
default_storage_engine
或default_tmp_storage_engine
系统变量设置为已禁用的存储引擎。这可能导致应用程序行为异常或失败,尽管这在开发环境中可能是一种有用的技术,用于识别使用禁用引擎的应用程序,以便可以对其进行修改。disabled_storage_engines
被禁用,如果服务器开始的任何选项没有影响:--initialize
,--initialize-insecure
,--skip-grant-tables
。注意
设置
disabled_storage_engines
可能导致mysql_upgrade出现问题。有关详细信息,请参见“mysql_upgrade-检查和升级MySQL表”。disconnect_on_expired_password
属性 值 命令行格式 --disconnect-on-expired-password[={OFF|ON}]
系统变量 disconnect_on_expired_password
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
此变量控制服务器如何处理具有过期密码的客户端:
- 如果客户端指示它可以处理过期的密码,则的值
disconnect_on_expired_password
无关紧要。服务器允许客户端进行连接,但将其置于沙盒模式。 如果客户端未表明它可以处理过期的密码,则服务器将根据以下值来处理客户端
disconnect_on_expired_password
:- 如果
disconnect_on_expired_password
启用了:,则服务器将断开客户端连接。 - 如果
disconnect_on_expired_password
禁用了:,则服务器允许客户端连接,但将其置于沙盒模式。
- 如果
有关与过期密码处理有关的客户端和服务器设置的交互的更多信息,请参见“过期密码的服务器处理”。
- 如果客户端指示它可以处理过期的密码,则的值
div_precision_increment
属性 值 命令行格式 --div-precision-increment=#
系统变量 div_precision_increment
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 4
最低值 0
最大值 30
此变量表示位数,通过该位数可以增加对操作员执行的除法运算结果的范围
/
。默认值为4。最小值和最大值分别为0和30。以下示例说明了增加默认值的效果。mysql> SELECT 1/7; +-------- + | 1/7 | +-------- + | 0.1429 | +-------- + mysql> SET div_precision_increment = 12; mysql> SELECT 1/7; +---------------- + | 1/7 | +---------------- + | 0.142857142857 | +---------------- +
dragnet.log_error_filter_rules
属性 值 命令行格式 --dragnet.log-error-filter-rules=value
系统变量 dragnet.log_error_filter_rules
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 IF prio>=INFORMATION THEN drop. IF EXISTS source_line THEN unset source_line.
筛选器规则,用于控制
log_filter_dragnet
错误日志筛选器组件的操作。如果log_filter_dragnet
未安装,则不dragnet.log_error_filter_rules
可用。如果log_filter_dragnet
已安装但未启用,则更改dragnet.log_error_filter_rules
无效。从MySQL 8.0.12开始,可以查询
dragnet.Status
status变量以确定对的最新赋值的结果dragnet.log_error_filter_rules
。在MySQL 8.0.12之前,
dragnet.log_error_filter_rules
在运行时成功分配会产生一条注释,确认新值:mysql>
SET GLOBAL dragnet.log_error_filter_rules = 'IF prio <> 0 THEN unset prio.'; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql>SHOW WARNINGS \G *************************** 1. row *************************** Level : Note Code : 4569 Message : filter configuration accepted : SET @@GLOBAL.dragnet.log_error_filter_rules= 'IF prio!=ERROR THEN unset prio.';显示的值表示在成功解析规则集并将其编译为内部格式之后
SHOW WARNINGS
的“反编译”规范表示。从语义上讲,此规范形式与分配给的值相同dragnet.log_error_filter_rules
,但是所分配的值和规范值之间可能存在一些差异,如前面的示例所示:- 该
<>
运营商变更为!=
。 - 数字优先级0更改为相应的优先级符号
ERROR
。 - 可选空格被删除。
有关更多信息,请参见“MySQL服务器错误日志”和“错误日志组件”。
- 该
end_markers_in_json
属性 值 命令行格式 --end-markers-in-json[={OFF|ON}]
系统变量 end_markers_in_json
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
优化程序JSON输出是否应添加结束标记。参见 MySQL内部:end_markers_in_json系统变量。
eq_range_index_dive_limit
属性 值 命令行格式 --eq-range-index-dive-limit=#
系统变量 eq_range_index_dive_limit
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 200
最低值 0
最大值 4294967295
当优化程序在估计合格行的数量时,优化器应从使用索引潜水切换到索引统计信息时,此变量指示相等比较条件下的相等范围数。它适用于评估具有以下等效形式之一的表达式,其中优化器使用非唯一索引来查找
col_name
值:col_name
IN (val1, ..., valN) col_name = val1 OR ... OR col_name = valN在两种情况下,表达式都包含
N
相等范围。优化器可以使用索引下降或索引统计信息进行行估计。如果eq_range_index_dive_limit
大于0,则在存在eq_range_index_dive_limit
相等范围或更多相等范围的情况下,优化器将使用现有索引统计信息,而不是索引下降。因此,要允许在最大N
相等范围内使用索引下降,请将其设置eq_range_index_dive_limit
为N
+1。要禁用索引统计信息,并且始终使用索引下降,而无论如何将其N
设置eq_range_index_dive_limit
为0。有关更多信息,请参见多值比较的相等范围优化。
要更新表索引统计信息以获得最佳估计值,请使用
ANALYZE TABLE
。error_count
由最后一条生成消息的语句导致的错误数。该变量是只读的。请参见“ SHOW ERRORS语句”。
event_scheduler
属性 值 命令行格式 --event-scheduler[=value]
系统变量 event_scheduler
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 ON
有效值 ON
OFF
DISABLED
此变量启用或禁用以及启动或停止事件调度程序。可能的状态值
ON
,OFF
和DISABLED
,默认为OFF
。启用事件计划程序OFF
与禁用事件计划程序不同,后者需要将状态设置为DISABLED
。在“事件调度程序配置”中将更详细地讨论此变量及其对事件调度程序操作的影响。explicit_defaults_for_timestamp
属性 值 命令行格式 --explicit-defaults-for-timestamp[={OFF|ON}]
不推荐使用 是 系统变量 explicit_defaults_for_timestamp
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
此系统变量确定服务器是否对列中的默认值和
NULL
-value处理启用某些非标准行为TIMESTAMP
。默认情况下explicit_defaults_for_timestamp
处于启用状态,它将禁用非标准行为。禁用会explicit_defaults_for_timestamp
导致警告。从MySQL 8.0.18开始,设置此系统变量的会话值不再是受限制的操作。
如果
explicit_defaults_for_timestamp
禁用,则服务器将启用非标准行为并按TIMESTAMP
如下方式处理列:TIMESTAMP
未使用NULL
属性明确声明的列将使用属性自动声明NOT NULL
。为此类列分配值NULL
是允许的,并将该列设置为当前时间戳。TIMESTAMP
如果未使用NULL
属性或显式DEFAULT
或ON UPDATE
属性显式声明表中的第一列,则使用DEFAULT CURRENT_TIMESTAMP
和ON UPDATE CURRENT_TIMESTAMP
属性自动声明表中的第一列。TIMESTAMP
第一个列之后的列(如果未使用NULL
属性或显式DEFAULT
属性显式声明)将自动声明为DEFAULT '0000-00-00 00:00:00'
(“零”时间戳)。对于未为此类列指定显式值的插入行,将为其分配列,'0000-00-00 00:00:00'
并且不会发生警告。根据是否
NO_ZERO_DATE
启用严格SQL模式或 SQL模式,默认值'0000-00-00 00:00:00'
可能无效。请注意,TRADITIONAL
SQL模式包括严格模式和NO_ZERO_DATE
。请参见“服务器SQL模式”。
刚刚描述的非标准行为已被弃用,并将在将来的MySQL版本中删除。
如果
explicit_defaults_for_timestamp
启用,则服务器将禁用非标准行为并按以下方式处理TIMESTAMP
列:- 无法为
TIMESTAMP
列分配值NULL
来将其设置为当前时间戳。要分配当前时间戳,请将该列设置为,CURRENT_TIMESTAMP
或将其设置为同义词NOW()
。 TIMESTAMP
未使用NOT NULL
属性明确声明的列将自动使用NULL
属性和允许NULL
值声明。为此类列分配一个值,NULL
将其设置为NULL
,而不是当前时间戳。TIMESTAMP
使用NOT NULL
属性声明的列不允许使用NULL
值。对于NULL
为此类列指定的插入,结果要么是单行插入错误,要么是启用了严格SQL模式,要么'0000-00-00 00:00:00'
是为禁用了严格SQL模式的多行插入而插入的。在任何情况下都不会为该列分配将其NULL
设置为当前时间戳的值。TIMESTAMP
使用该NOT NULL
属性显式声明但不使用显式DEFAULT
属性的列将被视为没有默认值。对于没有为该列指定显式值的插入行,结果取决于SQL模式。如果启用了严格的SQL模式,则会发生错误。如果未启用严格的SQL模式,则使用隐式默认值声明该列,'0000-00-00 00:00:00'
并出现警告。这类似于MySQL处理其他时间类型(例如)的方式DATETIME
。- 不会
TIMESTAMP
使用DEFAULT CURRENT_TIMESTAMP
或ON UPDATE CURRENT_TIMESTAMP
属性自动声明任何列。这些属性必须明确指定。 - 所述第一
TIMESTAMP
表中的列不从不同的处理TIMESTAMP
之后的第一个列。
如果
explicit_defaults_for_timestamp
在服务器启动时被禁用,则此警告将显示在错误日志中:[Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
如警告所示,要禁用不建议使用的非标准行为,请
explicit_defaults_for_timestamp
在服务器启动时启用系统变量。注意
explicit_defaults_for_timestamp
本身已被弃用,因为它的唯一目的是允许控制TIMESTAMP
将在以后的MySQL版本中删除的已弃用行为。当这些行为explicit_defaults_for_timestamp
消失时,将没有任何目的,也将被删除。有关更多信息,请参见“ TIMESTAMP和DATETIME的自动初始化和更新”。
external_user
属性 值 系统变量 external_user
范围 Session 动态 没有 SET_VAR
提示适用没有 类型 string 认证过程中使用的外部用户名,由用于认证客户端的插件设置。使用本地(内置)MySQL身份验证,或者如果插件未设置值,则此变量为
NULL
。请参见“代理用户”。flush
属性 值 命令行格式 --flush[={OFF|ON}]
系统变量 flush
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果为
ON
,则服务器在每个SQL语句之后将所有更改刷新(同步)到磁盘。通常,MySQL仅在每个SQL语句之后才将所有更改写入磁盘,并让操作系统处理与磁盘的同步。请参见第B.4.3.3节“如果MySQL继续崩溃,该怎么办”。ON
如果使用该选项启动mysqld,则此变量设置为--flush
。注意
如果
flush
启用,则值flush_time
无关紧要,并且更改flush_time
对刷新行为没有影响。flush_time
属性 值 命令行格式 --flush-time=#
系统变量 flush_time
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
如果将此值设置为非零值,则
flush_time
每秒钟关闭所有表以释放资源并将未刷新的数据同步到磁盘。仅在资源最少的系统上最好使用此选项。注意
如果
flush
启用,则值flush_time
无关紧要,并且更改flush_time
对刷新行为没有影响。foreign_key_checks
属性 值 系统变量 foreign_key_checks
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 ON
如果设置为1(默认值),则检查外键约束。如果设置为0,将忽略外键约束,但有一些例外。重新创建被删除的表时,如果表定义不符合引用该表的外键约束,则将返回错误。同样,
ALTER TABLE
如果外键定义格式不正确,则操作会返回错误。有关更多信息,请参见“外键约束”。设置此变量对
NDB
表的作用与对表的作用相同InnoDB
。通常,您可以在正常操作期间将此设置保持启用状态,以加强参照完整性。禁用外键检查对于InnoDB
以不同于其父/子关系所需顺序的顺序重新加载表很有用。请参见“外键约束”。设置
foreign_key_checks
为0还会影响数据定义语句:DROP SCHEMA
即使架构包含包含具有该架构之外的DROP TABLE
表所引用的外键的表,也将丢弃该架构;并删除具有其他表所引用的外键的表。注意
设置
foreign_key_checks
为1不会触发对现有表数据的扫描。因此,foreign_key_checks = 0
将不验证添加到表中的行的一致性。即使使用,也不允许删除外键约束所需的索引
foreign_key_checks=0
。在删除索引之前,必须删除外键约束。ft_boolean_syntax
属性 值 命令行格式 --ft-boolean-syntax=name
系统变量 ft_boolean_syntax
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 +-><()~*:""&|
使用进行布尔布尔全文搜索支持的运算符列表
IN BOOLEAN MODE
。请参见“布尔全文搜索”。默认变量值为
' +-><()~*:""&|'
。更改值的规则如下:- 运算符功能由字符串中的位置确定。
- 替换值必须是14个字符。
- 每个字符必须是ASCII非字母数字字符。
- 第一个或第二个字符必须为空格。
- 除位置11和12处的引用引号运算符外,不允许重复。这两个字符不需要相同,但它们可能是唯一的两个。
- 位置10,13,和14(在缺省情况下被设定为
:
,&
和|
)被保留用于未来的扩展。
ft_max_word_len
属性 值 命令行格式 --ft-max-word-len=#
系统变量 ft_max_word_len
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 最低值 10
MyISAM
FULLTEXT
索引中要包含的单词的最大长度。注意
FULLTEXT
MyISAM
更改此变量后,必须在表上重建索引。使用。REPAIR TABLE tbl_name QUICK
ft_min_word_len
属性 值 命令行格式 --ft-min-word-len=#
系统变量 ft_min_word_len
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 4
最低值 1
要包含在
MyISAM
FULLTEXT
索引中的单词的最小长度。注意
FULLTEXT
MyISAM
更改此变量后,必须在表上重建索引。使用。REPAIR TABLE tbl_name QUICK
ft_query_expansion_limit
属性 值 命令行格式 --ft-query-expansion-limit=#
系统变量 ft_query_expansion_limit
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 20
最低值 0
最大值 1000
用于使用进行全文搜索的顶部匹配项的数量
WITH QUERY EXPANSION
。ft_stopword_file
属性 值 命令行格式 --ft-stopword-file=file_name
系统变量 ft_stopword_file
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 从中读取用于在
MyISAM
表上进行全文搜索的停用词列表的文件。除非指定了绝对路径名以指定其他目录,否则服务器将在数据目录中查找文件。文件中的所有单词都被使用;评论不被接受。默认情况下,使用内置的停用词列表(如storage/myisam/ft_static.c
文件中所定义)。将此变量设置为空字符串(''
)将禁用停用词过滤。另请参见“全文停用词”。注意
FULLTEXT
MyISAM
更改此变量或停用词文件的内容后,必须在表上重建索引。使用。REPAIR TABLE tbl_name QUICK
general_log
属性 值 命令行格式 --general-log[={OFF|ON}]
系统变量 general_log
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
是否启用一般查询日志。该值可以是0(或
OFF
)以禁用日志,也可以是1(或ON
)以启用日志。日志输出的目的地由log_output
系统变量控制;如果该值为NONE
,即使启用了日志,也不会写入任何日志条目。general_log_file
属性 值 命令行格式 --general-log-file=file_name
系统变量 general_log_file
范围 Global 动态 是 SET_VAR
提示适用没有 类型 文件名 默认值 host_name.log
常规查询日志文件的名称。默认值为
host_name.log
,但可以使用该--general_log_file
选项更改初始值。generated_random_password_length
属性 值 命令行格式 --generated-random-password-length=#
介绍了 8.0.18 系统变量 generated_random_password_length
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 20
最低值 5
最大值 255
最大字符数为生成的随机密码允许的
CREATE USER
,ALTER USER
和SET PASSWORD
语句。有关更多信息,请参见随机密码生成。group_concat_max_len
属性 值 命令行格式 --group-concat-max-len=#
系统变量 group_concat_max_len
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 1024
最低值 4
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
该
GROUP_CONCAT()
函数允许的最大结果长度(以字节为单位)。默认值为1024。have_compress
YES
如果zlib
压缩库可用于服务器(NO
如果没有)。如果不是,则不能使用COMPRESS()
和UNCOMPRESS()
功能。have_dynamic_loading
YES
如果mysqld支持动态加载插件,NO
则不支持。如果值为NO
,则不能使用诸如--plugin-load
在服务器启动INSTALL PLUGIN
时加载插件或在运行时加载插件的语句之类的选项。have_geometry
YES
如果服务器支持空间数据类型,NO
则不支持。have_openssl
此变量是的别名
have_ssl
。have_profiling
YES
如果存在语句分析功能,NO
则不存在。如果存在,则profiling
系统变量控制是启用还是禁用此功能。请参见“ SHOW PROFILES语句”。不建议使用此变量,并将在将来的MySQL版本中将其删除。
have_query_cache
查询缓存已在MySQL 8.0.3中删除。
have_query_cache
不推荐使用,其值始终为NO
,并将在以后的MySQL版本中删除。have_rtree_keys
YES
如果RTREE
索引可用,NO
则不可用。(这些用于MyISAM
表中的空间索引。)have_ssl
属性 值 系统变量 have_ssl
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 有效值 YES
(提供SSL支持)DISABLED
(SSL支持已编译到服务器中,但是未使用必要的选项启动服务器来启用它)YES
如果mysqld支持SSL连接,DISABLED
则服务器是使用SSL支持编译的,但未使用适当的选项启动。有关更多信息,请参见“从源代码安装MySQL”。--ssl-xxx
have_statement_timeout
属性 值 系统变量 have_statement_timeout
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 语句执行超时功能是否可用(请参阅“语句执行时间优化器提示”)。该值可以是
NO
此功能使用的后台线程无法初始化的情况。have_symlink
YES
如果启用了符号链接支持,NO
则未启用。在Unix上,这是必需的,以支持DATA DIRECTORY
和INDEX DIRECTORY
表选项。如果使用该--skip-symbolic-links
选项启动服务器,则值为DISABLED
。在Windows上,此变量没有意义。
注意
符号链接支持以及
--symbolic-links
控制它的选项已被弃用,并将在以后的MySQL版本中删除。此外,默认情况下禁用此选项。相关的have_symlink
系统变量也已被弃用,并将在MySQL的未来版本中删除。histogram_generation_max_mem_size
属性 值 命令行格式 --histogram-generation-max-mem-size=#
系统变量 histogram_generation_max_mem_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 20000000
最低值 1000000
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
可用于生成直方图统计信息的最大内存量。请参见“优化器统计”和“ ANALYZE TABLE语句”。
设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
host_cache_size
属性 值 命令行格式 --host-cache-size=#
系统变量 host_cache_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 -1
(表示自动调整大小;不分配此文字值)最低值 0
最大值 65536
此变量控制主机缓存的大小,以及
host_cache
公开缓存内容的“性能模式”表的大小。将大小设置为0将禁用主机缓存。在运行时更改缓存大小会导致隐式FLUSH HOSTS
操作,该操作将清除主机缓存,截断host_cache
表并取消阻止所有被阻止的主机。默认值自动调整为128,最大值
max_connections
为500时加1,max_connections
值超过500时每增加20时加1,上限为2000。使用该
--skip-host-cache
选项类似于将host_cache_size
系统变量设置为0,但host_cache_size
更灵活,因为它还可以在运行时(不仅在服务器启动时)用于调整大小,启用和禁用主机缓存。使用启动服务器--skip-host-cache
并不能防止更改的值host_cache_size
,但是这种更改无效,即使host_cache_size
在运行时将其设置为大于0,也不会重新启用缓存。有关主机缓存如何工作的更多信息,请参见“ DNS查找优化和主机缓存”。
hostname
属性 值 系统变量 hostname
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 服务器在启动时将此变量设置为服务器主机名。根据RFC 1034,从MySQL 8.0.17开始,最大长度为255个字符,在此之前为60个字符。
identity
此变量是变量的同义词
last_insert_id
。存在它是为了与其他数据库系统兼容。您可以使用读取其值SELECT @@identity
,并使用进行设置SET identity
。init_connect
属性 值 命令行格式 --init-connect=name
系统变量 init_connect
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 服务器为每个连接的客户端执行的字符串。该字符串由一个或多个SQL语句组成,以分号字符分隔。
对于具有
CONNECTION_ADMIN
或SUPER
特权的用户,init_connect
不会执行的内容。这样做是为了使的错误值init_connect
不会阻止所有客户端连接。例如,该值可能包含具有语法错误的语句,从而导致客户端连接失败。init_connect
对具有CONNECTION_ADMIN
或SUPER
特权的用户不执行将使他们能够打开连接并固定init_connect
值。init_connect
密码过期的所有客户端用户都将跳过执行。这样做是因为这样的用户无法执行任意语句,因此init_connect
执行将失败,从而使客户端无法连接。跳过init_connect
执行使用户可以连接和更改密码。服务器将丢弃由值产生的语句产生的任何结果集
init_connect
。information_schema_stats_expiry
属性 值 命令行格式 --information-schema-stats-expiry=#
系统变量 information_schema_stats_expiry
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 86400
最低值 0
最大值 31536000
一些
INFORMATION_SCHEMA
表包含提供表统计信息的列:STATISTICS.CARDINALITY TABLES.AUTO_INCREMENT TABLES.AVG_ROW_LENGTH TABLES.CHECKSUM TABLES.CHECK_TIME TABLES.CREATE_TIME TABLES.DATA_FREE TABLES.DATA_LENGTH TABLES.INDEX_LENGTH TABLES.MAX_DATA_LENGTH TABLES.TABLE_ROWS TABLES.UPDATE_TIME
这些列表示动态表元数据。即,信息随着表内容的改变而改变。
默认情况下,查询列时,MySQL从
mysql.index_stats
和mysql.table_stats
字典表中检索这些列的缓存值,这比直接从存储引擎中检索统计信息更为有效。如果缓存的统计信息不可用或已过期,MySQL将从存储引擎中检索最新的统计信息并将其缓存在mysql.index_stats
和mysql.table_stats
字典表中。后续查询将检索缓存的统计信息,直到缓存的统计信息到期为止。该
information_schema_stats_expiry
会话变量定义缓存统计到期之前的一段时间。默认值为86400秒(24小时),但是时间段可以延长到一年。要随时更新给定表的缓存值,请使用
ANALYZE TABLE
。要始终直接从存储引擎检索最新统计信息并绕过缓存的值,请设置
information_schema_stats_expiry
为0
。在以下情况下,查询统计信息列不会在
mysql.index_stats
和mysql.table_stats
字典表中存储或更新统计信息:- 缓存的统计信息尚未过期时。
- 当
information_schema_stats_expiry
设置为0。 - 当服务器在启动
read_only
,super_read_only
,transaction_read_only
,或innodb_read_only
模式。 - 当查询还获取性能架构数据时。
information_schema_stats_expiry
是一个会话变量,每个客户端会话都可以定义自己的到期值。从存储引擎检索并由一个会话缓存的统计信息可用于其他会话。有关相关信息,请参见“优化INFORMATION_SCHEMA查询”。
init_file
属性 值 命令行格式 --init-file=file_name
系统变量 init_file
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 如果指定,此变量将命名一个文件,该文件包含要在启动过程中读取和执行的SQL语句。在MySQL 8.0.18之前,每个语句必须在一行上,并且不应包含注释。从MySQL 8.0.18开始,文件中语句的可接受格式已扩展为支持以下结构:
delimiter ;
,将语句定界符设置为;
字符。delimiter $$
,将语句定界符设置为$$
字符序列。- 同一行上的多个语句,由当前定界符分隔。
- 多行语句。
- 从
#
字符到行尾的注释。 - 从
--
序列到行尾的注释。 - 从一个
/*
序列到以下*/
序列(包括多行)的C样式注释。 - 用单引号(
'
)或双引号("
)字符括起来的多行字符串文字。
如果服务器使用
--initialize
或--initialize-insecure
选项启动,则它将在引导模式下运行,并且某些功能不可用,该功能限制了文件中允许的语句。这些语句包括与帐户管理(例如CREATE USER
或GRANT
),复制和全局事务标识符有关的语句。请参见“使用全局事务标识符进行复制”。innodb_xxx
InnoDB
系统变量在“ InnoDB启动选项和系统变量”中列出。这些变量控制表的存储,内存使用和I / O模式的许多方面InnoDB
,并且由于它InnoDB
是默认存储引擎,因此尤其重要。insert_id
插入值时,以下
INSERT
或ALTER TABLE
语句要使用的AUTO_INCREMENT
值。这主要与二进制日志一起使用。interactive_timeout
属性 值 命令行格式 --interactive-timeout=#
系统变量 interactive_timeout
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 28800
最低值 1
服务器在关闭交互式连接之前等待活动的秒数。交互式客户端定义为使用
CLIENT_INTERACTIVE
选项的客户端mysql_real_connect()
。另请参阅wait_timeout
。internal_tmp_disk_storage_engine
属性 值 命令行格式 --internal-tmp-disk-storage-engine=#
已移除 8.0.16 系统变量 internal_tmp_disk_storage_engine
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 INNODB
有效值 MYISAM
INNODB
重要
在MySQL 8.0.16和更高版本中,磁盘上的内部临时表始终使用
InnoDB
存储引擎。从MySQL 8.0.16开始,此变量已被删除,因此不再受支持。在MySQL 8.0.16之前,此变量确定用于磁盘内部临时表的存储引擎(请参见磁盘内部临时表的存储引擎)。允许的值为
MYISAM
和INNODB
(默认值)。internal_tmp_mem_storage_engine
属性 值 命令行格式 --internal-tmp-mem-storage-engine=#
系统变量 internal_tmp_mem_storage_engine
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 列举 默认值 TempTable
有效值 TempTable
MEMORY
内存中内部临时表的存储引擎(请参见“ MySQL中的内部临时表使用”)。允许的值为
TempTable
(默认值)和MEMORY
。所述优化器使用由限定的存储引擎
internal_tmp_mem_storage_engine
在存储器内部临时表。join_buffer_size
属性 值 命令行格式 --join-buffer-size=#
系统变量 join_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 262144
最低值 128
最大值(其他64位平台) 18446744073709547520
最大值(其他32位平台) 4294967295
最大值(Windows) 4294967295
用于普通索引扫描,范围索引扫描和不使用索引的联接的缓冲区的最小大小,从而执行全表扫描。通常,获得快速联接的最佳方法是添加索引。
join_buffer_size
当无法添加索引时,增加的值以获得更快的完全连接。为两个表之间的每个完全连接分配一个连接缓冲区。对于不使用索引的多个表之间的复杂联接,可能需要多个联接缓冲区。除非使用“块嵌套循环”或“批处理密钥访问”算法,否则将缓冲区设置为大于容纳每个匹配行所需的缓冲区不会有任何好处,并且所有联接至少分配最小大小,因此在将此变量设置为全球价值巨大。最好保持全局设置较小,并且仅在进行大型联接的会话中将会话设置更改为较大的值,或者使用
SET_VAR
优化程序提示在每个查询的基础上更改设置(请参见“优化器提示”)。如果全局大小大于使用它的大多数查询所需的大小,则内存分配时间可能会导致性能大幅下降。当使用“块嵌套循环”时,较大的连接缓冲区可能是有益的,直到第一个表中所有行的所有必需列都存储在连接缓冲区中为止。这取决于查询;最佳大小可能小于保存第一个表中的所有行。
使用批处理密钥访问时,的值
join_buffer_size
定义在对存储引擎的每个请求中该批密钥的大小。缓冲区越大,对连接操作右侧表的顺序访问就越多,这可以显着提高性能。默认值为256KB。的最大允许设置为
join_buffer_size
4GB-1。对于64位平台,允许使用更大的值(64位Windows除外,在Windows中,较大的值会被警告截断为4GB-1)。有关联接缓冲的更多信息,请参见“嵌套循环联接算法”。有关批处理密钥访问的信息,请参见“块嵌套循环和批处理密钥访问联接”。
keep_files_on_create
属性 值 命令行格式 --keep-files-on-create[={OFF|ON}]
系统变量 keep_files_on_create
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果
MyISAM
创建的表没有DATA DIRECTORY
选项,.MYD
则在数据库目录中创建文件。默认情况下,如果在这种情况下MyISAM
找到现有.MYD
文件,它将覆盖它。这同样适用于.MYI
对没有创建的表文件INDEX DIRECTORY
选项。若要抑制此行为,请将keep_files_on_create
变量设置为ON
(1),在这种情况下MyISAM
不会覆盖现有文件,而是返回错误。默认值为OFF
(0)。如果
MyISAM
使用DATA DIRECTORY
或INDEX DIRECTORY
选项创建表,并且找到现有文件.MYD
或.MYI
文件,则MyISAM始终返回错误。它不会覆盖指定目录中的文件。key_buffer_size
属性 值 命令行格式 --key-buffer-size=#
系统变量 key_buffer_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8388608
最低值 8
最大值(64位平台) OS_PER_PROCESS_LIMIT
最大值(32位平台) 4294967295
MyISAM
表的索引块被缓冲并由所有线程共享。key_buffer_size
是用于索引块的缓冲区的大小。密钥缓冲区也称为密钥缓存。key_buffer_size
在32位平台上,最大允许设置为 4GB-1。对于64位平台,允许使用更大的值。有效的最大大小可能会更小,具体取决于您的可用物理RAM以及操作系统或硬件平台施加的每个进程RAM限制。此变量的值指示请求的内存量。在内部,服务器会分配尽可能多的内存(最多达到此数量),但实际分配的内存可能会更少。您可以增加该值,以便对所有读取和多次写入获得更好的索引处理。在主要功能是使用以下命令运行MySQL的系统上
MyISAM
存储引擎中,此变量可接受的值为计算机总内存的25%。但是,您应该注意,如果将该值设置得太大(例如,超过计算机总内存的50%),则系统可能会开始分页并变得非常慢。这是因为MySQL依赖操作系统来执行文件系统缓存以进行数据读取,因此您必须为文件系统缓存留出一些空间。除了之外,您还应该考虑可能使用的任何其他存储引擎的内存要求MyISAM
。为了在同时写入多行时提高速度,请使用
LOCK TABLES
。请参见“优化SQL语句”。您可以通过发出检查键值缓冲区的性能
SHOW STATUS
声明和检查Key_read_requests
,Key_reads
,Key_write_requests
,和Key_writes
状态变量。(请参见“ SHOW语句”。)该Key_reads/Key_read_requests
比率通常应小于0.01。Key_writes/Key_write_requests
如果您主要使用更新和删除操作,则该比率通常接近1;但是如果您倾向于同时影响多个行的更新操作或使用DELAY_KEY_WRITE
table选项,则该比率可能会小得多。可以
key_buffer_size
结合Key_blocks_unused
状态变量和缓冲区块大小来确定使用中的关键缓冲区的比例,这可以从key_cache_block_size
系统变量中获得:1 - ((Key_blocks_unused * key_cache_block_size) / key_buffer_size)
该值是一个近似值,因为密钥缓冲区中的某些空间是在内部为管理结构分配的。影响这些结构的开销量的因素包括块大小和指针大小。随着块大小的增加,丢失的关键缓冲区所占百分比趋于减少。较大的块导致较少的读取操作(因为每次读取获得更多的键),但是相反,未检查的键的读取增加(如果不是块中的所有键都与查询相关)。
可以创建多个
MyISAM
密钥缓存。4GB的大小限制单独适用于每个缓存,而不是一个组。请参见“ MyISAM密钥缓存”。key_cache_age_threshold
属性 值 命令行格式 --key-cache-age-threshold=#
系统变量 key_cache_age_threshold
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 300
最低值 100
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
此值控制从键高速缓存的热子列表到热子列表的缓冲区降级。较低的值会导致降级更快地发生。最小值是100。默认值是300。请参见“ MyISAM密钥缓存”。
key_cache_block_size
属性 值 命令行格式 --key-cache-block-size=#
系统变量 key_cache_block_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1024
最低值 512
最大值 16384
密钥缓存中块的字节大小。默认值为1024。请参见“ MyISAM密钥缓存”。
key_cache_division_limit
属性 值 命令行格式 --key-cache-division-limit=#
系统变量 key_cache_division_limit
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 100
最低值 1
最大值 100
关键高速缓存缓冲区列表的热和热子列表之间的划分点。该值是用于热子列表的缓冲区列表的百分比。允许的值范围是1到100。默认值是100。请参见“ MyISAM密钥缓存”。
large_files_support
属性 值 系统变量 large_files_support
范围 Global 动态 没有 SET_VAR
提示适用没有 mysqld是否使用大文件支持选项进行编译。
large_pages
属性 值 命令行格式 --large-pages[={OFF|ON}]
系统变量 large_pages
范围 Global 动态 没有 SET_VAR
提示适用没有 特定于平台 Linux 类型 布尔型 默认值 OFF
是否启用大页面支持(通过该
--large-pages
选项)。请参见“启用大页面支持”。large_page_size
属性 值 系统变量 large_page_size
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 0
如果启用了大页面支持,则会显示内存页面的大小。大内存页面仅在Linux上受支持;在其他平台上,此变量的值始终为0。请参见“启用大页面支持”。
last_insert_id
要从返回的值
LAST_INSERT_ID()
。当您LAST_INSERT_ID()
在更新表的语句中使用时,它存储在二进制日志中。设置此变量不会更新mysql_insert_id()
C API函数返回的值。lc_messages
属性 值 命令行格式 --lc-messages=name
系统变量 lc_messages
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 en_US
用于错误消息的语言环境。默认值为
en_US
。服务器将参数转换为语言名称,并将其与的值组合lc_messages_dir
以产生错误消息文件的位置。请参见“设置错误消息语言”。lc_messages_dir
属性 值 命令行格式 --lc-messages-dir=dir_name
系统变量 lc_messages_dir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 错误消息所在的目录。服务器使用该值和的值
lc_messages
来生成错误消息文件的位置。请参见“设置错误消息语言”。lc_time_names
属性 值 命令行格式 --lc-time-names=value
系统变量 lc_time_names
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 此变量指定控制显示日期和月份名称及缩写的语言的语言环境。此变量影响从输出
DATE_FORMAT()
,DAYNAME()
和MONTHNAME()
功能。语言环境名称是POSIX样式的值,例如'ja_JP'
或'pt_BR'
。默认值'en_US'
与系统的区域设置无关。有关更多信息,请参见“ MySQL服务器区域设置支持”。license
属性 值 系统变量 license
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 GPL
服务器拥有的许可证类型。
local_infile
属性 值 命令行格式 --local-infile[={OFF|ON}]
系统变量 local_infile
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量控制语句的服务器端
LOCAL
功能LOAD DATA
。根据local_infile
设置,服务器会拒绝或允许已LOCAL
在客户端启用的客户端加载本地数据。要明确原因服务器拒绝或允许
LOAD DATA LOCAL
语句(不管有客户程序和库在构建时或运行时配置),启动mysqld的与local_infile
分别禁用或启用。local_infile
也可以在运行时设置。有关更多信息,请参见“ LOAD DATA LOCAL的安全性问题”。lock_wait_timeout
属性 值 命令行格式 --lock-wait-timeout=#
系统变量 lock_wait_timeout
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 31536000
最低值 1
最大值 31536000
此变量指定尝试获取元数据锁定的超时(以秒为单位)。允许的值范围是1到31536000(1年)。默认值为31536000。
此超时适用于所有使用元数据锁的语句。这些措施包括对表,视图,存储过程和存储函数DML和DDL操作,以及
LOCK TABLES
,FLUSH TABLES WITH READ LOCK
和HANDLER
语句。此超时不适用于对
mysql
数据库中系统表的隐式访问,例如由GRANT
或REVOKE
语句修改的授权表或表记录语句。超时的确适用于直接访问的系统表,例如使用SELECT
或UPDATE
。超时值分别适用于每次元数据锁定尝试。一个给定的语句可能需要多个锁,因此该语句可能会
lock_wait_timeout
在报告超时错误之前比该值阻塞更长的时间。发生锁定超时时,ER_LOCK_WAIT_TIMEOUT
将报告。lock_wait_timeout
还定义了LOCK INSTANCE FOR BACKUP
语句放弃放弃之前等待锁的时间。locked_in_memory
属性 值 系统变量 locked_in_memory
范围 Global 动态 没有 SET_VAR
提示适用没有 无论mysqld的被锁在内存
--memlock
。log_error
属性 值 命令行格式 --log-error[=file_name]
系统变量 log_error
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 默认错误日志目标。如果目标是控制台,则值为
stderr
。否则,目标是文件,log_error
值是文件名。请参见“MySQL服务器错误日志”。log_error_services
属性 值 命令行格式 --log-error-services=value
系统变量 log_error_services
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 log_filter_internal; log_sink_internal
启用错误日志记录的组件。该变量可以包含具有0、1或许多元素的列表。在后一种情况下,元素可以用分号或(从MySQL 8.0.12开始)逗号分隔,并可选地后跟空格。给定的设置不能同时使用分号和逗号分隔符。组件顺序很重要,因为服务器按照列出的顺序执行组件。该
log_error_services
值中命名的任何可加载(非内置)组件都必须首先安装INSTALL COMPONENT
。有关更多信息,请参见“MySQL服务器错误日志”。log_error_suppression_list
属性 值 命令行格式 --log-error-suppression-list=value
介绍了 8.0.13 系统变量 log_error_suppression_list
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 empty string
该
log_error_suppression_list
系统变量适用于用于错误日志,并指定其当它们的优先级发生的事件打压的事件WARNING
或INFORMATION
。例如,如果某种特定类型的警告由于频繁发生但不被关注而在错误日志中被认为是不希望的“噪音”,则可以将其抑制。此变量影响log_filter_internal
错误日志过滤器组件执行的过滤,该组件默认情况下处于启用状态(请参见“MySQL服务器错误日志”)。如果log_filter_internal
禁用,log_error_suppression_list
则无效。该
log_error_suppression_list
值可以是无抑制的空字符串,也可以是一个或多个逗号分隔值的列表,这些值指示要抑制的错误代码。错误代码可以以符号或数字形式指定。可以指定带或不带MY-
前缀的数字代码。数字部分中的前导零并不重要。允许的代码格式示例:ER_SERVER_SHUTDOWN_COMPLETE MY-000031 000031 MY-31 31
从可读性和可移植性的角度来看,符号值优于数字值。有关允许的错误符号和数字的信息,请参见第B.3节“错误消息参考”。
log_error_suppression_list
结合的效果log_error_verbosity
。log_error_verbosity
属性 值 命令行格式 --log-error-verbosity=#
系统变量 log_error_verbosity
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 2
最低值 1
最大值 3
该
log_error_verbosity
系统变量指定用于处理用于错误日志事件的详细程度。此变量影响log_filter_internal
错误日志过滤器组件执行的过滤,该组件默认情况下处于启用状态(请参见“MySQL服务器错误日志”)。如果log_filter_internal
禁用,log_error_verbosity
则无效。用于错误日志事件具有的优先级
ERROR
,WARNING
或INFORMATION
。log_error_verbosity
根据允许将消息写入日志的优先级控制详细程度,如下表所示。允许的邮件优先级 log_error_verbosity值 ERROR
1个 ERROR
,WARNING
2 ERROR
,WARNING
,INFORMATION
3 还有一个优先级
SYSTEM
。无论log_error_verbosity
值如何,有关非错误情况的系统消息都会打印到错误日志中。这些消息包括启动和关闭消息,以及对设置的一些重大更改。log_error_verbosity
结合的效果log_error_suppression_list
。log_output
属性 值 命令行格式 --log-output=name
系统变量 log_output
范围 Global 动态 是 SET_VAR
提示适用没有 类型 组 默认值 FILE
有效值 TABLE
FILE
NONE
常规查询日志和慢速查询日志输出的一个或多个目标。该值是一个列表中的一个或多种选自以下逗号分隔的话
TABLE
,FILE
和NONE
。TABLE
选择记录到系统架构中的general_log
和slow_log
表mysql
。FILE
选择记录日志文件。NONE
禁用日志记录。如果NONE
值中存在,则它优先于存在的其他任何单词。TABLE
并且FILE
可以同时选择两个日志输出目标。该变量选择日志输出目标,但不启用日志输出。为此,请启用
general_log
和slow_query_log
系统变量。对于FILE
日志记录,general_log_file
和slow_query_log_file
变量确定日志文件的位置。有关更多信息,请参见“选择常规查询日志和慢查询日志输出目的地”。log_queries_not_using_indexes
属性 值 命令行格式 --log-queries-not-using-indexes[={OFF|ON}]
系统变量 log_queries_not_using_indexes
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果在启用慢查询日志的情况下启用此变量,则会记录预期将检索所有行的查询。请参见“MySQL服务器慢查询日志”。此选项不一定意味着不使用索引。例如,使用完全索引扫描的查询使用索引,但由于索引不会限制行数,因此将记录日志。
log_raw
属性 值 命令行格式 --log-raw[={OFF|ON}]
系统变量(>= 8.0.19) log_raw
范围(>= 8.0.19) Global 动态(>= 8.0.19) 是 SET_VAR
提示适用(>= 8.0.19)没有 类型 布尔型 默认值 OFF
所述
log_raw
系统变量初始设置为的值--log-raw
的选择。有关更多信息,请参见该选项的描述。也可以在运行时设置系统变量以更改密码屏蔽行为。log_slow_admin_statements
属性 值 命令行格式 --log-slow-admin-statements[={OFF|ON}]
系统变量 log_slow_admin_statements
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
在写入慢速查询日志的语句中包括慢速管理语句。行政陈述包括
ALTER TABLE
,ANALYZE TABLE
,CHECK TABLE
,CREATE INDEX
,DROP INDEX
,OPTIMIZE TABLE
,和REPAIR TABLE
。log_slow_extr
属性 值 命令行格式 --log-slow-extra[={OFF|ON}]
介绍了 8.0.14 系统变量 log_slow_extr
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果启用了慢查询日志,并且输出目标包括
FILE
,则服务器会将其他字段写入日志文件行,以提供有关慢语句的信息。请参见“MySQL服务器慢查询日志”。TABLE
输出不受影响。log_syslog
属性 值 命令行格式 --log-syslog[={OFF|ON}]
不推荐使用 是(已在8.0.13中删除) 系统变量 log_syslog
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
(启用将错误日志记录到系统日志时)在MySQL 8.0之前,此变量控制是否对系统日志(Windows以及
syslog
Unix和类似Unix的系统上的事件日志)执行错误日志记录。在MySQL 8.0中,
log_sink_syseventlog
日志组件将错误日志记录到系统日志中(请),因此可以通过将该组件添加到log_error_services
系统变量中来启用这种类型的日志记录。log_syslog
已移除。(在MySQL 8.0.13之前,log_syslog
存在,但已过时,并且无效。)log_syslog_facility
属性 值 命令行格式 --log-syslog-facility=value
已移除 8.0.13 系统变量 log_syslog_facility
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 daemon
该变量已在MySQL 8.0.13中删除,并由代替
syseventlog.facility
。log_syslog_include_pid
属性 值 命令行格式 --log-syslog-include-pid[={OFF|ON}]
已移除 8.0.13 系统变量 log_syslog_include_pid
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
该变量已在MySQL 8.0.13中删除,并由代替
syseventlog.include_pid
。log_syslog_tag
属性 值 命令行格式 --log-syslog-tag=tag
已移除 8.0.13 系统变量 log_syslog_tag
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 empty string
该变量已在MySQL 8.0.13中删除,并由代替
syseventlog.tag
。log_timestamps
属性 值 命令行格式 --log-timestamps=#
系统变量 log_timestamps
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 UTC
有效值 UTC
SYSTEM
此变量控制写入错误日志的消息以及通常写入文件的查询日志和慢速查询日志消息中时间戳的时区。它不影响一般的查询日志和写入表(慢查询日志消息的时区
mysql.general_log
,mysql.slow_log
)。CONVERT_TZ()
通过设置会话time_zone
系统变量,可以将从这些表中检索的行从本地系统时区转换为任何所需时区。允许的
log_timestamps
值为UTC
(默认值)和SYSTEM
(本地系统时区)。时间戳使用ISO 8601 / RFC 3339格式编写:加上表示祖鲁时间(UTC)的尾值或(与UTC的偏移量)。
YYYY-MM-DDThh:mm:ss.uuuuuu
Z
±hh:mm
log_throttle_queries_not_using_indexes
属性 值 命令行格式 --log-throttle-queries-not-using-indexes=#
系统变量 log_throttle_queries_not_using_indexes
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
如果
log_queries_not_using_indexes
启用,该log_throttle_queries_not_using_indexes
变量将限制每分钟可写入慢速查询日志的此类查询的数量。值0(默认值)表示“无限制”。有关更多信息,请参见“MySQL服务器慢查询日志”。long_query_time
属性 值 命令行格式 --long-query-time=#
系统变量 long_query_time
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 数字 默认值 10
最低值 0
如果查询所花的时间超过许多秒,则服务器将增加
Slow_queries
状态变量。如果启用了慢查询日志,则查询将记录到慢查询日志文件中。此值是实时测量的,而不是CPU时间,因此在轻负载系统上低于阈值的查询可能会在重负载系统上高于阈值。最小值和默认值分别long_query_time
为0和10。可以将值指定为微秒的分辨率。请参见“MySQL服务器慢查询日志”。low_priority_updates
属性 值 命令行格式 --low-priority-updates[={OFF|ON}]
系统变量 low_priority_updates
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果设置为
1
所有INSERT
,UPDATE
,DELETE
和LOCK TABLE WRITE
语句等到没有候审SELECT
或LOCK TABLE READ
受影响的表。通过{INSERT | REPLACE | DELETE | UPDATE}LOW_PRIORITY ...
降低仅一个查询的优先级,可以获得相同的效果。此变量影响使用仅表级锁定仅存储引擎(如MyISAM
,MEMORY
,和MERGE
)。请参见“表锁定问题”。lower_case_file_system
属性 值 系统变量 lower_case_file_system
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 此变量描述数据目录所在文件系统上文件名的大小写敏感性。
OFF
表示文件名区分大小写,ON
表示它们不区分大小写。该变量是只读的,因为它反映了文件系统属性,并且对其进行设置对文件系统没有影响。lower_case_table_names
属性 值 命令行格式 --lower-case-table-names[=#]
系统变量 lower_case_table_names
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 2
如果设置为0,表名将按指定存储,并且比较区分大小写。如果设置为1,则表名以小写形式存储在磁盘上,并且比较不区分大小写。如果设置为2,则表名按给定存储,但以小写形式进行比较。此选项也适用于数据库名称和表别名。有关更多详细信息,请参见“标识符区分大小写”。
在Windows上,默认值为1。在macOS上,默认值为2。在Linux上,不支持值2;在Windows上,默认值为2。服务器将值强制改为0。
如果在数据目录位于不区分大小写的文件系统上的系统(例如Windows或macOS)上运行MySQL,则不应将其设置
lower_case_table_names
为0。这是不受支持的组合,当使用错误的字母大小写运行操作时,可能导致挂起状态。使用,使用不同的字母大小写访问表名称可能会导致索引损坏。INSERT INTO ... SELECT ... FROM tbl_name
tbl_name
MyISAM
如果尝试使用
--lower_case_table_names=0
不区分大小写的文件系统启动服务器,则会打印一条错误消息,并且服务器退出。如果使用
InnoDB
表,则应在所有平台上将此变量设置为1,以强制将名称转换为小写。此变量的设置会影响区分大小写的复制筛选选项的行为。有关更多信息,请参见“服务器如何评估复制过滤规则”。
禁止
lower_case_table_names
使用与初始化服务器时使用的设置不同的设置来启动服务器。该限制是必要的,因为各种数据字典表字段使用的归类由初始化服务器时定义的设置确定,并且使用不同的设置重新启动服务器会导致标识符的排序和比较方式不一致。因此,有必要
lower_case_table_names
在初始化服务器之前将其配置为所需的设置。在大多数情况下,这需要lower_case_table_names
在首次启动MySQL服务器之前在MySQL选项文件中进行配置。但是,对于在Debian和Ubuntu上的APT安装,服务器已为您初始化,并且没有机会事先在选项文件中配置设置。因此,debconf-set-selection
在使用APT启用MySQL之前,必须先使用该实用程序lower_case_table_names
。为此,请在使用APT安装MySQL之前运行以下命令:shell> sudo debconf-
set -selections <<< "mysql-server mysql-server /lowercase-table -names select Enabled注意
MySQL 8.0.17中添加了启用
lower_case_table_names
使用的debconf-set-selections
功能。启用lower_case_table_names
将值设置为1。mandatory_roles
属性 值 命令行格式 --mandatory-roles=value
系统变量 mandatory_roles
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 empty string
服务器应将这些角色视为必需角色。实际上,尽管设置
mandatory_roles
实际上并不会更改任何用户帐户,而且这些角色将自动授予每个用户,并且授予的角色在mysql.role_edges
系统表中不可见。变量值是用逗号分隔的角色名称列表。例:
SET PERSIST mandatory_roles = '`role1`@`%`,`role2`,role3,role4@localhost';除了设置全局系统变量运行时值通常所需的或特权外,设置的运行时值还
mandatory_roles
需要ROLE_ADMIN
特权。SYSTEM_VARIABLES_ADMIN
SUPER
角色名称由格式的用户部分和主机部分组成。如果省略主机部分,则默认为。有关更多信息,
user_name@host_name
%
该
mandatory_roles
值是一个字符串,因此用户名和主机名(如果带引号)必须以允许在带引号的字符串内加引号的方式编写。在值命名的角色
mandatory_roles
不能被撤销REVOKE
或下降DROP ROLE
或DROP USER
。为了防止默认情况下
SYSTEM_USER
将会话设为系统会话,不能在mandatory_roles
系统变量的值中列出具有特权的角色:- 如果
mandatory_roles
在启动时被分配了具有SYSTEM_USER
特权的角色,服务器将向错误日志中写入一条消息并退出。 - 如果
mandatory_roles
在运行时为该角色分配了具有SYSTEM_USER
特权的角色,则会发生错误,并且该mandatory_roles
值保持不变。
强制角色(如显式授予的角色)在激活之前不会生效(请参阅激活角色)。在登录时,如果
ctivate_all_roles_on_login
启用了系统变量,则会对所有授予的角色进行角色激活;否则,或者对于其他设置为默认角色的角色。在运行时,SET ROLE
激活角色。分配给角色时不存在
mandatory_roles
但稍后创建的角色可能需要特殊处理才能被视为强制性的。有关详细信息,请参见定义强制性角色。SHOW GRANTS
根据“ SHOW GRANTS语句”中所述的规则显示强制性角色。- 如果
max_allowed_packet
属性 值 命令行格式 --max-allowed-packet=#
系统变量 max_allowed_packet
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 67108864
最低值 1024
最大值 1073741824
一个数据包或任何生成的/中间的字符串或
mysql_stmt_send_long_data()
C API函数发送的任何参数的最大大小。默认值为64MB。分组消息缓冲区被初始化为
net_buffer_length
字节,但是max_allowed_packet
在需要时可以增长到字节。默认情况下,此值很小,以捕获较大(可能不正确)的数据包。如果使用大
BLOB
列或长字符串,则必须增加此值。它应该和BLOB
要使用的最大大小一样大。协议限制为max_allowed_packet
1GB。该值应为1024的倍数;非整数将四舍五入到最接近的倍数。通过更改
max_allowed_packet
变量的值来更改消息缓冲区的大小时,如果客户端程序允许,还应该在客户端更改缓冲区的大小。max_allowed_packet
客户端库中内置的默认值为1GB,但是单个客户端程序可能会覆盖它。例如,mysql和mysqldump的默认值分别为16MB和24MB。它们还使您可以通过max_allowed_packet
在命令行或选项文件中进行设置来更改客户端值。该变量的会话值是只读的。客户端最多可以接收与会话值一样多的字节。但是,服务器不会向客户端发送比当前全局
max_allowed_packet
值更多的字节。(如果在客户端连接后更改了全局值,则全局值可能小于会话值。)max_connect_errors
属性 值 命令行格式 --max-connect-errors=#
系统变量 max_connect_errors
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 100
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
在
max_connect_errors
没有成功连接的情况下中断了来自主机的连续连接请求后,服务器将阻止该主机进行进一步的连接。如果从上一个max_connect_errors
连接中断之后,在少于尝试的时间内成功建立了来自主机的连接,则该主机的错误计数将清零。但是,一旦主机被阻止,刷新主机缓存是取消阻止它的唯一方法。要刷新主机缓存,请执行一条FLUSH HOSTS
语句,一条TRUNCATE TABLE
截断“性能模式”host_cache
表的语句或mysqladmin flush-hosts命令。有关主机缓存如何工作的更多信息,请参见“ DNS查找优化和主机缓存”。
max_connections
属性 值 命令行格式 --max-connections=#
系统变量 max_connections
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 151
最低值 1
最大值 100000
允许的最大同时客户端连接数。有关更多信息,请参见“ MySQL如何处理客户端连接”。
max_delayed_threads
属性 值 命令行格式 --max-delayed-threads=#
不推荐使用 是 系统变量 max_delayed_threads
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 20
最低值 0
最大值 16384
不建议使用此系统变量(因为
DELAYED
不支持插入),并且在将来的版本中将其删除。max_digest_length
属性 值 命令行格式 --max-digest-length=#
系统变量 max_digest_length
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 1024
最低值 0
最大值 1048576
每个会话保留的最大内存字节数,用于计算规范化的语句摘要。一旦在摘要计算过程中使用了一定数量的空间,就会发生截断:不再收集来自已解析语句的其他标记,也不会将其计入其摘要值。只有在解析的令牌的多个字节产生相同的规范化语句摘要之后才不同的语句,如果比较或汇总摘要统计信息,这些语句将被视为相同。
减小该
max_digest_length
值会减少内存使用量,但如果仅在末尾有所不同,则会使更多语句的摘要值变得难以区分。增大值可以区分较长的语句,但会增加内存使用量,尤其是对于涉及大量同时会话的工作负载(服务器max_digest_length
为每个会话分配字节)。解析器将此系统变量用作对其计算的规范化语句摘要的最大长度的限制。如果性能模式跟踪语句摘要,则使用来复制摘要值
performance_schema_max_digest_length
。系统变量,作为对其存储的摘要的最大长度的限制。因此,如果performance_schema_max_digest_length
小于,则max_digest_length
存储在性能模式中的摘要值将相对于原始摘要值被截断。有关语句摘要的更多信息,请参见“性能模式语句摘要和采样”。
max_error_count
属性 值 命令行格式 --max-error-count=#
系统变量 max_error_count
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 1024
最低值 0
最大值 65535
SHOW ERRORS
和SHOW WARNINGS
语句要存储以显示的错误,警告和信息消息的最大数量。这与诊断区域中条件区域的数量相同,因此可以通过检查的条件数量GET DIAGNOSTICS
。max_execution_time
属性 值 命令行格式 --max-execution-time=#
系统变量 max_execution_time
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 0
SELECT
语句的执行超时(以毫秒为单位)。如果值为0,则不启用超时。max_execution_time
适用如下:- 全局
max_execution_time
值提供新连接的会话值的默认值。会话值适用SELECT
于在会话内执行的不包含优化器提示或值为0的执行。MAX_EXECUTION_TIME(N)
N
max_execution_time
适用于只读SELECT
语句。非只读的语句是那些调用存储函数修改数据的副作用的语句。max_execution_time
SELECT
存储程序中的语句将被忽略。
- 全局
max_heap_table_size
属性 值 命令行格式 --max-heap-table-size=#
系统变量 max_heap_table_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 16777216
最低值 16384
最大值(64位平台) 1844674407370954752
最大值(32位平台) 4294967295
此变量设置
MEMORY
允许用户创建的表增长到的最大大小。变量的值用于计算MEMORY
表MAX_ROWS
值。MEMORY
除非使用诸如CREATE TABLE
或用ALTER TABLE
或改变的语句重新创建该表,否则设置此变量对任何现有表均无效TRUNCATE TABLE
。服务器重新启动还会将现有MEMORY
表的最大大小设置为全局max_heap_table_size
值。此变量还与一起使用
tmp_table_size
以限制内部内存表的大小。请参见“ MySQL中的内部临时表使用”。max_heap_table_size
不复制。有关更多信息,请参见“复制功能”和“复制和变量”。max_insert_delayed_threads
属性 值 不推荐使用 是 系统变量 max_insert_delayed_threads
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 此变量是的同义词
max_delayed_threads
。不建议使用此系统变量(因为
DELAYED
不支持插入),并且在将来的版本中将其删除。max_join_size
属性 值 命令行格式 --max-join-size=#
系统变量 max_join_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 18446744073709551615
最低值 1
最大值 18446744073709551615
不允许语句可能需要检查的
max_join_size
行不止于行(对于单表语句)或行组合(对于多表语句),或者可能要做的事不止于max_join_size
磁盘查找。通过设置该值,您可以捕获未正确使用键的语句,这可能需要很长时间。如果您的用户倾向于执行缺少WHERE
子句,花费很长时间或返回数百万行的联接,请进行设置。有关更多信息,请参见使用安全更新模式(--safe-updates)。将此变量设置为除以外
DEFAULT
的其他值时,会将的值重置sql_big_selects
为0
。如果sql_big_selects
再次设置该值,则max_join_size
变量将被忽略。max_length_for_sort_dat
属性 值 命令行格式 --max-length-for-sort-data=#
不推荐使用 8.0.20 系统变量 max_length_for_sort_dat
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 4096
最低值 4
最大值 8388608
自MySQL 8.0.20起不推荐使用此变量,原因是优化程序的更改使其过时且无效。以前,它充当确定
filesort
使用哪种算法的索引值大小的分界。请参见“通过优化排序”。max_points_in_geometry
属性 值 命令行格式 --max-points-in-geometry=#
系统变量 max_points_in_geometry
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 65536
最低值 3
最大值 1048576
函数
points_per_circle
参数的最大值ST_Buffer_Strategy()
。max_prepared_stmt_count
属性 值 命令行格式 --max-prepared-stmt-count=#
系统变量 max_prepared_stmt_count
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 16382
最低值 0
最大值(>= 8.0.18) 4194304
最大值(<= 8.0.17) 1048576
此变量限制了服务器中准备好的语句的总数。它可以用于可能由于准备大量语句而使服务器内存不足而导致拒绝服务攻击的环境中。如果将值设置为低于准备好的语句的当前数目,则现有语句不会受到影响并且可以使用,但是直到当前数目降至限制以下之前,才能准备新的语句。将该值设置为0将禁用准备好的语句。
max_seeks_for_key
属性 值 命令行格式 --max-seeks-for-key=#
系统变量 max_seeks_for_key
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值(64位平台) 18446744073709551615
默认值(32位平台) 4294967295
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
在基于键查找行时,限制假定的最大搜索次数。MySQL优化器假定,通过扫描索引在表中搜索匹配的行时,与索引的实际基数无关,所需的键搜索次数不超过此数目(请参见“ SHOW INDEX语句”)。通过将此值设置为较低的值(例如100),可以强制MySQL首选索引而不是表扫描。
max_sort_length
属性 值 命令行格式 --max-sort-length=#
系统变量 max_sort_length
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 1024
最低值 4
最大值 8388608
排序数据值时使用的字节数。服务器仅使用
max_sort_length
每个值的前一个字节,而忽略其余的字节。因此,仅第一后不同值max_sort_length
字节的比较结果为相等GROUP BY
,ORDER BY
和DISTINCT
操作。增加的值
max_sort_length
可能还需要增加的值sort_buffer_size
。有关详细信息,请参见“通过优化排序”max_sp_recursion_depth
属性 值 命令行格式 --max-sp-recursion-depth[=#]
系统变量 max_sp_recursion_depth
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最大值 255
可以递归调用任何给定存储过程的次数。此选项的默认值为0,这将完全禁用存储过程中的递归。最大值为255。
存储过程递归增加了对线程堆栈空间的需求。如果增加的值
max_sp_recursion_depth
,则可能有必要通过增加thread_stack
服务器启动时的值来增加线程堆栈的大小。max_user_connections
属性 值 命令行格式 --max-user-connections=#
系统变量 max_user_connections
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 4294967295
任何给定的MySQL用户帐户允许的最大同时连接数。值0(默认值)表示“无限制。”
此变量具有可以在服务器启动或运行时设置的全局值。它还具有一个只读会话值,该值指示适用于与当前会话关联的帐户的有效同时连接限制。会话值初始化如下:
- 如果用户帐户的
MAX_USER_CONNECTIONS
资源限制为非零,则会话max_user_connections
值将设置为该限制。 - 否则,会话
max_user_connections
值将设置为全局值。
帐户资源限制使用
CREATE USER
或ALTER USER
语句指定。请参见“设置帐户资源限制”。- 如果用户帐户的
max_write_lock_count
属性 值 命令行格式 --max-write-lock-count=#
系统变量 max_write_lock_count
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值(64位平台) 18446744073709551615
默认值(32位平台) 4294967295
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
经过这么多的写锁定后,允许在其间处理一些未决的读锁定请求。写锁定请求比读锁定请求具有更高的优先级。但是,如果
max_write_lock_count
将其设置为某个较低的值(例如10),则如果已将读取锁定请求传递给了10个写入锁定请求,则读取锁定请求可能比挂起的写入锁定请求优先。通常,不会发生此现象,因为max_write_lock_count
默认情况下它的值非常大。mecab_rc_file
属性 值 命令行格式 --mecab-rc-file=file_name
系统变量 mecab_rc_file
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 mecab_rc_file
设置MeCab全文解析器时使用该选项。该
mecab_rc_file
选项定义mecabrc
配置文件的路径,该路径是MeCab的配置文件。该选项是只读的,只能在启动时设置。该mecabrc
配置文件需要初始化仲裁处。有关MeCab全文分析器的信息,请参见“ MeCab全文分析器插件”。
有关可以在MeCab
mecabrc
配置文件中指定的选项的信息,请参阅 Google Developers网站上的 MeCab文档。metadata_locks_cache_size
属性 值 命令行格式 --metadata-locks-cache-size=#
不推荐使用 是(已在8.0.13中删除) 系统变量 metadata_locks_cache_size
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 1024
最低值 1
最大值 1048576
该系统变量已在MySQL 8.0.13中删除。
metadata_locks_hash_instances
属性 值 命令行格式 --metadata-locks-hash-instances=#
不推荐使用 是(已在8.0.13中删除) 系统变量 metadata_locks_hash_instances
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 8
最低值 1
最大值 1024
该系统变量已在MySQL 8.0.13中删除。
min_examined_row_limit
属性 值 命令行格式 --min-examined-row-limit=#
系统变量 min_examined_row_limit
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
检查少于此行数的查询不会记录到慢查询日志中。
myisam_data_pointer_size
属性 值 命令行格式 --myisam-data-pointer-size=#
系统变量 myisam_data_pointer_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 6
最低值 2
最大值 7
未指定选项时
CREATE TABLE
,MyISAM
表将使用的默认指针大小(以字节为单位)MAX_ROWS
。该变量不能小于2或大于7。默认值为6。请参见第B.4.2.11节“表已满”。myisam_max_sort_file_size
属性 值 命令行格式 --myisam-max-sort-file-size=#
系统变量 myisam_max_sort_file_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值(64位平台) 9223372036854775807
默认值(32位平台) 2147483648
在重新创建
MyISAM
索引时(,或期间)REPAIR TABLE
,允许MySQL使用的临时文件的最大大小。如果文件大小大于此值,那么将使用键高速缓存来创建索引,这会更慢。该值以字节为单位。ALTER TABLE
LOAD DATA
如果
MyISAM
索引文件超过此大小并且磁盘空间可用,则增加该值可能会提高性能。该空间在包含原始索引文件所在目录的文件系统中必须可用。myisam_mmap_size
属性 值 命令行格式 --myisam-mmap-size=#
系统变量 myisam_mmap_size
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值(64位平台) 18446744073709551615
默认值(32位平台) 4294967295
最低值 7
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
用于内存映射压缩
MyISAM
文件的最大内存量。如果使用许多压缩MyISAM
表,则可以减小该值以减少发生内存交换问题的可能性。myisam_recover_options
属性 值 命令行格式 --myisam-recover-options[=list]
系统变量 myisam_recover_options
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 列举 默认值 OFF
有效值 OFF
DEFAULT
BACKUP
FORCE
QUICK
设置
MyISAM
存储引擎恢复模式。该变量的值是的值的任意组合OFF
,DEFAULT
,BACKUP
,FORCE
,或QUICK
。如果指定多个值,请用逗号分隔。在服务器启动时指定无值的变量与指定相同DEFAULT
,并且指定显式值""
禁用恢复(与值相同OFF
)。如果启用了恢复,则每次mysqld打开一个MyISAM
表,它检查表是否标记为已崩溃或未正确关闭。(只有在禁用外部锁定的情况下运行,最后一个选项才起作用。)在这种情况下,mysqld在表上运行检查。如果表已损坏,mysqld将尝试对其进行修复。以下选项会影响修复的工作方式。
选项 描述 OFF
无法恢复。 DEFAULT
恢复时无需备份,强制或快速检查。 BACKUP
如果恢复期间更改了数据文件,则将 tbl_name.MYD
文件备份另存为tbl_name-datetime.BAK
。FORCE
即使 .MYD
文件丢失多行,也要运行恢复。QUICK
如果没有任何删除块,请不要检查表中的行。 服务器自动修复表之前,它将有关修复的注释写到错误日志中。如果您希望能够在无需用户干预的情况下从大多数问题中恢复,则应该使用选项
BACKUP,FORCE
。即使某些行将被删除,这也会强制修复表,但是它将旧的数据文件保留为备份,以便您以后可以检查发生了什么。请参见“ MyISAM启动选项”。
myisam_repair_threads
属性 值 命令行格式 --myisam-repair-threads=#
系统变量 myisam_repair_threads
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
如果此值大于1,
MyISAM
则在此Repair by sorting
过程中将并行创建表索引(每个索引在其自己的线程中)。预设值为1。注意
多线程修复仍然是beta质量的代码。
myisam_sort_buffer_size
属性 值 命令行格式 --myisam-sort-buffer-size=#
系统变量 myisam_sort_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8388608
最低值 4096
最大值(其他64位平台) 18446744073709551615
最大值(其他32位平台) 4294967295
最大值(Windows,64位平台) 18446744073709551615
最大值(Windows,32位平台) 4294967295
MyISAM
在期间对索引进行排序REPAIR TABLE
或使用CREATE INDEX
或创建索引时分配的缓冲区大小ALTER TABLE
。myisam_stats_method
属性 值 命令行格式 --myisam-stats-method=name
系统变量 myisam_stats_method
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 nulls_unequal
有效值 nulls_equal
nulls_unequal
nulls_ignored
服务器
NULL
在收集有关MyISAM
表的索引值分布的统计信息时如何处理值。这个变量有三个可能的值nulls_equal
,nulls_unequal
和nulls_ignored
。对于nulls_equal
,所有NULL
索引值均被视为相等,并形成一个大小等于NULL
值数量的单个值组。对于nulls_unequal
,NULL
值被认为是不相等的,并且每个NULL
值形成大小为1的不同值组。对于nulls_ignored
,NULL
值将被忽略。如“ InnoDB和MyISAM索引统计信息收集”中所述,用于生成表统计信息的方法会影响优化器如何选择索引以执行查询。
myisam_use_mmap
属性 值 命令行格式 --myisam-use-mmap[={OFF|ON}]
系统变量 myisam_use_mmap
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
使用内存映射来读取和写入
MyISAM
表。mysql_native_password_proxy_users
属性 值 命令行格式 --mysql-native-password-proxy-users[={OFF|ON}]
系统变量 mysql_native_password_proxy_users
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量控制
mysql_native_password
内置身份验证插件是否支持代理用户。除非check_proxy_users
启用系统变量,否则它无效。有关用户代理的信息,请参见“代理用户”。named_pipe
属性 值 命令行格式 --named-pipe[={OFF|ON}]
系统变量 named_pipe
范围 Global 动态 没有 SET_VAR
提示适用没有 特定于平台 windows 类型 布尔型 默认值 OFF
(仅Windows。)指示服务器是否支持通过命名管道的连接。
named_pipe_full_access_group
属性 值 命令行格式 --named-pipe-full-access-group=value
介绍了 8.0.14 系统变量 named_pipe_full_access_group
范围 Global 动态 没有 SET_VAR
提示适用没有 特定于平台 windows 类型 string 默认值 *everyone*
有效值 *everyone*
empty string
(仅Windows。)当
named_pipe
启用系统变量以支持命名管道连接时,将由MySQL服务器在命名管道上授予客户端的访问控制设置为成功进行通信所需的最小限制。较新的MySQL客户端软件无需任何其他配置即可打开命名管道连接,但是,较旧的客户端软件可能仍需要完全访问权限才能打开命名管道连接。此变量设置Windows本地组的名称,该本地组由MySQL服务器授予其成员足够的访问权限,以使用较旧的命名管道客户端。最初,该值
'*everyone*'
默认设置为默认值,该值允许Windows上Everyone组的用户继续使用旧客户端,直到升级旧客户端为止。相反,将值设置为空字符串意味着没有Windows用户将被授予对命名管道的完全访问权限。默认值'*everyone*'
提供了一种独立于语言的方式来引用Windows上的Everyone组。理想情况下,
mysql_old_client_users
当绝对有必要访问较旧的客户端软件时,应在Windows中创建一个新的Windows本地组名称(例如),然后使用该名称替换该变量的默认值。在这种情况下,将组的成员资格限制为尽可能少的用户,在升级其客户端软件时将用户从组中删除。尝试使用较旧的命名管道客户端打开与MySQL的连接的组的非成员将被拒绝访问,直到Windows管理员将用户添加到组中,然后用户注销并登录(由windows)。net_buffer_length
属性 值 命令行格式 --net-buffer-length=#
系统变量 net_buffer_length
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 16384
最低值 1024
最大值 1048576
每个客户端线程都与连接缓冲区和结果缓冲区关联。两者均以给定的大小开头,
net_buffer_length
但max_allowed_packet
根据需要动态扩展到字节。结果缓冲区缩小到net_buffer_length
每个SQL语句之后。通常不应该更改此变量,但是如果您的内存很少,则可以将其设置为客户端发送的语句的预期长度。如果语句超过此长度,连接缓冲区将自动扩大。
net_buffer_length
可以设置的最大值为1MB。该变量的会话值是只读的。
net_read_timeout
属性 值 命令行格式 --net-read-timeout=#
系统变量 net_read_timeout
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 30
最低值 1
在中止读取之前等待连接中的更多数据的秒数。服务器从客户端读取时,
net_read_timeout
超时值控制何时中止。服务器正在向客户端写入时,net_write_timeout
超时值控制何时中止。另请参阅slave_net_timeout
。net_retry_count
属性 值 命令行格式 --net-retry-count=#
系统变量 net_retry_count
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 10
最低值 1
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
如果对通信端口的读取或写入中断,请在放弃之前重试多次。在FreeBSD上,这个值应该设置得很高,因为内部中断会发送到所有线程。
net_write_timeout
属性 值 命令行格式 --net-write-timeout=#
系统变量 net_write_timeout
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 60
最低值 1
在中止写入之前等待块写入连接的秒数。另请参阅
net_read_timeout
。new
属性 值 命令行格式 --new[={OFF|ON}]
系统变量 new
范围 Global, Session 动态 是 SET_VAR
提示适用没有 被禁用 skip-new
类型 布尔型 默认值 OFF
在MySQL 4.0中,此变量用于打开一些4.1行为,并保留该变量是为了向后兼容。它的价值永远是
OFF
。在NDB群集中,将此变量设置为
ON
可以使用表以外的分区类型KEY
或LINEAR KEY
与NDB
表一起使用分区类型。此功能仅是实验性功能,生产中不支持。有关其他信息,请参阅用户定义的分区和NDB存储引擎(NDB群集)。ngram_token_size
属性 值 命令行格式 --ngram-token-size=#
系统变量 ngram_token_size
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 2
最低值 1
最大值 10
为n-gram全文分析器定义n-gram令牌大小。该
ngram_token_size
选项是只读的,只能在启动时进行修改。默认值为2(二字组)。最大值为10。有关如何配置此变量的更多信息,请参见“ ngram全文分析器”。
offline_mode
属性 值 命令行格式 --offline-mode[={OFF|ON}]
系统变量 offline_mode
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
服务器是否处于“离线模式”,具有以下特征:
- 没有
CONNECTION_ADMIN
或SUPER
特权的已连接客户端用户将在下一个请求时断开连接,并出现相应的错误。断开连接包括终止正在运行的语句和释放锁。这样的客户端也无法启动新的连接,并收到适当的错误。 - 具有
CONNECTION_ADMIN
或SUPER
特权的已连接客户端用户不会断开连接,并且可以启动新连接来管理服务器。 - 复制从属线程被允许将数据继续应用于服务器。
只有拥有
SYSTEM_VARIABLES_ADMIN
或SUPER
特权的用户才能控制离线模式。要将服务器置于脱机模式,请将offline_mode
系统变量的值从OFF
更改为ON
。要恢复正常操作,请offline_mode
从更改ON
为OFF
。在脱机模式下,被拒绝访问的客户端收到ER_SERVER_OFFLINE_MODE
错误。- 没有
old
属性 值 命令行格式 --old[={OFF|ON}]
系统变量 old
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
old
是一个兼容性变量。默认情况下,它是禁用的,但是可以在启动时启用,以将服务器还原为旧版本中的行为。当
old
启用时,它改变索引提示到之前的MySQL 5.1.17使用的默认范围。也就是说,不带FOR
子句的索引提示仅适用于如何将索引用于行检索,不适用于ORDER BY
orGROUP BY
子句的解析。(请参见“索引提示”。)请注意在复制设置中启用它。使用基于语句的二进制日志记录,对主服务器和从服务器使用不同的模式可能会导致复制错误。old_alter_table
属性 值 命令行格式 --old-alter-table[={OFF|ON}]
系统变量 old_alter_table
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
启用此变量后,服务器将不使用优化的方法来处理
ALTER TABLE
操作。它恢复为使用临时表,复制数据,然后将临时表重命名为原始表,如MySQL 5.0及更早版本所使用。有关操作的更多信息ALTER TABLE
,请参见“ ALTER TABLE语句”。ALTER TABLE ... DROP PARTITION
withold_alter_table=ON
重建分区表,并尝试将数据从删除的分区移动到具有兼容PARTITION ... VALUES
定义的另一个分区。无法删除的数据将被删除。在早期版本中,ALTER TABLE ... DROP PARTITION
withold_alter_table=ON
删除存储在分区中的数据并删除该分区。open_files_limit
属性 值 命令行格式 --open-files-limit=#
系统变量 open_files_limit
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 5000, with possible adjustment
最低值 0
最大值 platform dependent
mysqld从操作系统可使用的文件描述符的数量。mysqld
setrlimit()
通过直接设置此变量或使用mysqld_safe--open-files-limit
选项使用启动时请求的值来保留描述符。如果mysqld产生错误,请尝试增加该值。在内部,此变量的最大值是最大无符号整数值,但实际的最大值取决于平台。Too many open files
open_files_limit
open_files_limit
at runtime 的值指示操作系统实际允许mysqld使用的文件描述符的数量,该数量可能与启动时请求的值不同。如果启动期间请求的文件描述符数量无法分配,mysqld会在错误日志中写入警告。有效
open_files_limit
值是基于在系统启动时指定的值(如果有的话)和的值max_connections
和table_open_cache
使用这些公式:10 + max_connections +(table_open_cache * 2)
max_connections * 5
- 操作系统限制(如果该限制为正,但无穷大)
- 如果操作系统限制为Infinity:
open_files_limit
启动时指定该值,否则为5000
服务器尝试使用这些值的最大值(最大为无符号整数值)来获取文件描述符的数量。如果无法获得那么多的描述符,则服务器将尝试获取系统允许的数量。
在MySQL无法更改打开文件数的系统上,有效值为0。
在Unix上,该值不能设置为大于ulimit -n。
optimizer_prune_level
属性 值 命令行格式 --optimizer-prune-level=#
系统变量 optimizer_prune_level
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 1
最低值 0
最大值 1
控制在查询优化期间应用的试探法,以从优化器搜索空间中修剪不太有希望的局部计划。值为0将禁用启发式搜索,以便优化器执行详尽搜索。值为1会使优化器根据中间计划检索到的行数来修剪计划。
optimizer_search_depth
属性 值 命令行格式 --optimizer-search-depth=#
系统变量 optimizer_search_depth
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 62
最低值 0
最大值 62
查询优化器执行的最大搜索深度。大于查询中的关系数的值会产生更好的查询计划,但是花更长的时间才能生成查询的执行计划。小于查询中的关系数的值可以更快地返回执行计划,但是结果计划可能远非最佳。如果设置为0,系统将自动选择一个合理的值。
optimizer_switch
属性 值 命令行格式 --optimizer-switch=value
系统变量 optimizer_switch
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 组 有效值(>= 8.0.18) batched_key_access={on|off}
block_nested_loop={on|off}
condition_fanout_filter={on|off}
derived_merge={on|off}
duplicateweedout={on|off}
engine_condition_pushdown={on|off}
firstmatch={on|off}
hash_join={on|off}
index_condition_pushdown={on|off}
index_merge={on|off}
index_merge_intersection={on|off}
index_merge_sort_union={on|off}
index_merge_union={on|off}
loosescan={on|off}
materialization={on|off}
mrr={on|off}
mrr_cost_based={on|off}
semijoin={on|off}
skip_scan={on|off}
subquery_materialization_cost_based={on|off}
use_index_extensions={on|off}
use_invisible_indexes={on|off}
有效值(>= 8.0.13) batched_key_access={on|off}
block_nested_loop={on|off}
condition_fanout_filter={on|off}
derived_merge={on|off}
duplicateweedout={on|off}
engine_condition_pushdown={on|off}
firstmatch={on|off}
index_condition_pushdown={on|off}
index_merge={on|off}
index_merge_intersection={on|off}
index_merge_sort_union={on|off}
index_merge_union={on|off}
loosescan={on|off}
materialization={on|off}
mrr={on|off}
mrr_cost_based={on|off}
semijoin={on|off}
skip_scan={on|off}
subquery_materialization_cost_based={on|off}
use_index_extensions={on|off}
use_invisible_indexes={on|off}
有效值(<= 8.0.12) batched_key_access={on|off}
block_nested_loop={on|off}
condition_fanout_filter={on|off}
derived_merge={on|off}
duplicateweedout={on|off}
engine_condition_pushdown={on|off}
firstmatch={on|off}
index_condition_pushdown={on|off}
index_merge={on|off}
index_merge_intersection={on|off}
index_merge_sort_union={on|off}
index_merge_union={on|off}
loosescan={on|off}
materialization={on|off}
mrr={on|off}
mrr_cost_based={on|off}
semijoin={on|off}
subquery_materialization_cost_based={on|off}
use_index_extensions={on|off}
use_invisible_indexes={on|off}
使用
optimizer_switch
系统变量可以控制优化程序的行为。此变量的值是一组标志,每个标志的值都为on
或off
指示相应的优化器行为是启用还是禁用。此变量具有全局值和会话值,可以在运行时更改。可以在服务器启动时设置全局默认值。要参见当前的优化器标志集,请选择变量值:
mysql>
SELECT @@optimizer_switch\G *************************** 1. row *************************** @@optimizer_switch : index_merge=on,index_merge_union=on, index_merge_sort_union=on,index_merge_intersection=on, engine_condition_pushdown=on,index_condition_pushdown=on, mrr=on,mrr_cost_based=on,block_nested_loop=on, batched_key_access=off,materialization=on,semijoin=on, loosescan=on,firstmatch=on,duplicateweedout=on, subquery_materialization_cost_based=on, use_index_extensions=on,condition_fanout_filter=on, derived_merge=on,use_invisible_indexes=off,skip_scan=on, hash_join=on有关此变量的语法及其控制的优化器行为的更多信息,请参见“可切换的优化”。
optimizer_trace
属性 值 命令行格式 --optimizer-trace=value
系统变量 optimizer_trace
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 此变量控制优化器跟踪。有关详细信息,请参见 MySQL内部:跟踪优化器。
optimizer_trace_features
属性 值 命令行格式 --optimizer-trace-features=value
系统变量 optimizer_trace_features
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 此变量启用或禁用选定的优化程序跟踪功能。有关详细信息,请参见 MySQL内部:跟踪优化器。
optimizer_trace_limit
属性 值 命令行格式 --optimizer-trace-limit=#
系统变量 optimizer_trace_limit
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1
要显示的优化程序跟踪的最大数量。有关详细信息,请参见 MySQL内部:跟踪优化器。
optimizer_trace_max_mem_size
属性 值 命令行格式 --optimizer-trace-max-mem-size=#
系统变量 optimizer_trace_max_mem_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 1048576
存储的优化程序跟踪的最大累积大小。有关详细信息,请参见 MySQL内部:跟踪优化器。
optimizer_trace_offset
属性 值 命令行格式 --optimizer-trace-offset=#
系统变量 optimizer_trace_offset
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 -1
要显示的优化程序轨迹的偏移量。有关详细信息,请参见 MySQL内部:跟踪优化器。
performance_schema_xxx
“性能架构系统变量”中列出了性能架构系统变量。这些变量可用于配置性能架构操作。
parser_max_mem_size
属性 值 命令行格式 --parser-max-mem-size=#
系统变量 parser_max_mem_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值(64位平台) 18446744073709551615
默认值(32位平台) 4294967295
最低值 10000000
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
解析器可用的最大内存量。默认值对可用内存没有限制。可以减小该值,以防止由于解析长的或复杂的SQL语句而导致内存不足的情况。
partial_revokes
属性 值 命令行格式 --partial-revokes[={OFF|ON}]
介绍了 8.0.16 系统变量 partial_revokes
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
(如果不存在部分撤销)ON
(如果存在部分撤销)启用此变量使得可以部分撤销特权。具体来说,对于在全局级别具有特权的用户,
partial_revokes
可以撤消特定架构的特权,而保留其他架构的特权。例如,UPDATE
可以限制具有全局特权的用户在mysql
系统架构上行使此特权。(或者,换句话说,使用户能够UPDATE
在除模式之外的所有模式上行使特权mysql
。)从这种意义上说,UPDATE
部分撤销了用户的全局特权。启用后,
partial_revokes
如果任何帐户具有特权限制,就无法禁用。如果存在任何此类帐户,则禁用partial_revokes
失败:- 对于尝试
partial_revokes
在启动时禁用的尝试,服务器会记录一条错误消息并启用partial_revokes
。 - 对于尝试
partial_revokes
在运行时禁用的操作,将发生错误并且该partial_revokes
值保持不变。
要
partial_revokes
在这种情况下禁用,请首先通过重新授予特权或删除该帐户来修改拥有部分撤销特权的每个帐户。有关更多信息,包括删除部分撤销的说明,请参见“使用部分撤销的权限限制”。
- 对于尝试
password_history
属性 值 命令行格式 --password-history=#
系统变量 password_history
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 4294967295
此变量定义用于根据所需的最小密码更改次数来控制先前密码的重用的全局策略。对于先前使用的帐户密码,此变量指示在可以重复使用密码之前必须进行的后续帐户密码更改的次数。如果值为0(默认值),则没有基于密码更改次数的重用限制。
对该变量所做的更改将立即应用于使用该
PASSWORD HISTORY DEFAULT
选项定义的所有帐户。使用和语句的
PASSWORD HISTORY
选项,可以根据需要为单个帐户覆盖全局变更数密码重用策略。请参见“帐户密码管理”。CREATE USER
ALTER USER
password_require_current
属性 值 命令行格式 --password-require-current[={OFF|ON}]
介绍了 8.0.13 系统变量 password_require_current
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量定义用于控制更改帐户密码的尝试是否必须指定要替换的当前密码的全局策略。
对该变量所做的更改将立即应用于使用该
PASSWORD REQUIRE CURRENT DEFAULT
选项定义的所有帐户。使用和语句的
PASSWORD REQUIRE
选项,可以根据需要为单个帐户覆盖需要全局验证的策略。请参见“帐户密码管理”。CREATE USER
ALTER USER
password_reuse_interval
属性 值 命令行格式 --password-reuse-interval=#
系统变量 password_reuse_interval
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 4294967295
该变量定义了全局策略,用于根据经过的时间来控制先前密码的重用。对于以前使用的帐户密码,此变量指示在可以重用密码之前必须经过的天数。如果值为0(默认值),则没有基于时间流逝的重用限制。
对该变量所做的更改将立即应用于使用该
PASSWORD REUSE INTERVAL DEFAULT
选项定义的所有帐户。可以使用和语句的
PASSWORD REUSE INTERVAL
选项,根据需要为单个帐户覆盖全局经过时间的密码重用策略。请参见“帐户密码管理”。CREATE USER
ALTER USER
persisted_globals_load
属性 值 命令行格式 --persisted-globals-load[={OFF|ON}]
系统变量 persisted_globals_load
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
是否从
mysqld-auto.cnf
数据目录中的文件加载持久配置设置。服务器通常在启动后处理所有其他选项文件(请参见“使用选项文件”)。禁用将persisted_globals_load
导致服务器启动顺序跳过mysqld-auto.cnf
。要修改的内容
mysqld-auto.cnf
,使用SET PERSIST
,SET PERSIST_ONLY
和RESET PERSIST
语句。请参见“持久性系统变量”。persist_only_admin_x509_subject
属性 值 命令行格式 --persist-only-admin-x509-subject=string
介绍了 8.0.14 系统变量 persist_only_admin_x509_subject
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 empty string
SET PERSIST
并且SET PERSIST_ONLY
使系统变量被持久化到mysqld-auto.cnf
数据目录选项文件(见第13.7.6.1,“SET语法变量分配”)。持久的系统变量可启用运行时配置更改,从而影响随后的服务器重启,这对于不需要直接访问MySQL服务器主机选项文件的远程管理非常方便。但是,某些系统变量是不可持久的,或者只能在某些限制性条件下才能保留。该
persist_only_admin_x509_subject
系统变量指定的SSL证书X.509主题值,用户必须有能够坚持系统变量的持续限制。默认值为空字符串,该字符串将禁用“主题”检查,以便任何用户都无法持久存储限制的系统变量。如果
persist_only_admin_x509_subject
为非空,则使用加密连接连接到服务器并提供具有指定主题值的SSL证书的用户,可以SET PERSIST_ONLY
用来持久存储受限制的系统变量。有关持久限制的系统变量的信息以及有关配置MySQL以使其启用的说明persist_only_admin_x509_subject
,请参见“非持久和持久限制的系统变量”。pid_file
属性 值 命令行格式 --pid-file=file_name
系统变量 pid_file
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 服务器在其中写入其进程ID的文件的路径名。除非给出绝对路径名以指定其他目录,否则服务器将在数据目录中创建文件。如果指定此变量,则必须指定一个值。如果未指定此变量,则MySQL使用默认值
host_name.pid
,其中host_name
是主机名。其他程序(例如mysqld_safe)使用进程ID文件来确定服务器的进程ID。在Windows上,此变量还会影响默认错误日志文件名。请参见“MySQL服务器错误日志”。
plugin_dir
属性 值 命令行格式 --plugin-dir=dir_name
系统变量 plugin_dir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 默认值 BASEDIR/lib/plugin
插件目录的路径名。
如果插件目录可被服务器写入,则用户可能会使用将可执行代码写入目录中的文件
SELECT ... INTO DUMPFILE
。可以通过使plugin_dir
服务器只读或将secure_file_priv
目录设置为SELECT
可以安全进行写操作的目录来防止这种情况。port
属性 值 命令行格式 --port=port_num
系统变量 port
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 3306
最低值 0
最大值 65535
服务器在其上侦听TCP / IP连接的端口号。可以使用
--port
选项设置此变量。preload_buffer_size
属性 值 命令行格式 --preload-buffer-size=#
系统变量 preload_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 32768
最低值 1024
最大值 1073741824
预加载索引时分配的缓冲区大小。
print_identified_with_as_hex
属性 值 命令行格式 --print-identified-with-as-hex[={OFF|ON}]
介绍了 8.0.17 系统变量 print_identified_with_as_hex
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
在“
IDENTIFIED WITH
输出自”子句中显示的密码哈希值SHOW CREATE USER
可能包含无法打印的字符,这些字符会对终端显示器和其他环境产生不利影响。启用print_identified_with_as_hex
原因SHOW CREATE USER
可将这些哈希值显示为十六进制字符串,而不是常规字符串文字。即使启用了此变量,不包含不可打印字符的哈希值仍会显示为常规字符串文字。profiling
如果设置为0或
OFF
(默认值),则禁用语句分析。如果设置为1或ON
,则启用语句分析,并且SHOW PROFILE
ndSHOW PROFILES
语句提供对分析信息的访问。请参见“ SHOW PROFILES语句”。不建议使用此变量,并将在将来的MySQL版本中将其删除。
profiling_history_size
profiling
启用了要维护概要分析信息的语句数。默认值为15。最大值为100。将值设置为0会有效禁用性能分析。请参见“ SHOW PROFILES语句”。不建议使用此变量,并将在将来的MySQL版本中将其删除。
protocol_compression_algorithms
属性 值 命令行格式 --protocol-compression-algorithms=value
介绍了 8.0.18 系统变量 protocol_compression_algorithms
范围 Global 动态 是 SET_VAR
提示适用没有 类型 组 默认值 zlib,zstd,uncompressed
有效值 zlib
zstd
uncompressed
服务器允许传入连接的压缩算法。这些包括客户端程序和参与主/从复制或组复制的服务器的连接。压缩不适用于
FEDERATED
表的连接。protocol_compression_algorithms
不控制X协议的连接压缩。有关此操作方式的信息,请参见“使用X插件进行连接压缩”。变量值是一个或多个以逗号分隔的压缩算法名称的列表,可以按下列顺序选择(不区分大小写),以任何顺序:
zlib
:允许使用zlib
压缩算法的连接。zstd
:允许使用zstd
压缩算法(zstd 1.3)的连接。uncompressed
:允许未压缩的连接。如果该算法名称未包括在protocol_compression_algorithms
值中,则服务器不允许未压缩的连接。它仅允许使用值中指定的任何其他算法的压缩连接,并且不存在未压缩连接的后备情况。
缺省值
zlib,zstd,uncompressed
表示服务器允许所有压缩算法。protocol_version
属性 值 系统变量 protocol_version
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer MySQL服务器使用的客户端/服务器协议的版本。
proxy_user
属性 值 系统变量 proxy_user
范围 Session 动态 没有 SET_VAR
提示适用没有 类型 string 如果当前客户端是另一个用户的代理,则此变量是代理用户帐户名。否则,此变量为
NULL
。请参见“代理用户”。pseudo_slave_mode
属性 值 系统变量 pseudo_slave_mode
范围 Session 动态 是 SET_VAR
提示适用没有 类型 Integer 此系统变量供内部服务器使用。
pseudo_slave_mode
与当前正在处理旧服务器或新服务器的事务相比,可帮助正确处理源自旧服务器或新服务器的事务。mysqlbinlogpseudo_slave_mode
在执行任何SQL语句之前将的值设置为true。设置此系统变量的会话值是受限制的操作。会话用户必须具有
REPLICATION_APPLIER
特权(请参见“复制特权检查”)或具有足以设置受限会话变量的特权(请参见“系统变量特权”)。但是,请注意,该变量并非供用户设置。它是由复制基础结构自动设置的。pseudo_slave_mode
对准备好的XA事务的处理具有以下影响,这些XA事务可以附加到处理会话(默认情况下,发出的会话XA START
)或从中分离:- 如果为true,并且处理会话已执行内部使用
BINLOG
语句,则XA事务将在事务的第一部分XA PREPARE
完成时自动从会话中分离,因此任何具有以下内容的会话都可以提交或回滚 XA事务:XA_RECOVER_ADMIN
特权。 - 如果为false,则XA事务将一直附加到处理会话,只要该会话仍处于活动状态,在此期间,其他任何会话都无法提交该事务。仅当会话断开连接或服务器重新启动时,才分离准备好的事务。
pseudo_slave_mode
对original_commit_timestamp
复制延迟时间戳和original_server_version
系统变量具有以下影响:- 如果为true,则未明确设置
original_commit_timestamp
或original_server_version
假定源自其他未知服务器的事务,因此将值0(表示未知)分配给时间戳记和系统变量。 - 如果为false,则未显式设置的事务
original_commit_timestamp
或original_server_version
假定不起源于当前服务器的事务,因此将当前时间戳和当前服务器的版本分配给时间戳和系统变量。
在MySQL 8.0.14和更高版本中,
pseudo_slave_mode
对设置一个或多个不受支持(已删除或未知)SQL模式的语句的处理具有以下影响:- 如果为true,则服务器将忽略不支持的模式并发出警告。
- 如果为false,则服务器使用拒绝该语句
ER_UNSUPPORTED_SQL_MODE
。
- 如果为true,并且处理会话已执行内部使用
pseudo_thread_id
属性 值 系统变量 pseudo_thread_id
范围 Session 动态 是 SET_VAR
提示适用没有 类型 Integer 此变量供内部服务器使用。
从MySQL 8.0.14开始,设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
query_alloc_block_size
属性 值 命令行格式 --query-alloc-block-size=#
系统变量 query_alloc_block_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8192
最低值 1024
最大值 4294967295
块大小 1024
为语句解析和执行期间创建的对象分配的内存块的分配大小。如果内存碎片有问题,则可能有助于增加此参数。
query_prealloc_size
属性 值 命令行格式 --query-prealloc-size=#
系统变量 query_prealloc_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8192
最低值 8192
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
块大小 1024
用于语句解析和执行的持久缓冲区的大小。不会在语句之间释放此缓冲区。如果运行复杂的查询,则较大的
query_prealloc_size
值可能有助于提高性能,因为它可以减少服务器在查询执行操作期间执行内存分配的需求。rand_seed1
属性 值 系统变量 rand_seed1
范围 Session 动态 是 SET_VAR
提示适用没有 类型 Integer 该
rand_seed1
和rand_seed2
作为唯一的会话变量存在变数,并且可以设置,但不能读取。变量(而不是它们的值)显示在的输出中SHOW VARIABLES
。这些变量的目的是支持
RAND()
功能的复制。对于调用的语句,RAND()
主控器将两个值传递给从属器,在此它们用于为随机数生成器提供种子。从机使用这些值来设置会话变量rand_seed1
,rand_seed2
以便RAND()
从机上生成与主机上相同的值。rand_seed2
请参阅的说明
rand_seed1
。range_alloc_block_size
属性 值 命令行格式 --range-alloc-block-size=#
系统变量 range_alloc_block_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 4096
最低值 4096
最大值(64位平台) 18446744073709547520
最大值 4294967295
块大小 1024
进行范围优化时分配的块的大小。
range_optimizer_max_mem_size
属性 值 命令行格式 --range-optimizer-max-mem-size=#
系统变量 range_optimizer_max_mem_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8388608
最低值 0
最大值 18446744073709551615
范围优化器的内存消耗限制。值0表示“无限制”。”如果优化程序考虑一个执行计划使用的范围内访问方法,但优化程序估计需要这种方法的内存量将超过极限,它放弃该计划,并考虑其他计划。有关更多信息,请参见限制内存使用以进行范围优化。
rbr_exec_mode
属性 值 系统变量 rbr_exec_mode
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 STRICT
有效值 IDEMPOTENT
STRICT
供mysqlbinlog内部使用。此变量在
IDEMPOTENT
模式和STRICT
模式之间切换服务器。IDEMPOTENT
模式导致抑制mysqlbinlogBINLOG
生成的语句中重复关键字和未找到关键字的错误。当在服务器上重播基于行的二进制日志时,该模式会导致与现有数据发生冲突,此模式很有用。当您通过将以下内容写入输出来指定选项时,mysqlbinlog设置此模式:--idempotent
SET SESSION RBR_EXEC_MODE=IDEMPOTENT;从MySQL 8.0.18开始,设置此系统变量的会话值不再是受限制的操作。
read_buffer_size
属性 值 命令行格式 --read-buffer-size=#
系统变量 read_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 131072
最低值 8200
最大值 2147479552
对
MyISAM
表进行顺序扫描的每个线程都会为其扫描的每个表分配此大小(以字节为单位)的缓冲区。如果进行多次顺序扫描,则可能需要增加此值,默认值为131072。此变量的值应为4KB的倍数。如果将其设置为不是4KB倍数的值,则其值将四舍五入到最接近的4KB倍数。在以下上下文中,所有存储引擎还使用此选项:
- 在为排序行时,用于将索引缓存在临时文件(而非临时表)中
ORDER BY
。 - 对于批量插入分区。
- 用于缓存嵌套查询的结果。
read_buffer_size
还以另一种特定于存储引擎的方式使用:确定MEMORY
表的内存块大小。有关在不同操作期间使用内存的更多信息,请参见“ MySQL如何使用内存”。
- 在为排序行时,用于将索引缓存在临时文件(而非临时表)中
read_only
属性 值 命令行格式 --read-only[={OFF|ON}]
系统变量 read_only
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
当
read_only
启用了系统变量,该服务器允许除外谁拥有用户没有客户端更新CONNECTION_ADMIN
或SUPER
特权。默认情况下禁用此变量。服务器还支持
super_read_only
系统变量(默认情况下禁用),具有以下作用:- 如果
super_read_only
启用此选项,则服务器禁止客户端更新,即使来自具有SUPER
特权的用户也是如此。 - 设置
super_read_only
于ON
隐含的力量read_only
来ON
。 - 设置
read_only
于OFF
隐含的力量super_read_only
来OFF
。
即使
read_only
启用,服务器也允许以下操作:- 如果服务器是复制从属服务器,则由从属线程执行的更新。在复制设置中,
read_only
在从属服务器上启用以确保从属仅接受来自主服务器的更新而不接受来自客户端的更新会很有用。 - 写入系统表
mysql.gtid_executed
,该表存储了当前二进制日志文件中不存在的已执行事务的GTID。 ANALYZE TABLE
或OPTIMIZE TABLE
语句的使用。只读模式的目的是防止更改表结构或内容。分析和优化不符合此类更改的条件。例如,这意味着可以使用mysqlcheck --all-databases --analyze对只读复制从属服务器执行一致性检查。TEMPORARY
表上的操作。- 插入日志表(
mysql.general_log
和mysql.slow_log
);请参见“选择常规查询日志和慢速查询日志输出目的地”。 - 更新Performance Schema表,例如
UPDATE
或TRUNCATE TABLE
操作。
read_only
在主服务器上所做的更改不会复制到从属服务器上。可以在从属服务器上设置该值,而与主服务器上的设置无关。以下条件适用于尝试启用
read_only
(包括由启用导致的隐式尝试super_read_only
):- 如果您有任何显式锁(通过获取
LOCK TABLES
)或有挂起的事务,则尝试失败并发生错误。 - 当其他客户端具有任何正在进行的语句,active
LOCK TABLES WRITE
或正在进行的提交时,尝试将阻塞,直到释放锁并结束语句和事务为止。在尝试启用的read_only
过程中,其他客户端请求表锁定或开始事务的请求也会阻塞,直到read_only
被设置为止。 - 如果存在持有元数据锁的活动事务,尝试将阻塞,直到这些事务结束。
read_only
您可以在持有全局读取锁(通过获取FLUSH TABLES WITH READ LOCK
)时启用,因为它不涉及表锁。
- 如果
read_rnd_buffer_size
属性 值 命令行格式 --read-rnd-buffer-size=#
系统变量 read_rnd_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 262144
最低值 1
最大值 2147483647
此变量用于从
MyISAM
表读取,并且对于任何存储引擎,用于多范围读取优化。当
MyISAM
在键排序操作之后按排序顺序从表中读取行时,将通过此缓冲区读取行以避免磁盘查找。请参见“通过优化排序”。将变量设置为较大的值可以大大提高ORDER BY
性能。但是,这是为每个客户端分配的缓冲区,因此不应将全局变量设置为较大的值。相反,仅在需要运行大型查询的那些客户端中更改会话变量。有关在不同操作期间使用内存的更多信息,请参见“ MySQL如何使用内存”。有关多范围读取优化的信息,请参见“多范围读取优化”。
regexp_stack_limit
属性 值 命令行格式 --regexp-stack-limit=#
系统变量 regexp_stack_limit
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8000000
最低值 0
最大值 2147483647
用于内部堆栈的最大可用内存(以字节为单位),这些堆栈用于由
REGEXP_LIKE()
函数和类似函数执行的正则表达式匹配操作(请参见“MySQL正则表达式函数”)。regexp_time_limit
属性 值 命令行格式 --regexp-time-limit=#
系统变量 regexp_time_limit
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 32
最低值 0
最大值 2147483647
由
REGEXP_LIKE()
以及类似功能执行的正则表达式匹配操作的时间限制(请参见“MySQL正则表达式函数”)。此限制表示为由匹配引擎执行的最大允许步数,因此仅间接影响执行时间。通常,它是毫秒级的。require_row_format
属性 值 介绍了 8.0.19 系统变量 require_row_format
范围 Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
该变量供复制和mysqlbinlog内部服务器使用。它将在会话中执行的DML事件限制为仅以基于行的二进制日志记录格式编码的事件,并且无法创建临时表。不遵守限制的查询将失败。
将此系统变量的会话值设置为
ON
不需要特权。将此系统变量的会话值设置OFF
为限制操作,并且会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。require_secure_transport
属性 值 命令行格式 --require-secure-transport[={OFF|ON}]
系统变量 require_secure_transport
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
是否要求客户端与服务器的连接使用某种形式的安全传输。启用此变量后,服务器仅允许使用SSL的TCP / IP连接或使用套接字文件(在Unix上)或共享内存(在Windows上)的连接。服务器拒绝不安全的连接尝试,该尝试失败并显示
ER_SECURE_TRANSPORT_REQUIRED
错误。此功能补充了优先考虑的每个帐户的SSL要求。例如,如果使用定义了一个帐户
REQUIRE SSL
,则启用require_secure_transport
后将无法使用该帐户通过Unix套接字文件进行连接。服务器可能没有可用的安全传输。例如,如果Windows服务器启动时未指定任何SSL证书或密钥文件且
shared_memory
禁用了系统变量,则不支持安全传输。在这种情况下,尝试require_secure_transport
在启动时启用将导致服务器将一条消息写入错误日志并退出。尝试在运行时启用变量失败,并显示ER_NO_SECURE_TRANSPORTS_CONFIGURED
错误。另请参阅将加密连接配置为强制性。
resultset_metadat
属性 值 系统变量 resultset_metadat
范围 Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 FULL
有效值 FULL
NONE
对于元数据传输是可选的连接,客户端设置
resultset_metadat
系统变量以控制服务器是否返回结果集元数据。允许的值为FULL
(返回所有元数据;这是默认值)和NONE
(不返回任何元数据)。对于不是元数据可选的连接,设置
resultset_metadat
为NONE
会产生错误。有关管理结果集元数据传输的详细信息,请参见“ C API可选结果集元数据”。
secondary_engine_cost_threshold
属性 值 介绍了 8.0.16 系统变量 secondary_engine_cost_threshold
范围 Session 动态 是 SET_VAR
提示适用是 类型 数字 默认值 100000.000000
最低值 0
最大值 DBL_MAX(maximum double value)
供将来使用。
schema_definition_cache
属性 值 命令行格式 --schema-definition-cache=#
系统变量 schema_definition_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 256
最低值 256
最大值 524288
为使用和未使用的架构定义对象的数量定义一个限制,该限制可以保留在字典对象缓存中。
仅当使用的数量小于所定义的容量时,才会将未使用的架构定义对象保留在字典对象缓存中
schema_definition_cache
。设置
0
意味着架构定义对象仅在使用时才保留在字典对象缓存中。有关更多信息,请参见“字典对象缓存”。
secure_file_priv
属性 值 命令行格式 --secure-file-priv=dir_name
系统变量 secure_file_priv
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值 platform specific
有效值 empty string
dirname
NULL
此变量用于限制数据导入和导出操作的效果,例如由
LOAD DATA
ndSELECT ... INTO OUTFILE
语句和LOAD_FILE()
函数执行的操作。只有具有FILE
特权的用户才能进行这些操作。secure_file_priv
可以设置如下:- 如果为空,则该变量无效。这不是一个安全的设置。
- 如果设置为目录名,则服务器将限制导入和导出操作,使其仅适用于该目录中的文件。该目录必须存在;服务器将不会创建它。
- 如果设置为
NULL
,服务器将禁用导入和导出操作。
缺省值是特定于平台的,并且取决于CMake选项的值,如下表所示。如果要从源代码构建,则要明确指定默认值,请使用CMake选项。
INSTALL_LAYOUT
secure_file_priv
INSTALL_SECURE_FILE_PRIVDIR
INSTALL_LAYOUT
值预设 secure_file_priv
值STANDALONE
空的 DEB
,RPM
,SVR4
/var/lib/mysql-files
除此以外 mysql-files
在CMAKE_INSTALL_PREFIX
价值之下服务器
secure_file_priv
在启动时检查值,如果该值不安全,则将警告写入错误日志。如果非NULL
值是空的,或者该值是数据目录或它的子目录,或者是所有用户都可以访问的目录,则它被认为是不安全的。如果secure_file_priv
将设置为不存在的路径,则服务器将错误消息写入错误日志并退出。session_track_gtids
属性 值 命令行格式 --session-track-gtids=value
系统变量 session_track_gtids
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 OFF
有效值 OFF
OWN_GTID
ALL_GTIDS
控制服务器是否在当前会话中跟踪GTID,并将其返回给客户端。根据变量值,在执行每个事务结束时,跟踪程序将捕获服务器GTID,并将其返回给客户端。这些
session_track_gtids
值是允许的:OFF
:跟踪器未收集任何GTID。这是默认值。OWN_GTID
:跟踪器收集成功提交的读/写事务生成的GTID。ALL_GTIDS
:跟踪器gtid_executed
在当前事务提交时收集系统变量中的所有GTID ,而不管事务是读/写还是只读。
session_track_gtids
不能在事务上下文中设置。有关会话状态跟踪的更多信息,请参见“客户端会话状态更改的服务器跟踪”。
session_track_schem
属性 值 命令行格式 --session-track-schema[={OFF|ON}]
系统变量 session_track_schem
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
控制服务器是否跟踪在当前会话中设置默认架构(数据库)的时间,并通知客户端使架构名称可用。
如果启用了架构名称跟踪器,则即使新的架构名称与旧的架构名称相同,每次设置默认架构时都会发生名称通知。
有关会话状态跟踪的更多信息,请参见“客户端会话状态更改的服务器跟踪”。
session_track_state_change
属性 值 命令行格式 --session-track-state-change[={OFF|ON}]
系统变量 session_track_state_change
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
控制服务器是否跟踪当前会话的状态更改,并在状态更改发生时通知客户端。可以报告客户端会话状态的以下属性的更改:
- 默认架构(数据库)。
- 系统变量的特定于会话的值。
- 用户定义的变量。
- 临时表。
- 准备好的语句。
如果启用了会话状态跟踪器,则即使涉及新的属性值与旧的属性值相同,也会针对涉及跟踪的会话属性的每个更改发生通知。例如,将用户定义的变量设置为其当前值将导致通知。
该
session_track_state_change
变量仅控制何时发生更改的通知,而不控制更改的通知。例如,当设置了默认模式或分配了跟踪的会话系统变量时,就会发生状态更改通知,但是该通知不包括模式名称或变量值。要接收模式名称或会话系统变量值的通知,请分别使用session_track_schem
或session_track_system_variables
系统变量。注意
为
session_track_state_change
自身分配值不被视为状态更改,因此也不会这样报告。但是,如果其名称列在的值中,则对其的session_track_system_variables
任何分配都会导致通知新值。有关会话状态跟踪的更多信息,请参见“客户端会话状态更改的服务器跟踪”。
session_track_system_variables
属性 值 命令行格式 --session-track-system-variables=#
系统变量 session_track_system_variables
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 string 默认值 time_zone, autocommit, character_set_client, character_set_results, character_set_connection
控制服务器是否跟踪对会话系统变量的分配,并通知客户端每个分配的变量的名称和值。变量值是用逗号分隔的变量列表,可以跟踪其分配。默认情况下,通知的启用
time_zone
,utocommit
,character_set_client
,character_set_results
,和character_set_connection
。(后三个变量是受的影响SET NAMES
。)该特殊值
*
使服务器跟踪对所有会话变量的分配。如果给定,则此值必须由其自身指定,而没有特定的系统变量名称。要禁用会话变量分配的通知,请设置
session_track_system_variables
为空字符串。如果启用了会话系统变量跟踪,那么即使新值与旧值相同,也会对所有分配给跟踪会话变量的通知进行通知。
有关会话状态跟踪的更多信息,请参见“客户端会话状态更改的服务器跟踪”。
session_track_transaction_info
属性 值 命令行格式 --session-track-transaction-info=value
系统变量 session_track_transaction_info
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 OFF
有效值 OFF
STATE
CHARACTERISTICS
控制服务器是否跟踪当前会话中事务的状态和特征,并通知客户端使此信息可用。这些
session_track_transaction_info
值是允许的:OFF
:禁用事务状态跟踪。这是默认值。STATE
:启用事务状态跟踪而没有特征跟踪。状态跟踪使客户端能够确定事务是否正在进行中,以及是否可以将其移至其他会话而不回滚。CHARACTERISTICS
:启用事务状态跟踪,包括特征跟踪。通过特征跟踪,客户端可以确定如何在另一个会话中重新启动事务,以使其具有与原始会话相同的特征。以下特征与此有关:ISOLATION LEVEL READ ONLY READ WRITE WITH CONSISTENT SNAPSHOT
为了使客户安全地将事务重定位到另一个会话,它不仅必须跟踪事务状态,还必须跟踪事务特征。此外,客户端必须跟踪
transaction_isolation
和transaction_read_only
系统变量,才能正确确定会话默认值。(要跟踪这些变量,请在session_track_system_variables
系统变量的值中列出它们。)有关会话状态跟踪的更多信息,请参见“客户端会话状态更改的服务器跟踪”。
sha256_password_auto_generate_rsa_keys
属性 值 命令行格式 --sha256-password-auto-generate-rsa-keys[={OFF|ON}]
系统变量 sha256_password_auto_generate_rsa_keys
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
服务器使用此变量来确定是否自动生成数据目录中的RSA私钥/公钥对文件(如果尚不存在)。
在启动时,服务器会自动生成数据目录RSA公钥/私钥对的文件,如果所有这些条件为真:
sha256_password_auto_generate_rsa_keys
或caching_sha2_password_auto_generate_rsa_keys
系统变量启用;未指定RSA选项;数据目录中缺少RSA文件。这些密钥对文件可通过RSAsha256_password
或caching_sha2_password
插件认证的帐户,通过未加密的连接使用RSA进行安全密码交换;请参见“ SHA-256可插拔身份验证”和“缓存SHA-2可插拔身份验证”。有关RSA文件自动生成的更多信息,包括文件名和特征,请参见“创建SSL和RSA证书和密钥”
该
uto_generate_certs
系统变量相关,但SSL证书,并需要使用SSL安全连接密钥文件的控制自动生成。sha256_password_private_key_path
属性 值 命令行格式 --sha256-password-private-key-path=file_name
系统变量 sha256_password_private_key_path
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 默认值 private_key.pem
此变量的值是
sha256_password
身份验证插件的RSA私钥文件的路径名。如果文件被命名为相对路径,则会相对于服务器数据目录进行解释。该文件必须为PEM格式。重要
由于此文件存储私钥,因此应限制其访问模式,以便只有MySQL服务器才能读取它。
有关的信息
sha256_password
,请参见“ SHA-256可插拔身份验证”。sha256_password_proxy_users
属性 值 命令行格式 --sha256-password-proxy-users[={OFF|ON}]
系统变量 sha256_password_proxy_users
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量控制
sha256_password
内置身份验证插件是否支持代理用户。除非check_proxy_users
启用系统变量,否则它无效。有关用户代理的信息,请参见“代理用户”。sha256_password_public_key_path
属性 值 命令行格式 --sha256-password-public-key-path=file_name
系统变量 sha256_password_public_key_path
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 文件名 默认值 public_key.pem
此变量的值是
sha256_password
身份验证插件的RSA公钥文件的路径名。如果文件被命名为相对路径,则会相对于服务器数据目录进行解释。该文件必须为PEM格式。由于此文件存储公用密钥,因此可以将副本自由分发给客户端用户。(在使用RSA密码加密连接到服务器时,明确指定公共密钥的客户端必须使用与服务器使用的公共密钥相同的公共密钥。)有关的信息
sha256_password
,包括有关客户端如何指定RSA公钥的信息,请参见“ SHA-256可插拔身份验证”。shared_memory
属性 值 命令行格式 --shared-memory[={OFF|ON}]
系统变量 shared_memory
范围 Global 动态 没有 SET_VAR
提示适用没有 特定于平台 windows 类型 布尔型 默认值 OFF
(仅Windows。)服务器是否允许共享内存连接。
shared_memory_base_name
属性 值 命令行格式 --shared-memory-base-name=name
系统变量 shared_memory_base_name
范围 Global 动态 没有 SET_VAR
提示适用没有 特定于平台 windows 类型 string 默认值 MYSQL
(仅Windows。)用于共享内存连接的共享内存的名称。在单个物理计算机上运行多个MySQL实例时,这很有用。默认名称是
MYSQL
。名称区分大小写。仅当在
shared_memory
启用系统变量以支持共享内存连接的情况下启动服务器时,此变量才适用。show_create_table_skip_secondary_engine
属性 值 命令行格式 --show-create-table-skip-secondary-engine[={OFF|ON}]
介绍了 8.0.18 系统变量 show_create_table_skip_secondary_engine
范围 Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
启用
show_create_table_skip_secondary_engine
会使该SECONDARY ENGINE
子句从SHOW CREATE TABLE
输出和mysqldump实用程序CREATE TABLE
转储的语句中排除。mysqldump提供了该
--show-create-skip-secondary-engine
选项。指定后,它将show_create_table_skip_secondary_engine
在转储操作期间启用系统变量。在不支持该变量的MySQL 8.0.18之前的版本中尝试使用该选项进行mysqldump操作会导致错误。
--show-create-skip-secondary-engine
show_create_table_skip_secondary_engine
show_create_table_verbosity
属性 值 命令行格式 --show-create-table-verbosity[={OFF|ON}]
系统变量 show_create_table_verbosity
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
SHOW CREATE TABLE
ROW_FORMAT
如果行格式是默认格式,通常不会显示表格选项。启用此变量将导致SHOW CREATE TABLE
显示ROW_FORMAT
,无论它是否是默认格式。show_old_temporals
属性 值 命令行格式 --show-old-temporals[={OFF|ON}]
不推荐使用 是 系统变量 show_old_temporals
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
是否
SHOW CREATE TABLE
输出包括注释来标记时间列发现在预5.6.4格式(TIME
,DATETIME
,和TIMESTAMP
列不为小数精度秒支持)。默认情况下禁用此变量。如果启用,SHOW CREATE TABLE
输出如下所示:CREATE TABLE `mytbl` ( `ts` timestamp /* 5.5 binary format */ NOT NULLDEFAULT CURRENT_TIMESTAMP , `dt` datetime /* 5.5 binary format */DEFAULT NULL, `t` time /* 5.5 binary format */DEFAULT NULL )DEFAULT CHARSET =utf8mb4表
COLUMN_TYPE
列的输出INFORMATION_SCHEMA.COLUMNS
受到类似的影响。不建议使用此变量,并将在将来的MySQL版本中将其删除。
skip_external_locking
属性 值 命令行格式 --skip-external-locking[={OFF|ON}]
系统变量 skip_external_locking
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
这是
OFF
如果mysqld的使用外部锁定(锁定系统),ON
如果外部锁定被禁用。这仅影响MyISAM
表访问。该变量由
--external-locking
或--skip-external-locking
选项设置。默认情况下,外部锁定是禁用的。外部锁定仅影响
MyISAM
表访问。有关更多信息,包括可以使用和不能使用的条件,请参见“外部锁定”。skip_name_resolve
属性 值 命令行格式 --skip-name-resolve[={OFF|ON}]
系统变量 skip_name_resolve
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
检查客户端连接时是否解析主机名。如果此变量为
OFF
,则mysqld在检查客户端连接时解析主机名。如果为ON
,则mysqld仅使用IP编号;否则为。在这种情况下,Host
授权表中的所有列值都必须是IP地址。请参见“ DNS查找优化和主机缓存”。根据系统的网络配置和
Host
帐户的值,客户端可能需要使用显式--host
选项(例如--host=127.0.0.1
或)进行连接--host=::1
。尝试连接到主机
127.0.0.1
通常会解析为该localhost
帐户。但是,如果服务器在skip_name_resolve
启用状态下运行,则此操作将失败。如果您打算这样做,请确保存在一个可以接受连接的帐户。例如,要能够root
使用--host=127.0.0.1
或进行连接--host=::1
,请创建以下帐户:CREATE USER 'root'@'127.0.0.1'IDENTIFIED BY 'root-password';CREATE USER 'root'@'::1'IDENTIFIED BY 'root-password';skip_networking
属性 值 命令行格式 --skip-networking[={OFF|ON}]
系统变量 skip_networking
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量控制服务器是否允许TCP / IP连接。默认情况下,它是禁用的(允许TCP连接)。如果启用,则服务器仅允许本地(非TCP / IP)连接,与mysqld的所有交互都必须使用命名管道或共享内存(在Windows上)或Unix套接字文件(在Unix上)进行。对于仅允许本地客户端的系统,强烈建议使用此选项。请参见“ DNS查找优化和主机缓存”。
由于启动服务器
--skip-grant-tables
会禁用身份验证检查,因此在这种情况下,服务器也会通过启用来禁用远程连接skip_networking
。skip_show_database
属性 值 命令行格式 --skip-show-database
系统变量 skip_show_database
范围 Global 动态 没有 SET_VAR
提示适用没有 SHOW DATABASES
如果他们没有SHOW DATABASES
特权,这将阻止人们使用该语句。如果您担心用户能够参见属于其他用户的数据库,则可以提高安全性。它的作用取决于SHOW DATABASES
特权:如果变量值为ON
,则该SHOW DATABASES
语句仅允许具有SHOW DATABASES
特权的用户使用,并且该语句显示所有数据库名称。如果值为OFF
,SHOW DATABASES
则允许所有用户使用,但仅显示该用户对其具有SHOW DATABASES
或其他特权的数据库的名称。警告
因为任何静态全局特权都被认为是所有数据库的特权,所以任何静态全局特权都使用户可以使用
SHOW DATABASES
或通过检查的SCHEMATA
表来参见所有数据库名称INFORMATION_SCHEMA
,但在数据库级别受部分吊销限制的数据库除外。slow_launch_time
属性 值 命令行格式 --slow-launch-time=#
系统变量 slow_launch_time
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 2
如果创建线程花费的时间超过了许多秒,则服务器将增加
Slow_launch_threads
状态变量。slow_query_log
属性 值 命令行格式 --slow-query-log[={OFF|ON}]
系统变量 slow_query_log
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
是否启用慢速查询日志。该值可以是0(或
OFF
)以禁用日志,也可以是 1(或ON
)以启用日志。日志输出的目的地由log_output
系统变量控制;如果该值为NONE
,即使启用了日志,也不会写入任何日志条目。“慢”由
long_query_time
变量的值确定。请参见“MySQL服务器慢查询日志”。slow_query_log_file
属性 值 命令行格式 --slow-query-log-file=file_name
系统变量 slow_query_log_file
范围 Global 动态 是 SET_VAR
提示适用没有 类型 文件名 默认值 host_name-slow.log
慢查询日志文件的名称。默认值为
host_name-slow.log
,但可以使用该--slow_query_log_file
选项更改初始值。socket
属性 值 命令行格式 --socket={file_name|pipe_name}
系统变量 socket
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 默认值(其他) /tmp/mysql.sock
预设值(Windows) MySQL
在Unix平台上,此变量是用于本地客户端连接的套接字文件的名称。默认值为
/tmp/mysql.sock
。(对于某些发行格式,目录可能有所不同,例如/var/lib/mysql
RPM。)在Windows上,此变量是用于本地客户端连接的命名管道的名称。默认值为
MySQL
(不区分大小写)。sort_buffer_size
属性 值 命令行格式 --sort-buffer-size=#
系统变量 sort_buffer_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 262144
最低值 32768
最大值(其他64位平台) 18446744073709551615
最大值(其他32位平台) 4294967295
最大值(Windows) 4294967295
每个必须执行排序的会话都会分配此大小的缓冲区。
sort_buffer_size
并非特定于任何存储引擎,而是以一般方式进行优化。至少该sort_buffer_size
值必须足够大以在排序缓冲区中容纳15个元组。另外,增加的值max_sort_length
可能需要增加的值sort_buffer_size
。有关更多信息,请参见“通过优化排序”如果您看到
Sort_merge_passes
每秒很多的SHOW GLOBAL STATUS
输出,则可以考虑增加该sort_buffer_size
值以加快速度ORDER BY
或GROUP BY
使用查询优化或改进索引无法改善的操作。优化器尝试计算出需要多少空间,但可以分配更多空间(最大限制)。将其设置为大于全局所需的大小将减慢大多数此类查询的速度。最好将其增加为会话设置,并且仅适用于需要更大大小的会话。在Linux上,阈值分别为256KB和2MB,其中较大的值可能会显着减慢内存分配,因此您应考虑保持低于这些值之一。尝试找到最适合您的工作量的价值。请参见第B.4.3.5节“ MySQL在哪里存储临时文件”。
最大允许设置为
sort_buffer_size
4GB-1。对于64位平台,允许使用更大的值(64位Windows除外,在Windows中,较大的值会被警告截断为4GB-1)。sql_auto_is_null
属性 值 系统变量 sql_auto_is_null
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
如果启用了此变量,则在成功插入自动生成的
AUTO_INCREMENT
值的语句之后,可以通过发出以下形式的语句来找到该值:SELECT *FROM tbl_nameWHERE uto_col IS NULL如果该语句返回一行,则返回的值与调用该
LAST_INSERT_ID()
函数的值相同。有关详细信息,包括在多行插入之后的返回值,请参见“信息函数”。如果没有AUTO_INCREMENT
成功插入任何值,则该SELECT
语句不返回任何行。AUTO_INCREMENT
通过使用IS NULL
比较来检索值的行为被某些ODBC程序(例如Access)所采用。请参阅获取自动增量值。可以通过设置sql_auto_is_null
为禁用此行为OFF
。在此之前的MySQL 8.0.16,改造,以执行该语句时,才被执行,这样的值执行期间确定查询是否转化。在MySQL 8.0.16和更高版本中,转换是在语句准备期间执行的。
WHERE uto_col IS NULL
WHERE uto_col= LAST_INSERT_ID()
sql_auto_is_null
默认值
sql_auto_is_null
是OFF
。sql_big_selects
属性 值 系统变量 sql_big_selects
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 ON
如果设置为
OFF
,MySQL将中止SELECT
可能花费很长时间才能执行的语句(即,优化器估计该语句所检查的行数超过的值的语句max_join_size
)。当发出了不明智的WHERE
声明时,这很有用。新连接的默认值为ON
,它允许所有SELECT
语句。如果将
max_join_size
系统变量设置为以外的其他值DEFAULT
,sql_big_selects
则设置为OFF
。sql_buffer_result
属性 值 系统变量 sql_buffer_result
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
如果启用,则将语句的
sql_buffer_result
结果强制SELECT
放入临时表中。这有助于MySQL尽早释放表锁,并且在将结果发送到客户端花费很长时间的情况下会很有用。默认值为OFF
。sql_log_off
属性 值 系统变量 sql_log_off
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
有效值 OFF
(启用日志记录)ON
(禁用日志记录)此变量控制是否为当前会话禁用对常规查询日志的日志记录(假设常规查询日志本身已启用)。默认值为
OFF
(即启用日志记录)。要为当前会话禁用或启用常规查询日志记录,请将会话sql_log_off
变量设置为ON
或OFF
。设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
sql_mode
属性 值 命令行格式 --sql-mode=name
系统变量 sql_mode
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 组 默认值 ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_ENGINE_SUBSTITUTION
有效值 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
当前服务器的SQL模式,可以动态设置。有关详细信息,请参见“服务器SQL模式”。
注意
MySQL安装程序可能会在安装过程中配置SQL模式。
如果SQL模式不同于默认模式或期望的模式,请检查服务器在启动时读取的选项文件中的设置。
sql_notes
属性 值 系统变量 sql_notes
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
如果启用(默认设置),则
Note
级别增量诊断warning_count
并将由服务器记录下来。如果禁用,则Note
诊断不会增加warning_count
,服务器也不会记录它们。mysqldump包含用于禁用此变量的输出,以便重新加载转储文件不会对不影响重新加载操作完整性的事件产生警告。sql_quote_show_create
属性 值 系统变量 sql_quote_show_create
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
如果启用(默认值),服务器将引用
SHOW CREATE TABLE
和SHOW CREATE DATABASE
语句的标识符。如果禁用,则引用被禁用。默认情况下启用此选项,以便复制适用于需要引用的标识符。请参见“ SHOW CREATE TABLE语句”和“ SHOW CREATE DATABASE语句”。sql_require_primary_key
属性 值 命令行格式 --sql-require-primary-key[={OFF|ON}]
介绍了 8.0.13 系统变量 sql_require_primary_key
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
创建新表或更改现有表结构的语句是否强制要求表具有主键。
设置此系统变量的会话值是受限制的操作。会话用户必须具有足以设置受限会话变量的特权。请参见“系统变量特权”。
启用此变量有助于避免表没有主键时可能发生的基于行的复制中的性能问题。假设一个表没有主键,而更新或删除修改了多行。在主服务器上,可以使用单个表扫描来执行此操作,但是在使用基于行的复制进行复制时,将导致在从属服务器上针对每一行进行表扫描。使用主键时,不会发生这些表扫描。
sql_require_primary_key
适用于基本表和TEMPORARY
表,并且其值的更改被复制到从属服务器。从MySQL 8.0.18开始,它仅适用于可以参与复制的存储引擎。启用后,
sql_require_primary_key
具有以下效果:- 尝试创建没有主键的新表失败并显示错误。这包括
CREATE TABLE ... LIKE
。它还包括CREATE TABLE ... SELECT
,除非该CREATE TABLE
部分包括主键定义。 尝试从现有表中删除主键失败并显示错误,但
ALTER TABLE
允许在同一语句中删除主键并添加主键的例外。即使表还包含
UNIQUE NOT NULL
索引,删除主键也将失败。- 尝试导入没有主键的表失败,并显示错误。
- 尝试创建没有主键的新表失败并显示错误。这包括
sql_safe_updates
属性 值 系统变量 sql_safe_updates
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 OFF
如果这个变量被启用,
UPDATE
并且DELETE
不中使用的关键语句WHERE
条款或LIMIT
条款产生错误。这样就可以捕获UPDATE
并DELETE
声明未正确使用键的地方,这可能会更改或删除大量行。默认值为OFF
。对于mysql客户端,
sql_safe_updates
可以使用--safe-updates
选项启用。有关更多信息,请参见使用安全更新模式(--safe-updates)。sql_select_limit
属性 值 系统变量 sql_select_limit
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 从
SELECT
语句返回的最大行数。有关更多信息,请参见使用安全更新模式(--safe-updates)。新连接的默认值是服务器每个表允许的最大行数。典型的默认值为(2 32)-1或(2 64)-1。如果您更改了限制,则可以通过分配值来恢复默认值
DEFAULT
。如果a
SELECT
有LIMIT
子句,LIMIT
则优先于的值sql_select_limit
。sql_warnings
属性 值 系统变量 sql_warnings
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
此变量控制
INSERT
如果发生警告,单行语句是否生成信息字符串。默认值为OFF
。将值设置ON
为产生一个信息字符串。ssl_c
属性 值 命令行格式 --ssl-ca=file_name
系统变量 ssl_c
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 文件名 带有受信任的SSL证书颁发机构列表的文件的路径。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_capath
属性 值 命令行格式 --ssl-capath=dir_name
系统变量 ssl_capath
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 目录名 包含PEM格式的受信任SSL CA证书的目录的路径。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_cert
属性 值 命令行格式 --ssl-cert=file_name
系统变量 ssl_cert
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 文件名 用于建立安全连接的SSL证书文件的名称。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_cipher
属性 值 命令行格式 --ssl-cipher=name
系统变量 ssl_cipher
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 string 直到TLSv1.2为止使用TLS协议的连接的允许加密密码的列表。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_crl
属性 值 命令行格式 --ssl-crl=file_name
系统变量 ssl_crl
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 文件名 包含PEM格式的证书吊销列表的文件的路径。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_crlpath
属性 值 命令行格式 --ssl-crlpath=dir_name
系统变量 ssl_crlpath
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 目录名 目录的路径,其中包含包含PEM格式的证书吊销列表的文件。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
ssl_fips_mode
属性 值 命令行格式 --ssl-fips-mode={OFF|ON|STRICT}
系统变量 ssl_fips_mode
范围 Global 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 OFF
有效值 OFF
(或0)ON
(或1)STRICT
(或2个)控制是否在服务器端启用FIPS模式。该
ssl_fips_mode
系统变量与其他选项的不同之处在于,它不用于控制服务器是否允许加密连接,而是影响允许的加密操作。请参见“ FIPS支持”。--ssl-xxx
这些
ssl_fips_mode
值是允许的:OFF
(或0):禁用FIPS模式。ON
(或1):启用FIPS模式。STRICT
(或2):启用“ strict ” FIPS模式。
注意
如果OpenSSL的FIPS对象模块不可用时,对于唯一的允许值
ssl_fips_mode
是OFF
。在这种情况下,设置ssl_fips_mode
为启动ON
或STRICT
在启动时会导致服务器生成错误消息并退出。ssl_key
属性 值 命令行格式 --ssl-key=file_name
系统变量 ssl_key
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 文件名 用于建立安全连接的SSL密钥文件的名称。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
stored_program_cache
属性 值 命令行格式 --stored-program-cache=#
系统变量 stored_program_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 256
最低值 16
最大值 524288
设置每个连接的缓存存储例程数的软上限。该变量的值是根据MySQL服务器为存储过程和存储函数分别维护的两个缓存中的每个存储例程的数量指定的。
每当执行存储例程时,都会在解析例程中的第一条或顶层语句之前检查此缓存的大小;如果相同类型的例程(存储过程或存储函数正在执行的存储函数)的数量超出此变量指定的限制,则将刷新相应的高速缓存,并释放先前为高速缓存的对象分配的内存。即使存储的例程之间存在依赖关系,这也可以安全地刷新缓存。
存储过程和存储函数高速缓存与字典对象高速缓存的存储程序定义高速缓存分区并行存在。存储过程和存储函数高速缓存是每个连接的,而存储程序定义高速缓存是共享的。存储过程和存储函数高速缓存中对象的存在不依赖于存储程序定义高速缓存中对象的存在,反之亦然。有关更多信息,请参见“字典对象缓存”。
stored_program_definition_cache
属性 值 命令行格式 --stored-program-definition-cache=#
系统变量 stored_program_definition_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 256
最低值 256
最大值 524288
定义可以在字典对象高速缓存中保留的已使用程序和未使用程序的存储定义对象数目的限制。
仅当使用的数量小于所定义的容量时,才会将未使用的存储程序定义对象保留在字典对象缓存中
stored_program_definition_cache
。设置为0意味着存储的程序定义对象仅在使用时才保留在字典对象缓存中。
存储程序定义高速缓存分区与使用该
stored_program_cache
选项配置的存储过程和存储函数高速缓存并行存在。该
stored_program_cache
选项为每个连接设置缓存的存储过程或函数的数量的软上限,并且每次连接执行存储过程或函数时都会检查该上限。另一方面,存储的程序定义高速缓存分区是共享的高速缓存,其存储存储的程序定义对象用于其他目的。存储的程序定义高速缓存分区中对象的存在与存储过程高速缓存或存储的函数高速缓存中对象的存在无关,反之亦然。有关相关信息,请参见“字典对象缓存”。
super_read_only
属性 值 命令行格式 --super-read-only[={OFF|ON}]
系统变量 super_read_only
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
如果
read_only
启用了系统变量,则服务器仅允许具有SUPER
特权的用户进行客户端更新。如果super_read_only
还启用了系统变量,则服务器甚至禁止具有的用户进行客户端更新SUPER
。见的描述read_only
系统变量为只读模式和有关如何描述read_only
和super_read_only
互动。super_read_only
启用时阻止客户端更新包括不一定看起来是更新的操作,例如CREATE FUNCTION
(安装UDF)INSTALL PLUGIN
,和INSTALL COMPONENT
。禁止这些操作,因为它们涉及对mysql
系统架构中表的更改。super_read_only
在主服务器上所做的更改不会复制到从属服务器上。可以在从属服务器上设置该值,而与主服务器上的设置无关。syseventlog.facility
属性 值 命令行格式 --syseventlog.facility=value
介绍了 8.0.13 系统变量 syseventlog.facility
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 daemon
写入错误日志输出的功能
syslog
(发送消息的程序类型)。除非log_sink_syseventlog
安装了错误日志组件,否则此变量不可用。允许的值可能会因操作系统而异;请查阅系统
syslog
文档。Windows上不存在此变量。
syseventlog.include_pid
属性 值 命令行格式 --syseventlog.include-pid[={OFF|ON}]
介绍了 8.0.13 系统变量 syseventlog.include_pid
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
是否在写入到的错误日志输出的每一行中包括服务器进程ID
syslog
。除非log_sink_syseventlog
安装了错误日志组件,否则此变量不可用。Windows上不存在此变量。
syseventlog.tag
属性 值 命令行格式 --syseventlog.tag=tag
介绍了 8.0.13 系统变量 syseventlog.tag
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 empty string
要添加到服务器标识符中的标记,该标记将写入错误日志输出
syslog
或Windows事件日志中。除非log_sink_syseventlog
安装了错误日志组件,否则此变量不可用。默认情况下,未设置标签,因此服务器标识符仅
MySQL
在Windows和mysqld
其他平台上。如果tag
指定了标记值,则将其添加到服务器标识符前并带有连字符,导致syslog
标识符为(或在Windows上)。mysqld-tag
MySQL-tag
在Windows上,要使用尚不存在的标记,必须从具有管理员特权的帐户运行服务器,以允许为该标记创建注册表项。如果标签已经存在,则不需要提升的特权。
system_time_zone
属性 值 系统变量 system_time_zone
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 服务器系统时区。服务器开始执行时,它将从计算机默认值继承时区设置,该默认设置可能会被用于运行服务器的帐户环境或启动脚本修改。该值用于设置
system_time_zone
。通常,时区由TZ
环境变量指定。也可以使用mysqld_safe脚本的--timezone
选项指定。该
system_time_zone
变量不同于time_zone
。尽管它们可能具有相同的值,但是后一个变量用于为每个连接的客户端初始化时区。请参见“ MySQL服务器时区支持”。table_definition_cache
属性 值 命令行格式 --table-definition-cache=#
系统变量 table_definition_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 -1
(表示自动调整大小;不分配此文字值)最低值 400
最大值 524288
可以存储在定义高速缓存中的表定义的数量。如果使用大量表,则可以创建大表定义缓存以加快表打开速度。与普通表高速缓存不同,表定义高速缓存占用的空间更少,并且不使用文件描述符。最小值是400。默认值基于以下公式,上限为2000:
MIN(400 + table_open_cache / 2, 2000)
对于
InnoDB
,table_definition_cache
充当InnoDB
数据字典缓存中打开表实例的数量的软限制。如果打开表实例的数量超过table_definition_cache
设置,则LRU机制将开始标记表实例以将其逐出,并最终将其从数据字典缓存中删除。该限制有助于解决以下情况:大量内存将用于缓存很少使用的表实例,直到下次服务器重新启动。具有缓存的元数据的表实例的数量可能会超过table_definition_cache
,因为具有外键关系的父表实例和子表实例不会放在LRU列表上,也不会从内存中逐出。此外,还
table_definition_cache
定义了InnoDB
可以一次打开的每表文件表空间数量的软限制,该限制也由来控制innodb_open_files
。如果同时设置table_definition_cache
和innodb_open_files
,则使用最高设置。如果未设置任何变量table_definition_cache
,则使用具有较高默认值的变量。如果打开的表空间文件句柄的数量超过table_definition_cache
或所定义的限制innodb_open_files
,则LRU机制将在表空间文件LRU列表中搜索已完全刷新且当前未扩展的文件。每次打开新表空间时都执行此过程。如果没有“非活动”表空间,不会关闭任何表空间文件。表定义高速缓存与字典对象高速缓存的表定义高速缓存分区并行存在。这两个缓存均存储表定义,但服务于MySQL服务器的不同部分。一个高速缓存中的对象不依赖于另一个高速缓存中的存在对象。有关更多信息,请参见“字典对象缓存”。
table_encryption_privilege_check
属性 值 命令行格式 --table-encryption-privilege-check[={OFF|ON}]
介绍了 8.0.16 系统变量 table_encryption_privilege_check
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
控制
TABLE_ENCRYPTION_ADMIN
使用不同于default_table_encryption
设置的加密来创建或更改模式或常规表空间时,或者使用不同于默认方案加密的加密设置来创建或更改表时进行的特权检查。默认情况下,该检查处于禁用状态。table_encryption_privilege_check
在运行时进行设置需要SUPER
特权。table_encryption_privilege_check
支持SET PERSIST
和SET PERSIST_ONLY
语法。请参见“持久性系统变量”。有关更多信息,请参见为架构和常规表空间定义加密默认值。
table_open_cache
属性 值 命令行格式 --table-open-cache=#
系统变量 table_open_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 4000
最低值 1
最大值 524288
所有线程的打开表数。增大该值将增加mysqld所需的文件描述符的数量。您可以通过检查
Opened_tables
状态变量来检查是否需要增加表缓存。请参见“服务器状态变量”。如果的值Opened_tables
很大,并且您不FLUSH TABLES
经常使用(这只会强制关闭并重新打开所有表),则应增加table_open_cache
变量的值。有关表缓存的更多信息,请参见“ MySQL如何打开和关闭表”。table_open_cache_instances
属性 值 命令行格式 --table-open-cache-instances=#
系统变量 table_open_cache_instances
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 16
最低值 1
最大值 64
打开表缓存实例的数量。为了通过减少会话之间的争用来提高可伸缩性,可以将打开的表缓存划分为几个较小的大小为
table_open_cache
/的缓存实例table_open_cache_instances
。会话只需锁定一个实例即可访问它以获取DML语句。这可以在实例之间细分缓存访问,从而在有许多会话访问表时允许使用缓存的操作具有更高的性能。(DDL语句仍然需要锁定整个缓存,但是这种语句的频率要比DML语句低得多。)在通常使用16个或更多内核的系统上,建议将值设置为8或16。
tablespace_definition_cache
属性 值 命令行格式 --tablespace-definition-cache=#
系统变量 tablespace_definition_cache
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 256
最低值 256
最大值 524288
定义可以在字典对象高速缓存中保留的表空间定义对象(已使用和未使用)数量的限制。
未使用的表空间定义对象仅在使用的数量小于所定义的容量时才保留在字典对象缓存中
tablespace_definition_cache
。设置
0
意味着表空间定义对象在使用时仅保留在字典对象缓存中。有关更多信息,请参见“字典对象缓存”。
temptable_max_ram
属性 值 命令行格式 --temptable-max-ram=#
系统变量 temptable_max_ram
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1073741824
最低值 2097152
最大值 2^64-1
定义
TempTable
存储引擎开始在磁盘上存储数据之前可以占用的最大内存量。默认值为1073741824字节(1GiB)。有关更多信息,请参见“ MySQL中的内部临时表使用”。temptable_use_mmap
属性 值 命令行格式 --temptable-use-mmap[={OFF|ON}]
介绍了 8.0.16 系统变量 temptable_use_mmap
范围 Global 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
定义当TempTable存储引擎占用的内存量超过该
temptable_max_ram
变量定义的限制时,是否将TempTable存储引擎为内部内存中的临时表分配空间作为内存映射的临时文件。如果temptable_use_mmap
禁用此选项,则TempTable存储引擎将InnoDB
改为使用磁盘内部临时表。有关更多信息,请参见“ MySQL中的内部临时表使用”。thread_cache_size
属性 值 命令行格式 --thread-cache-size=#
系统变量 thread_cache_size
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 -1
(表示自动调整大小;不分配此文字值)最低值 0
最大值 16384
服务器应缓存多少线程以供重用。当客户端断开连接时,如果那里的
thread_cache_size
线程少于该线程,则将客户端的线程放入缓存中。通过尽可能地重用从缓存中获取的线程来满足线程请求,并且仅当缓存为空时才创建新线程。如果您有许多新连接,则可以增加此变量以提高性能。通常,如果您具有良好的线程实现,则这不会显着提高性能。但是,如果服务器每秒看到数百个连接,则通常应设置thread_cache_size
足够高,以便大多数新连接使用缓存的线程。通过检查Connections
和Threads_created
状态变量之间的差异,您可以了解线程缓存的效率。有关详细信息,请参见“服务器状态变量”。默认值基于以下公式,上限为100:
8 + (max_connections / 100)
thread_handling
属性 值 命令行格式 --thread-handling=name
系统变量 thread_handling
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 列举 默认值 one-thread-per-connection
有效值 no-threads
one-thread-per-connection
loaded-dynamically
服务器用于连接线程的线程处理模型。允许的值为
no-threads
(服务器使用一个线程来处理一个连接)和one-thread-per-connection
(服务器使用一个线程来处理每个客户端连接)。no-threads
在Linux下调试时很有用;请参见“调试和移植MySQL”。thread_pool_algorithm
属性 值 命令行格式 --thread-pool-algorithm=#
系统变量 thread_pool_algorithm
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 1
此变量控制线程池插件使用哪种算法:
- 值0(默认值)使用保守的低并发算法,该算法经过了最充分的测试,已知会产生非常好的结果。
- 值为1会增加并发性,并使用更具攻击性的算法,该算法有时在最佳线程数上的性能要好5-10%,但随着连接数的增加,性能会下降。它的使用应视为实验性的,不被支持。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_pool_high_priority_connection
属性 值 命令行格式 --thread-pool-high-priority-connection=#
系统变量 thread_pool_high_priority_connection
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 1
此变量影响执行前新语句的排队。如果值为0(默认值为false,则为假),语句队列同时使用低优先级队列和高优先级队列。如果值为1(true),则排队的语句始终进入高优先级队列。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_pool_max_active_query_threads
属性 值 命令行格式 --thread-pool-max-active-query-threads
介绍了 8.0.19 系统变量 thread_pool_max_active_query_threads
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 512
每个组中允许的最大活动(运行)查询线程数。如果值为0,则线程池插件最多使用可用线程。
thread_pool_max_unused_threads
属性 值 命令行格式 --thread-pool-max-unused-threads=#
系统变量 thread_pool_max_unused_threads
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 0
最低值 0
最大值 4096
线程池中允许的最大未使用线程数。该变量可以限制睡眠线程使用的内存量。
值0(默认值)表示睡眠线程数没有限制。的值
N
,其中N
大于0表示1个消费者线程和更大N
-1储备线程。在这种情况下,如果一个线程已准备好进入睡眠状态,但是睡眠线程的数量已经达到最大值,则该线程将退出而不是进入睡眠状态。休眠线程正在作为使用者线程或保留线程休眠。线程池在休眠时允许一个线程成为使用者线程。如果线程进入睡眠状态,并且没有现有的使用者线程,它将作为使用者线程进入睡眠状态。当必须唤醒一个线程时,如果有一个消费者线程,则选择该线程。仅当没有使用者线程要唤醒时才选择保留线程。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_pool_prio_kickup_timer
属性 值 命令行格式 --thread-pool-prio-kickup-timer=#
系统变量 thread_pool_prio_kickup_timer
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 1000
最低值 0
最大值 4294967294
此变量影响等待在低优先级队列中执行的语句。该值是将等待的语句移到高优先级队列之前的毫秒数。默认值为1000(1秒)。值的范围是0到2 32 − 2。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_pool_size
属性 值 命令行格式 --thread-pool-size=#
系统变量 thread_pool_size
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值 16
最低值 1
最大值(>= 8.0.19) 512
最大值(<= 8.0.18) 64
线程池中的线程组数。这是控制线程池性能的最重要参数。它影响可以同时执行的语句数。缺省值是16,允许值的范围是1到64。如果指定的值超出此范围,则不会加载线程池插件,并且服务器会将消息写入错误日志。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_pool_stall_limit
属性 值 命令行格式 --thread-pool-stall-limit=#
系统变量 thread_pool_stall_limit
范围 Global 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 6
最低值 4
最大值 600
此变量影响执行语句。该值是一条语句在开始执行之后必须先完成的时间,然后才被定义为停顿,此时线程池允许线程组开始执行另一条语句。该值以10毫秒为单位测量,因此6(默认值)表示60ms。值的范围是4到600(40ms到6s)。较短的等待值使线程可以更快地启动。较短的值也可以更好地避免死锁情况。长等待值对于包含长时间运行的语句的工作负载很有用,以避免在执行当前语句时启动太多新语句。
仅当启用线程池插件时,此变量才可用。请参见“ MySQL企业线程池”
thread_stack
属性 值 命令行格式 --thread-stack=#
系统变量 thread_stack
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 Integer 默认值(64位平台) 286720
默认值(32位平台) 221184
最低值 131072
最大值(64位平台) 18446744073709551615
最大值(32位平台) 4294967295
块大小 1024
每个线程的堆栈大小。默认值足够大,可以正常运行。如果线程堆栈大小太小,则会限制服务器可以处理的SQL语句的复杂性,存储过程的递归深度以及其他消耗内存的操作。
time_zone
属性 值 系统变量 time_zone
范围 Global, Session 动态 是 SET_VAR
提示适用(>= 8.0.17)是 SET_VAR
提示适用(<= 8.0.16)没有 类型 string 默认值 SYSTEM
最小值(>= 8.0.19) -14:00
最小值(<= 8.0.18) -12:59
最大值(>= 8.0.19) +14:00
最大值(<= 8.0.18) +13:00
当前时区。此变量用于初始化每个连接的客户端的时区。缺省情况下,该初始值是
'SYSTEM'
(这意味着,“使用的值system_time_zone
”)。可以使用--default-time-zone
选项在服务器启动时显式指定该值。请参见“ MySQL服务器时区支持”。注意
如果设置为
SYSTEM
,则每个需要时区计算的MySQL函数调用都会进行系统库调用以确定当前系统时区。此调用可能受到全局互斥锁的保护,从而导致争用。timestamp
属性 值 系统变量 timestamp
范围 Session 动态 是 SET_VAR
提示适用是 类型 数字 默认值 UNIX_TIMESTAMP()
最低值 1
最大值 2147483647
设置此客户端的时间。如果您使用二进制日志来还原行,则使用它来获取原始时间戳。
timestamp_value
应该是Unix纪元时间戳(一个类似的值UNIX_TIMESTAMP()
,而不是格式的值)或。'YYYY-MM-DD hh:mm:ss'
DEFAULT
设置
timestamp
为恒定值会使它保留该值,直到再次更改为止。设置timestamp
为DEFAULT
会使它的值成为访问它时的当前日期和时间。timestamp
是一个DOUBLE
,而不是BIGINT
因为它的值包括微秒的部分。最大值对应于'2038-01-19 03:14:07'
UTC,与TIMESTAMP
数据类型相同。SET timestamp
影响的返回值,NOW()
但不影响SYSDATE()
。这意味着二进制日志中的时间戳设置对的调用没有影响SYSDATE()
。可以使用使服务器成为别名的--sysdate-is-now
选项启动服务器,在这种情况下会影响这两个功能。SYSDATE()
NOW()
SET timestamp
tls_ciphersuites
属性 值 命令行格式 --tls-ciphersuites=ciphersuite_list
介绍了 8.0.16 系统变量 tls_ciphersuites
范围 Global 动态 是 SET_VAR
提示适用没有 类型 string 默认值 NULL
服务器使用哪种加密算法允许使用TLSv1.3的加密连接。该值是零个或多个冒号分隔的密码套件名称的列表。
可以为此变量命名的密码套件取决于用于编译MySQL的SSL库。如果未设置此变量,则其默认值为
NULL
,这意味着服务器允许使用默认的密码套件集。如果将变量设置为空字符串,则不会启用任何密码套件,并且无法建立加密连接。有关更多信息,请参见“加密的连接TLS协议和密码”。tls_version
属性 值 命令行格式 --tls-version=protocol_list
系统变量 tls_version
范围 Global 动态(>= 8.0.16) 是 动态(<= 8.0.15) 没有 SET_VAR
提示适用没有 类型 string 默认值(>= 8.0.16) TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
(OpenSSL 1.1.1及更高版本)TLSv1,TLSv1.1,TLSv1.2
(除此以外)默认值(<= 8.0.15) TLSv1,TLSv1.1,TLSv1.2
服务器允许哪种协议进行加密连接。该值是一个或多个逗号分隔的协议名称的列表。可以为此变量命名的协议取决于用于编译MySQL的SSL库。应该选择允许的协议,以免在列表中留下“漏洞”。有关详细信息,请参见“加密的连接TLS协议和密码”。
从MySQL 8.0.16开始,此变量是动态的,可以在运行时进行修改以影响服务器用于新连接的SSL上下文。请参阅加密连接的服务器端运行时配置。在MySQL 8.0.16之前,只能在服务器启动时设置此变量。
tmp_table_size
属性 值 命令行格式 --tmp-table-size=#
系统变量 tmp_table_size
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 Integer 默认值 16777216
最低值 1024
最大值 18446744073709551615
内部内存临时表的最大大小。此变量不适用于用户创建的
MEMORY
表。实际限制取决于
tmp_table_size
和max_heap_table_size
的较小值。如果内存中的临时表超出了限制,MySQL会自动将其转换为磁盘上的临时表。有关更多信息,请参见磁盘内部临时表的存储引擎。如果您执行许多高级查询并且有很多内存,请增加
tmp_table_size
(max_heap_table_size
如果需要)的值GROUP BY
。您可以通过比较
Created_tmp_disk_tables
和Created_tmp_tables
变量的值,将创建的内部磁盘临时表的数量与创建的内部临时表的总数进行比较。另请参见“ MySQL中的内部临时表使用”。
tmpdir
属性 值 命令行格式 --tmpdir=dir_name
系统变量 tmpdir
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 目录名 用于创建临时文件的目录的路径。如果您的默认
/tmp
目录位于一个太小而无法容纳临时表的分区上,则可能会很有用。可以将此变量设置为以循环方式使用的多个路径的列表。路径应:
在Unix上用冒号()和;
在Windows上用分号()分隔。tmpdir
可以是非永久位置,例如基于内存的文件系统上的目录或服务器主机重新启动时将清除的目录。如果MySQL服务器充当复制从属服务器,并且您使用的非永久位置tmpdir
,请考虑使用slave_load_tmpdir
变量为从属服务器设置其他临时目录。对于复制从属服务器,用于复制LOAD DATA
语句的临时文件存储在此目录中,因此具有永久位置,它们可以在计算机重新启动后幸存下来,尽管如果删除了临时文件,复制现在可以在重新启动后继续进行。有关临时文件的存储位置的更多信息,请参见第B.4.3.5节“ MySQL在哪里存储临时文件”。
transaction_alloc_block_size
属性 值 命令行格式 --transaction-alloc-block-size=#
系统变量 transaction_alloc_block_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 8192
最低值 1024
最大值 131072
块大小 1024
增加需要事务的每个事务存储池的字节数。请参阅的说明
transaction_prealloc_size
。transaction_isolation
属性 值 命令行格式 --transaction-isolation=name
系统变量 transaction_isolation
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 列举 默认值 REPEATABLE-READ
有效值 READ-UNCOMMITTED
READ-COMMITTED
REPEATABLE-READ
SERIALIZABLE
事务隔离级别。默认值为
REPEATABLE-READ
。事务隔离级别具有三个范围:全局,会话和下一个事务。这种三作用域的实现会导致一些非标准的隔离级别分配语义,如稍后所述。
要在启动时设置全局事务隔离级别,请使用
--transaction-isolation
服务器选项。在运行时,可以使用该
SET
语句直接设置隔离级别,以将值分配给transaction_isolation
系统变量,也可以使用该SET TRANSACTION
语句间接设置。如果transaction_isolation
直接将隔离级别名称设置为包含空格,则该名称应用引号引起来,并用短划线代替空格。例如,使用以下SET
语句来设置全局值:SET GLOBAL transaction_isolation = 'READ-COMMITTED';设置全局
transaction_isolation
值可设置所有后续会话的隔离级别。现有会话不受影响。要设置会话或下一级
transaction_isolation
值,请使用以下SET
语句。对于大多数会话系统变量,这些语句是设置值的等效方法:SET @@SESSION.var_name = value;SET SESSION var_name = value;SET var_name = value;SET @@var_name = value;如前所述,事务隔离级别除了全局和会话作用域之外,还具有下一个事务作用域。为了能够设置next-transaction范围,
SET
分配会话系统变量值的语法具有以下非标准语义transaction_isolation
:要设置会话隔离级别,请使用以下任何语法:
SET @@SESSION.transaction_isolation = value;SET SESSION transaction_isolation = value;SET transaction_isolation = value;对于这些语法中的每一种,这些语义都适用:
- 为会话中执行的所有后续事务设置隔离级别。
- 允许在事务内进行,但不影响当前正在进行的事务。
- 如果在事务之间执行,则将覆盖设置下一个事务隔离级别的任何在前语句。
- 对应于
SET SESSION TRANSACTION ISOLATION LEVEL
(带有SESSION
关键字)。
要设置下一个事务隔离级别,请使用以下语法:
SET @@transaction_isolation = value;对于该语法,这些语义适用:
- 仅为会话中执行的下一个单个事务设置隔离级别。
- 随后的事务将恢复为会话隔离级别。
- 交易中不允许。
- 对应于
SET TRANSACTION ISOLATION LEVEL
(无SESSION
关键字)。
有关系统变量
SET TRANSACTION
及其与transaction_isolation
系统变量的关系的更多信息,请参见“ SET TRANSACTION语句”。transaction_prealloc_size
属性 值 命令行格式 --transaction-prealloc-size=#
系统变量 transaction_prealloc_size
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 4096
最低值 1024
最大值 131072
块大小 1024
每个事务都有一个内存池,各种事务相关的分配都从该内存池获取内存。池的初始大小(以字节为单位)为
transaction_prealloc_size
。对于由于没有足够的可用内存而无法从池中满足的每个分配,将以transaction_alloc_block_size
字节为单位增加池。事务结束时,池将被截断为transaction_prealloc_size
字节。通过
transaction_prealloc_size
足够大以在单个事务中包含所有语句,可以避免多次malloc()
调用。transaction_read_only
属性 值 命令行格式 --transaction-read-only[={OFF|ON}]
系统变量 transaction_read_only
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 布尔型 默认值 OFF
事务访问方式。该值可以是
OFF
(读/写;默认值)或ON
(只读)。事务访问模式具有三个范围:全局,会话和下一个事务。这种三作用域的实现导致了一些非标准的访问模式分配语义,如稍后所述。
要在启动时设置全局事务访问模式,请使用
--transaction-read-only
服务器选项。在运行时,可以使用该
SET
语句直接设置访问模式以为transaction_read_only
系统变量分配值,也可以使用该SET TRANSACTION
语句间接设置访问模式。例如,使用以下SET
语句来设置全局值:SET GLOBAL transaction_read_only =ON ;设置全局
transaction_read_only
值可设置所有后续会话的访问模式。现有会话不受影响。要设置会话或下一级
transaction_read_only
值,请使用以下SET
语句。对于大多数会话系统变量,这些语句是设置值的等效方法:SET @@SESSION.var_name = value;SET SESSION var_name = value;SET var_name = value;SET @@var_name = value;如前所述,事务访问模式除了全局作用域和会话作用域之外,还具有下一个事务作用域。要设置下一个交易范围,
SET
用于分配会话系统变量值的语法具有的非标准语义transaction_read_only
,要设置会话访问模式,请使用以下任何语法:
SET @@SESSION.transaction_read_only = value;SET SESSION transaction_read_only = value;SET transaction_read_only = value;对于这些语法中的每一种,这些语义都适用:
- 为会话内执行的所有后续事务设置访问模式。
- 允许在事务内进行,但不影响当前正在进行的事务。
- 如果在事务之间执行,则将覆盖设置下一个事务访问模式的任何在前语句。
- 对应于
SET SESSION TRANSACTION{READ WRITE | READ ONLY}
(带有SESSION
关键字)。
要设置下一个事务访问模式,请使用以下语法:
SET @@transaction_read_only = value;对于该语法,这些语义适用:
- 仅为会话中执行的下一个单个事务设置访问模式。
- 随后的事务将恢复为会话访问模式。
- 交易中不允许。
- 对应于
SET TRANSACTION{READ WRITE | READ ONLY}
(无SESSION
关键字)。
有关系统变量
SET TRANSACTION
及其与transaction_read_only
系统变量的关系的更多信息,请参见“ SET TRANSACTION语句”。unique_checks
属性 值 系统变量 unique_checks
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 ON
如果设置为1(默认值),则对
InnoDB
表中的二级索引执行唯一性检查。如果设置为0,则允许存储引擎假定输入数据中不存在重复键。如果您确定您的数据不包含唯一性违规,则可以将其设置为0,以加快将大型表导入到的速度InnoDB
。将此变量设置为0 不需要存储引擎忽略重复的键。仍然允许引擎检查它们并在检测到它们时发出重复密钥错误。
updatable_views_with_limit
属性 值 命令行格式 --updatable-views-with-limit[={OFF|ON}]
系统变量 updatable_views_with_limit
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 1
如果该更新不包含基础表中定义的主键的所有列,则该变量控制如果该更新不包含基础表中定义的主键的所有列,则该视图是否可以进行更新
LIMIT
。(此类更新通常由GUI工具生成。)更新是UPDATE
orDELETE
语句。这里的主键表示一个PRIMARY KEY
或UNIQUE
索引,其中任何列都不能包含NULL
。该变量可以具有两个值:
1
或YES
:仅发出警告(而不是错误消息)。这是默认值。0
或NO
:禁止更新。
use_secondary_engine
属性 值 介绍了 8.0.13 系统变量 use_secondary_engine
范围 Session 动态 是 SET_VAR
提示适用是 类型 列举 默认值 ON
有效值 OFF
ON
FORCED
供将来使用。
validate_password.xxx
该
validate_password
组件实现了一组名称为形式的系统变量。这些变量影响该组件的密码测试。请参见“密码验证选项和变量”。validate_password.xxx
validate_user_plugins
属性 值 命令行格式 --validate-user-plugins[={OFF|ON}]
系统变量 validate_user_plugins
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 布尔型 默认值 ON
如果启用了此变量(默认值),则服务器将检查每个用户帐户,并在发现导致该帐户不可用的条件时发出警告:
- 该帐户需要未加载的身份验证插件。
- 该帐户要求使用
sha256_password
或caching_sha2_password
身份验证插件,但是服务器未按照插件的要求启用SSL或RSA的状态下启动。
启用
validate_user_plugins
会减慢服务器初始化和速度FLUSH PRIVILEGES
。如果不需要其他检查,则可以在启动时禁用此变量以避免性能下降。version
服务器的版本号。该值可能还包含一个后缀,指示服务器的内部版本或配置信息。
-debug
表示服务器是在启用调试支持的情况下构建的。version_comment
属性 值 系统变量 version_comment
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 该CMake的配置程序有一个
COMPILATION_COMMENT_SERVER
选项,允许评论构建MySQL时指定。此变量包含该注释的值。(在MySQL 8.0.14之前,version_comment
由该COMPILATION_COMMENT
选项设置。)请参见“ MySQL源配置选项”。version_compile_machine
属性 值 系统变量 version_compile_machine
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 服务器二进制文件的类型。
version_compile_os
属性 值 系统变量 version_compile_os
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 建立MySQL的作业系统类型。
version_compile_zlib
属性 值 系统变量 version_compile_zlib
范围 Global 动态 没有 SET_VAR
提示适用没有 类型 string 内置
zlib
库的版本。wait_timeout
属性 值 命令行格式 --wait-timeout=#
系统变量 wait_timeout
范围 Global, Session 动态 是 SET_VAR
提示适用没有 类型 Integer 默认值 28800
最低值 1
最大值(其他) 31536000
最大值(Windows) 2147483
服务器在关闭非交互式连接之前等待活动的秒数。
在线程启动时,会话
wait_timeout
值是根据全局wait_timeout
值或全局值初始化的interactive_timeout
,具体取决于客户端的类型(由的CLIENT_INTERACTIVE
connect选项定义mysql_real_connect()
)。另请参阅interactive_timeout
。warning_count
最后一条生成消息的语句导致的错误,警告和注释的数量。该变量是只读的。请参见“ SHOW WARNINGS语句”。
windowing_use_high_precision
属性 值 命令行格式 --windowing-use-high-precision[={OFF|ON}]
系统变量 windowing_use_high_precision
范围 Global, Session 动态 是 SET_VAR
提示适用是 类型 布尔型 默认值 ON
是否在不损失精度的情况下计算窗口操作。请参见“窗口函数优化”。