MySQL 数据库全局变量中文解释

NameValue
auto_increment_incrementAUTO_INCREMENT 字段值的自增长步长值。
auto_increment_offsetAUTO_INCREMENT 字段值的初始值。
autocommit指示新连接的默认提交模式是否启用。
automatic_sp_privileges控制是否在存储过程上创建或更改时自动分配特定权限。
back_log在开始拒绝新连接之前,等待处理的未完成连接数。
basedirMySQL 服务器安装的基本目录路径。
binlog_cache_size事务性语句在使用存储引擎的引擎日志缓冲区覆盖更新操作期间保留的最大内存大小。
bulk_insert_buffer_size在使用 INSERT DELAYED 时撰写到 MyISAM 表中的数据缓冲区大小。
character_set_client客户端字符集。
character_set_connection当前连接的默认字符集。
character_set_database默认数据库字符集。
character_set_filesystem文件系统字符集。
character_set_results结果字符集。
character_set_server服务器字符集。
character_set_systemMySQL 系统字符集。
character_sets_dir可用字符集文件的目录名称。
collation_connection当前连接的默认排序规则。
collation_database默认数据库排序规则。
collation_server服务器排序规则。
completion_type用于自动完成的方法。可以是 NONE、NO_CHAIN 或 CHAIN。
concurrent_insert指示是否启用 CONCURRENT INSERT。
connection_control_failed_connections_threshold超出将为连接失败计数器累加的连接失败次数时触发其它限制的值。
connection_control_max_connection_delay允许连接的最大延迟时间。
connect_timeout在以秒为单位指定的时间内尝试建立到 MySQL 服务器的连接,如果到期,则中止连接尝试。
core_file指示将为 MySQL Server 生成核心文件,如果服务器崩溃或遇到致命错误。
create_admin_listener_thread如果 TRUE,则针对每个已加入的管理员在 MySQL Server 启动时创建一个专用线程。
daemon_memcached_engine_lib_name由 daemon_memcached 指定的内存缓存引擎的库名称。
daemon_memcached_option_disable_blob指示是否忽略对 memcached_test 的 BLOB 类型进行所有编码解码。
daemon_memcached_option_no_block指示是否在 memcached 向 daemond 进行 IO 操作时启用非阻塞 IO。
datetime_format将日期和时间值编码为字符串的格式。
date_format将日期值编码为字符串的格式。
default_authentication_plugin客户端连接时要使用的默认身份验证插件。
default_password_lifetime新用户的默认密码过期值。
default_storage_engine新表的默认存储引擎。
default_table_encryption新表默认的加密类型。
default_week_format规定周的起始日。
delay_key_write指示要在执行 MyISAM 表上的批量插入之前推迟索引键写入。
delayed_insert_limitINSERT DELAYED 中允许等待写入缓冲区的行数的限制。
delayed_insert_timeoutINSERT DELAYED 等待行写入缓冲区的时间限制。
delayed_queue_sizeINSERT DELAYED 缓冲区的大小。
disconnect_on_expired_password指示是否应在帐户过期时断开连接。
div_precision_incrementDOUBLE 或 FLOAT 类型上的数字计算中较小的增量,以支持数学精度。
end_markers_in_json指示是否在 JSON 的内嵌数组和对象结尾处添加符号。如果包含,则启用,否则将禁用。
enforce_gtid_consistency指示是否强制所有事务都为 GTID 事务,并且在所有副本上运行时保持一致。
eq_range_index_dive_limit搜索过程中在等价范围索引查找之前要查询的树的层数的限制。
event_scheduler指示 event scheduler 是否已启用,并且表示当前正在运行的调度程序线程数。
expire_logs_days在将二进制日志文件切换到新文件之前,控制可以保留多少天的旧二进制日志文件。
explicit_defaults_for_timestamp使用默认 TIMESTAMP 或 DATETIME 值的规则。
external_user此变量由 plugin_auth 所使用,以指定可用于计算帐户验证插件数据的用户名称。
flush指示触发哪些数据更改将刷新到磁盘。
flush_time自动刷新所有 MyISAM 表的间隔时间。
foreign_key_checks是否强制实施外键约束。
ft_boolean_syntax指定 MATCH ... AGAINST 查询中可以使用的 “和”、“或”、“非” 语法。
ft_max_word_len识别为完整词语的最小长度。
ft_min_word_len识别为完整词语的最大长度。
ft_query_expansion_limit定义用于在扩展以 EXPAND() 为关键字的全文搜索查询中使用的最大单词数。
gtid_executed已执行的 GTID 集合。
gtid_mode决定 GTID 的使用模式。
gtid_nextGTID 下一个选择,将于事务开始时使用。
gtid_ownedGTID 已拥有的集合。
have_compress是否支持压缩。
have_crypt是否支持密码函数。
have_dynamic_loading是否允许加载共享库。
have_geometry是否启用空间数据类型。
have_innodb是否启用 InnoDB 存储引擎。
have_ndbcluster是否启用 NDB 存储引擎。
host_cache_size服务器为来自一个特定主机的连接分配的可用连接的数量。
hostname服务器的主机名。
identity插件 auth_pam 配置文件中要用于身份验证的 PAM 身份验证模块。
ignore_builtin_innodb指示是否禁止计数器和状态变量来自内置的 InnoDB。
ignore_db_dirs指定要排除的目录列表的逗号分隔列表。
index_statistics是否收集索引统计信息。
init_connect初始化连接字符串。
init_file在服务器启动时读取的 SQL 文件列表。
init_slave如果设置,则 slave 启动时将执行标识的初始化 SQL 语句。
innodb_adaptive_flushing在重做日志写入成本太高时,如果启用 adaptive flushing,则系统将自动尝试减少脏页的数量。
innodb_adaptive_flushing_lwm当 innodb_adaptive_flushing 启用时,指定透明刷新优先级别的水位标识。
innodb_adaptive_hash_index是否启用自适应哈希索引。
innodb_adaptive_hash_index_partitions自适应哈希索引分区数。
innodb_adaptive_max_sleep_delay自适应 flap 时,指定连续的最大延迟时间。
innodb_autoextend_increment增加大小已用尽时自动扩展表空间时的增量。
innodb_autoinc_lock_modeAUTO_INCREMENT 字段的锁定模式。
innodb_background_scrub_data_check_interval后台数据缓存清理期间每个页面检查到上次检查所进行的进度时,每个 Extent 检查的页面数。
innodb_background_scrub_data_compressed指示后台步骤是否应概括地检查和更新压缩的表。
innodb_background_scrub_data_interval后台数据缓存清理任务之间的检查间隔。
innodb_background_scrub_data_uncompressed指示后台步骤是否应块阅读和检查未压缩的数据文件区域。
innodb_bg_check_constraints_interval后台线程检查错误约束的时间间隔。
innodb_buffer_pool_chunk_size内存池分配缓存空间的大小。
innodb_buffer_pool_dump_at_shutdown是否在关闭之前转储缓存池中的页面。
innodb_buffer_pool_dump_now是否立即转储缓存池中的页面。
innodb_buffer_pool_dump_pct当 innodb_buffer_pool_dump_at_shutdown 设置为 ON 时,用于指定要舍弃的缓存页的百分比。
innodb_buffer_pool_filenameInnodb 缓冲区池文件名。
innodb_buffer_pool_instances缓存池的分区数。
innodb_buffer_pool_load_abort如果 innodb_buffer_pool_load_at_startup 不为 OFF,并且在从磁盘加载缓存池时出现 I/O 错误,是否停止加载缓存池。
innodb_buffer_pool_load_at_startup是否在启动时从磁盘加载缓存池。
innodb_buffer_pool_load_now是否立即从磁盘加载缓存池。
innodb_buffer_pool_populate指示服务器是否应尝试在将从磁盘加载的缓存池装入到内存前填充 InnoDB 索引和数据文件的 InnoDB 页缓存。
innodb_buffer_pool_sizeInnoDB 存储引擎的缓冲池大小。
innodb_change_buffer_max_size改变缓冲区的最大大小。
innodb_change_buffering指示 InnoDB 是否启用和停用改变缓冲区。
innodb_checkpoint_algorithm对于 innodb_buffer_pool_instances 大于 1 的系统,在调度脏页刷新到磁盘之前要使用的算法。
innodb_checkpoint_batch_sizeMySQL 向磁盘写入批量脏页的数目。
innodb_checkpoint_max_ageMySQL 保留最旧 LSN(日志序列号)以强制将脏页从数据文件中刷新到磁盘的时间量。
innodb_column_stats是否收集列统计信息。
innodb_commit_concurrencyInnoDB 使用的实际并发线程数。
innodb_compression_algorithm压缩算法类型。
innodb_compression_default将使用的默认压缩算法。
innodb_compression_failure_threshold_pct服务器是在累计压缩失败时,停止尝试压缩页或退出表或索引的压缩模式。
innodb_compression_level压缩算法的默认压缩等级。
innodb_compression_pad_pct_max当整个页压缩后为 filler 的最大页大小时,每个表单元区域中未压缩数据可以填充的填充比例。
innodb_concurrency_tickets储存可以解决互斥锁的进程和线程数的一个队列。
innodb_data_file_pathInnodb 数据文件名和大小。
innodb_data_home_dirInnoDB 数据目录的路径。
innodb_deadlock_detect_interval检测死锁的频率。
innodb_default_row_format默认的 InnoDB 行格式。
innodb_defragment是否开启 Innodb 表在线碎片整理。
innodb_defragment_fill_factor指定当重组表正在创建一个新重组版本时,要使用的表访问方法的填充因子。
innodb_defragment_fill_factor_n_recs指定填充因子的最小记录数。
innodb_defragment_frequency多久运行一次在线碎片整理。
innodb_defragment_n_pages是否被挤出缓冲池的页的数量。
innodb_defragment_stats_accuracy表示多个实例如何汇总 DBMS_DATAFILE_DEFRAG_STATS 视图的输出。
innodb_disable_sort_file_cache是否禁用 InnoDB 文件排序器缓存。
innodb_disallow_writes指示是否将 Innodb 存储引擎置于只读模式。
innodb_doublewrite是否启用定向写入。
innodb_encrypt_log指示是否在以加密表空间启动的表空间上启用重做日志加密。
innodb_encrypt_tables是否启用加密表。
innodb_encryption_rotate_key_age理想情况下需要轮换表空间密钥的天数。
innodb_encryption_rotation_iops从表空间密钥存储区读取密钥以用于表空间加密的数据 IOPS。
innodb_encryption_threads在定义了加密表空间的情况下,在执行诸如切换密钥之类的任务时,InnoDB 应该使用的加密线程数。
innodb_fake_changes是否将每个更新视为更改,即使存储引擎本身内部没有进行任何更改。
innodb_fast_shutdown是否在关闭之前不检查重做日志文件是否被清空,并且只清空缓存池中的缓存页以提高关闭速度。
innodb_fatal_semaphore_wait_threshold如果使用 POSIX 信号量并且 Semaphore 队列长度大于该值,那么按常规情况使用 InnoDB 内部时运行线程将使用 sem_timedwait() 而非 sem_wait()。
innodb_file_formatInnoDB 行格式标志。
innodb_file_format_check是否要在 MySQL 中启用文件格式检查。
innodb_file_format_max最大的 InnoDB 文件格式。
innodb_file_per_table是否为 InnoDB 表创建独立的表空间。
innodb_fill_factor用于 AVL 树结构的填充因子。
innodb_flush_log_at_timeout每个 innodb_lock_wait_timeout 秒强制将所有未同步重做日志写入磁盘。
innodb_flush_log_at_trx_commit指示在提交事务时强制将重做日志缓冲区中的所有日志写入磁盘,还是将日志保留在缓冲区中直到缓冲区已填满。
innodb_flush_method定义 MySQL 在冲刷日志文件、重做日志和写入 InnoDB 双写缓冲区时使用的 IO 方法类型。
innodb_flush_neighbors控制是否将相邻缓冲池页面聚集到同一次缓冲池写入中。
innodb_flush_sync每个 fsync() 调用结束时是否完全同步 Innodb 写入。
innodb_flushing_avg_loops缓存池刷新时,InnoDB 的估计平均循环数。
innodb_force_load_corrupted指示是否必须强制加载已损坏的 InnoDB 页面
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在MySQL 8.0中,可以通过使用SET语句来定义全局变量。可以在MySQL配置文件的[mysqld]部分或者在运行时使用SET GLOBAL语句来定义全局变量。 下面是在MySQL 8.0中定义全局变量的步骤: 1. 编辑MySQL配置文件。可以通过找到并打开my.cnf文件来编辑配置文件。在[mysqld]部分添加如下行: ``` set-variable = variable_name=value ``` 其中,variable_name是要定义的全局变量名称,value是要给变量赋的值。 2. 保存并关闭my.cnf文件。 3. 重启MySQL服务,使得配置文件的更改生效。 4. 验证全局变量是否定义成功。可以使用SHOW GLOBAL VARIABLES命令来检查已经定义的全局变量。例如,如果要查看一个名为my_variable的全局变量的值,可以运行以下查询: ``` SHOW GLOBAL VARIABLES LIKE 'my_variable'; ``` 这将返回变量名和值的列表。 另外,在运行时也可以使用SET GLOBAL语句进行全局变量的定义。例如,要将一个名为my_variable的全局变量设置为10,可以运行以下查询: ``` SET GLOBAL my_variable=10; ``` 总之,在MySQL 8.0中,可以通过编辑配置文件或者使用SET GLOBAL语句来定义全局变量,并且使用SHOW GLOBAL VARIABLES命令来验证已定义的全局变量的值。 ### 回答2: 在MySQL 8.0中,可以通过以下方式定义全局变量。 1. 在MySQL配置文件中定义全局变量: 打开MySQL配置文件(通常是my.cnf或my.ini),在[mysqld]部分添加以下内容: ``` [mysqld] global_variable_name = value ``` 其中,global_variable_name是要定义的全局变量的名称,value是变量的值。 2. 使用SET GLOBAL语句定义全局变量: 在MySQL命令行或客户端工具中执行以下语句来设置全局变量: ``` SET GLOBAL global_variable_name = value; ``` 其中,global_variable_name是要定义的全局变量的名称,value是变量的值。 需要注意的是,定义全局变量需要有适当的权限。通常,只有具有SUPER权限的用户才能定义全局变量。此外,全局变量定义后可以在整个MySQL实例中使用,包括所有数据库和连接。 要使用已定义的全局变量,可以在SQL语句中通过@符号引用变量,例如: ``` SELECT @global_variable_name; ``` 总之,在MySQL 8.0中,可以通过编辑配置文件或使用SET GLOBAL语句来定义全局变量,以便在整个MySQL实例中使用。 ### 回答3: MySQL 8.0可以通过使用SET语句和@@符号定义全局变量。 使用SET语句定义全局变量的语法如下: SET GLOBAL variable_name = value; 其中,variable_name是要定义的全局变量的名称,value是要为该变量赋的值。设置全局变量之后,它的值将在整个MySQL服务器的作用范围内生效。 使用@@符号获取全局变量的值的语法如下: SELECT @@variable_name; 其中,variable_name是要获取值的全局变量的名称。通过执行以上语句,可以获取到指定全局变量的当前值。 举个例子,假设我们要定义一个全局变量my_var并将其值设为100: SET GLOBAL my_var = 100; 接着,我们可以通过以下语句获取my_var的值并输出: SELECT @@my_var; 以上就是在MySQL 8.0中定义全局变量的方法。需要注意的是,全局变量的作用范围是整个MySQL服务器,默认情况下只有管理员用户才有权限定义和修改全局变量。因此,在进行全局变量的定义和使用时,需要确保具备相应的权限。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值