• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 复制和二进制日志记录选项以及变量参考

    以下两节提供有关适用于复制和二进制日志的MySQL命令行选项和系统变量的基本信息。

    复制选项和变量

    下表中的命令行选项和系统变量与复制主服务器和复制从属服务器有关。“复制主服务器选项和变量”,提供了有关与复制主服务器有关的选项和变量的更多详细信息。有关与复制从站有关的选项和变量的更多信息,请参见“复制从站选项和变量”。

    • abort-slave-event-count:mysql-test用于调试和测试复制的选项。
    • auto_increment_increment:AUTO_INCREMENT列增加此值。
    • auto_increment_offset:偏移已添加到AUTO_INCREMENT列。
    • binlog_expire_logs_seconds:几秒钟后清除二进制日志。
    • binlog_gtid_simple_recovery:控制GTID恢复过程中二进制日志的迭代方式。
    • Com_change_master:CHANGE MASTER TO语句的计数。
    • Com_show_master_status:SHOW MASTER STATUS语句的计数。
    • Com_show_slave_hosts:SHOW SLAVE HOSTS语句的计数。
    • Com_show_slave_status:SHOW SLAVE STATUS语句的计数。
    • Com_slave_start:START SLAVE语句的计数。
    • Com_slave_stop:STOP SLAVE语句的计数。
    • disconnect-slave-event-count:mysql-test用于调试和测试复制的选项。
    • enforce_gtid_consistency:防止执行无法以事务安全方式记录的语句。
    • expire_logs_days:几天后清除二进制日志。
    • gtid_executed:全局:二进制日志(全局)或当前事务(会话)中的所有GTID。只读。
    • gtid_executed_compression_period:每次发生这么多事务时,都要压缩gtid_exected表。0表示从不压缩该表。仅在禁用二进制日志记录时适用。
    • gtid_mode:控制是否启用基于GTID的日志记录以及日志可以包含的事务类型。
    • gtid_next:指定GTID用于下一条要执行的语句;有关详细信息,请参见文档。
    • gtid_owned:此客户端(会话)或所有客户端拥有的GTID集合,以及所有者的线程ID(全局)。只读。
    • gtid_purged:已从二进制日志中清除的所有GTID的集合。
    • init_slave:从站连接到主站时执行的语句。
    • log_bin_trust_function_creators:如果等于0(默认值),则在使用--log-bin时,只有具有SUPER特权的用户才能创建存储的函数,并且前提是所创建的函数不会破坏二进制日志记录。
    • log_statements_unsafe_for_binlog:禁止将错误1592警告写入错误日志。
    • master-info-file:记住主文件的文件的位置和名称,以及I / O复制线程在主文件的二进制日志中的位置。
    • master-retry-count:从站在放弃之前尝试连接到主站的次数。
    • master_info_repository:是否将主服务器的二进制日志中的主服务器状态信息和复制I / O线程位置写入文件或表。
    • max_relay_log_size:如果非零,则继电器日志的大小超过此值时将自动旋转。如果为零,则旋转发生的大小由max_binlog_size的值确定。
    • original_commit_timestamp:在原始主机上提交事务的时间。
    • immediate_server_version:是复制拓扑中直接主机的服务器的MySQL Server版本号。
    • original_server_version:最初提交事务的服务器的MySQL Server版本号。
    • relay_log:用于中继日志的位置和基本名称。
    • relay_log_basename:中继日志的完整路径,包括文件名。
    • relay_log_index:用于保存最近中继日志列表的文件的位置和名称。
    • relay_log_info_file:从站记录有关中继日志的信息的文件。
    • relay_log_info_repository:是否将复制SQL线程在中继日志中的位置写入文件或表。
    • relay_log_purge:确定是否清除中继日志。
    • relay_log_recovery:是否启用了启动时从主机自动恢复中继日志文件的功能;必须为碰撞安全从站启用。
    • relay_log_space_limit:用于所有中继日志的最大空间。
    • replicate-do-db:告诉从SQL线程将复制限制到指定的数据库。
    • replicate-do-table:告诉从SQL线程将复制限制到指定的表。
    • replicate-ignore-db:告诉从SQL线程不要复制到指定的数据库。
    • replicate-ignore-table:告诉从SQL线程不要复制到指定的表。
    • replicate-rewrite-db:更新到数据库名称与原始数据库不同。
    • replicate-same-server-id:在复制中(如果启用),请勿跳过具有我们服务器ID的事件。
    • replicate-wild-do-table:告诉从线程将复制限制到与指定的通配符模式匹配的表。
    • replicate-wild-ignore-table:告诉从线程不要复制到与给定通配符模式匹配的表。
    • report_host:在从站注册期间要向主站报告的从站的主机名或IP。
    • report_password:从属服务器应向主服务器报告的任意密码。与MySQL复制用户帐户的密码不同。
    • report_port:在从站注册期间向主站报告的用于连接到从站的端口。
    • report_user:从属服务器应向主服务器报告的任意用户名。与用于MySQL复制用户帐户的名称不同。
    • Rpl_semi_sync_master_clients:半同步从站的数量。
    • rpl_semi_sync_master_enabled:是否在主服务器上启用了半同步复制。
    • Rpl_semi_sync_master_net_avg_wait_time:主机等待从机回复的平均时间。
    • Rpl_semi_sync_master_net_wait_time:主机等待从机回复的总时间。
    • Rpl_semi_sync_master_net_waits:主服务器等待从属服务器答复的总次数。
    • Rpl_semi_sync_master_no_times:主服务器关闭半同步复制的次数。
    • Rpl_semi_sync_master_no_tx:未成功确认的提交数。
    • Rpl_semi_sync_master_status:半同步复制在主服务器上是否可运行。
    • Rpl_semi_sync_master_timefunc_failures:主站调用时间功能时发生故障的次数。
    • rpl_semi_sync_master_timeout:等待从设备确认的毫秒数。
    • rpl_semi_sync_master_trace_level:主服务器上的半同步复制调试跟踪级别。
    • Rpl_semi_sync_master_tx_avg_wait_time:主服务器等待每笔交易的平均时间。
    • Rpl_semi_sync_master_tx_wait_time:主服务器等待交易的总时间。
    • Rpl_semi_sync_master_tx_waits:主服务器等待交易的总次数。
    • rpl_semi_sync_master_wait_for_slave_count:主机在继续之前,每个事务主机必须收到多少个从机确认。
    • rpl_semi_sync_master_wait_no_slave:即使没有从机,主机是否也要等待超时。
    • rpl_semi_sync_master_wait_point:从属事务接收确认的等待点。
    • Rpl_semi_sync_master_wait_pos_backtraverse:主设备等待事件的二进制坐标比以前等待的事件低的总次数。
    • Rpl_semi_sync_master_wait_sessions:当前等待从属答复的会话数。
    • Rpl_semi_sync_master_yes_tx:成功确认的提交数。
    • rpl_semi_sync_slave_enabled:是否在从属服务器上启用了半同步复制。
    • Rpl_semi_sync_slave_status:半同步复制是否可在从属服务器上运行。
    • rpl_semi_sync_slave_trace_level:从属服务器上的半同步复制调试跟踪级别。
    • rpl_read_size:设置从二进制日志文件和中继日志文件读取的最小数据量(以字节为单位)。
    • rpl_stop_slave_timeout:设置STOP SLAVE在超时之前等待的秒数。
    • server_uuid:服务器的全局唯一ID,在服务器启动时自动(重新)生成。
    • show-slave-auth-info:在此主机上的“显示从主机”中显示用户名和密码。
    • skip-slave-start:如果设置,则从站不会自动启动。
    • slave_load_tmpdir:从属服务器在复制LOAD DATA语句时应放置其临时文件的位置。
    • slave_net_timeout:在中止读取之前等待主/从连接中的更多数据的秒数。
    • slave-skip-errors:当查询从提供的列表中返回错误时,通知从属线程继续复制。
    • slave_checkpoint_group:在调用检查点操作以更新进度状态之前,多线程从属服务器处理的最大事务数。NDB群集不支持。
    • slave_checkpoint_period:在此毫秒数后,将多线程从服务器的进度状态更新并将刷新日志信息刷新到磁盘。NDB群集不支持。
    • slave_compressed_protocol:使用主/从协议压缩。
    • slave_exec_mode:允许在IDEMPOTENT模式(抑制键和某些其他错误)和STRICT模式之间切换从属线程;STRICT模式是默认模式,但始终使用IDEMPOTENT的NDB Cluster除外。
    • slave_max_allowed_packet:可以从复制主机发送到从机的数据包的最大大小(以字节为单位);覆盖max_allowed_packet。
    • Slave_open_temp_tables:从属SQL线程当前已打开的临时表的数量。
    • slave_parallel_type:告诉从服务器使用时间戳信息(LOGICAL_CLOCK)或数据库分区(DATABASE)来并行化事务。
    • slave_parallel_workers:用于并行执行复制事务的应用程序线程数。值0禁用从属多线程。MySQL Cluster不支持。
    • slave_pending_jobs_size_max:保存尚未应用事件的从属工作者队列的最大大小。
    • slave_preserve_commit_order:确保使用并行应用程序线程时,从属工人的所有提交都按照与主服务器上相同的顺序进行,以保持一致性。
    • slave_rows_search_algorithms:确定用于从属更新批处理的搜索算法。列表INDEX_SEARCH,TABLE_SCAN,HASH_SCAN中的任意2或3。
    • Slave_rows_last_search_algorithm_used:此从属服务器最近使用的搜索算法,以查找行以进行基于行的复制(索引,表或哈希扫描)。
    • slave_transaction_retries:从属SQL线程在放弃并停止之前由于死锁或锁等待超时而失败的情况下重试事务的次数。
    • slave_type_conversions:控制复制从属服务器上的类型转换模式。值是列表中零个或多个元素的列表:ALL_LOSSY,ALL_NON_LOSSY。设置为空字符串以禁止主机和从机之间的类型转换。
    • sql_log_bin:控制当前会话的二进制日志记录。
    • sql_slave_skip_counter:来自主服务器的从属服务器应跳过的事件数。与GTID复制不兼容。
    • sync_master_info:在每个#th事件之后,将master.info同步到磁盘。
    • sync_relay_log:每个第#个事件后,将中继日志同步到磁盘。
    • sync_relay_log_info:每个第#个事件后,将relay.info文件同步到磁盘。
    • transaction_write_set_extraction:定义用于对事务期间提取的写入进行哈希处理的算法。

    有关与mysqld一起使用的所有命令行选项,系统和状态变量的列表,请参见“服务器选项,系统变量和状态变量参考”。

    二进制记录选项和变量

    下表中的命令行选项和系统变量与二进制日志有关。“二进制日志记录选项和变量”提供了有关与二进制日志记录有关的选项和变量的更多详细信息。有关二进制日志的其他常规信息,请参见“MySQL服务器二进制日志”。

    • binlog-checksum:启用/禁用二进制日志校验和。
    • binlog-do-db:将二进制日志记录限制为特定的数据库。
    • binlog_format:指定二进制日志的格式。
    • binlog-ignore-db:告诉主服务器不应将对给定数据库的更新记录到二进制日志中。
    • binlog-row-event-max-size:二进制日志最大事件大小。
    • binlog_encryption:在此服务器上为二进制日志文件和中继日志文件启用加密。
    • binlog_rotate_encryption_master_key_at_startup:在服务器启动时旋转二进制日志主密钥。
    • Binlog_cache_disk_use:使用临时文件而不是二进制日志缓存的事务数。
    • binlog_cache_size:在事务期间用于保存二进制日志的SQL语句的缓存大小。
    • Binlog_cache_use:使用临时二进制日志缓存的事务数。
    • binlog_checksum:启用/禁用二进制日志校验和。
    • binlog_direct_non_transactional_updates:导致使用语句格式对非事务引擎的更新直接写入二进制日志。使用之前,请参阅文档。
    • binlog_error_action:控制服务器无法写入二进制日志时发生的情况。
    • binlog_group_commit_sync_delay:设置将事务同步到磁盘之前要等待的微秒数。
    • binlog_group_commit_sync_no_delay_count:设置中止binlog_group_commit_sync_delay指定的当前延迟之前要等待的最大事务数。
    • binlog_max_flush_queue_time:刷新到二进制日志之前需要多长时间读取事务。
    • binlog_order_commits:是否以与写入二进制日志相同的顺序提交。
    • binlog_row_image:记录行更改时使用完整或最小图像。
    • binlog_row_metadata:配置使用基于行的日志记录时与表相关的元数据二进制记录的数量。
    • binlog_row_value_options:为基于行的复制启用部分JSON更新的二进制日志记录。
    • binlog_rows_query_log_events:启用后,在使用基于行的日志记录时启用对行查询日志事件的记录。默认禁用。为5.6之前的从属/阅读器生成日志时,请勿启用。
    • Binlog_stmt_cache_disk_use:使用临时文件而不是二进制日志语句高速缓存的非事务语句的数量。
    • binlog_stmt_cache_size:缓存的大小,以保存事务期间二进制日志的非事务性语句。
    • Binlog_stmt_cache_use:使用临时二进制日志语句高速缓存的语句数。
    • binlog_transaction_dependency_tracking:依赖项信息的来源(提交时间戳或事务写集),可用来评估从属多线程应用程序可以并行执行哪些事务。
    • binlog_transaction_dependency_history_size:保留的哈希值用于查找最近更新某一行的事务。
    • Com_show_binlog_events:SHOW BINLOG EVENTS语句的计数。
    • Com_show_binlogs:SHOW BINLOGS语句的计数。
    • log-bin:指定二进制日志文件的基本名称。
    • log-bin-index:指定二进制日志索引文件的名称。
    • log_bin:是否启用了二进制日志。
    • log_bin_basename:二进制日志文件的路径和基本名称。
    • log_bin_use_v1_row_events:服务器是否正在使用版本1二进制日志行事件。
    • log_slave_updates:从服务器是否应将其SQL线程执行的更新记录到自己的二进制日志中。
    • master_verify_checksum:导致主机在从二进制日志读取时检查校验和。
    • max-binlog-dump-events:mysql-test用于调试和测试复制的选项。
    • max_binlog_cache_size:可用于限制用于缓存多语句事务的总大小。
    • max_binlog_size:大小超过此值时,二进制日志将自动旋转。
    • max_binlog_stmt_cache_size:可用于限制在事务期间用于缓存所有非事务性语句的总大小。
    • slave-sql-verify-checksum:使从站在从继电器日志中读取时检查校验和。
    • slave_sql_verify_checksum:使从站从继电器日志中读取时检查校验和。
    • sporadic-binlog-dump-fail:mysql-test用于调试和测试复制的选项。
    • sync_binlog:在每个#th事件之后,将二进制日志同步刷新到磁盘。

    有关与mysqld一起使用的所有命令行选项,系统和状态变量的列表,请参见“服务器选项,系统变量和状态变量参考”。