<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h4 class="title">
      <a name="replication-options-replica">
      </a>
      19.1.6.3 Replica Server Options and Variables
     </h4>
    </div>
   </div>
  </div>
  <p>
   This section explains the server options and system variables that
      apply to replica servers and contains the following:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a class="xref" href="replication-options-replica.html#replication-optvars-slaves" title="Startup Options for Replica Servers">
       Startup Options for Replica Servers
      </a>
     </p>
    </li>
    <li class="listitem">
     <p>
      <a class="xref" href="replication-options-replica.html#replication-sysvars-slaves" title="System Variables Used on Replica Servers">
       System Variables Used on Replica Servers
      </a>
     </p>
    </li>
   </ul>
  </div>
  <p>
   Specify the options either on the
   <a class="link" href="command-line-options.html" title="6.2.2.1 Using Options on the Command Line">
    command line
   </a>
   or in an
   <a class="link" href="option-files.html" title="6.2.2.2 Using Option Files">
    option file
   </a>
   . Many of the
      options can be set while the server is running by using the
   <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
    <code class="literal">
     CHANGE REPLICATION SOURCE TO
    </code>
   </a>
   statement. Specify system variable values using
   <a class="link" href="set-variable.html" title="15.7.6.1 SET Syntax for Variable Assignment">
    <code class="literal">
     SET
    </code>
   </a>
   .
  </p>
  <p>
   <b>
    Server ID.
   </b>
   On the source and each replica, you must set the
   <a class="link" href="replication-options.html#sysvar_server_id">
    <code class="literal">
     server_id
    </code>
   </a>
   system variable to
        establish a unique replication ID in the range from 1 to
        2
   <sup>
    32
   </sup>
   − 1.
   <span class="quote">
    “
    <span class="quote">
     Unique
    </span>
    ”
   </span>
   means that each ID must be different from every other ID in use
        by any other source or replica in the replication topology.
        Example
   <code class="filename">
    my.cnf
   </code>
   file:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-ini"><div class="docs-select-all right" id="sa27801978"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-ini"><span class="token selector">[mysqld]</span>
<span class="token constant">server-id</span><span class="token attr-value"><span class="token punctuation">=</span>3</span></code></pre>
  </div>
  <div class="simplesect">
   <div class="titlepage">
    <div>
     <div class="simple">
      <h5 class="title">
       <a name="replication-optvars-slaves">
       </a>
       Startup Options for Replica Servers
      </h5>
     </div>
    </div>
   </div>
   <p>
    This section explains startup options for controlling replica
        servers. Many of these options can be set while the server is
        running by using the
    <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
     <code class="literal">
      CHANGE REPLICATION
        SOURCE TO
     </code>
    </a>
    statement. Others, such as the
    <code class="option">
     --replicate-*
    </code>
    options, can be set only when the
        replica server starts. Replication-related system variables are
        discussed later in this section.
   </p>
   <div class="itemizedlist">
    <ul class="itemizedlist" style="list-style-type: disc; ">
     <li class="listitem">
      <p>
       <a name="option_mysqld_master-retry-count">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_master-retry-count">
        <code class="option">
         --master-retry-count=
         <em class="replaceable">
          <code>
           count
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143879712">
      </a>
      <a class="indexterm" name="idm46045143878256">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for master-retry-count">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --master-retry-count=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value (64-bit platforms)
          </th>
          <td>
           <code class="literal">
            18446744073709551615
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value (32-bit platforms)
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       This option is deprecated; expect it to be removed in a
            future MySQL release. Use the
       <code class="literal">
        SOURCE_RETRY_COUNT
       </code>
       option of the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE TO
        </code>
       </a>
       statement, instead.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_max-relay-log-size">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_max-relay-log-size">
        <code class="option">
         --max-relay-log-size=
         <em class="replaceable">
          <code>
           size
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143852192">
      </a>
      <a class="indexterm" name="idm46045143850736">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for max_relay_log_size">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --max-relay-log-size=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
             max_relay_log_size
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            4096
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The size at which the server rotates relay log files
            automatically. If this value is nonzero, the relay log is
            rotated automatically when its size exceeds this value. If
            this value is zero (the default), the size at which relay
            log rotation occurs is determined by the value of
       <a class="link" href="replication-options-binary-log.html#sysvar_max_binlog_size">
        <code class="literal">
         max_binlog_size
        </code>
       </a>
       . For more
            information, see
       <a class="xref" href="replica-logs-relaylog.html" title="19.2.4.1 The Relay Log">
        Section 19.2.4.1, “The Relay Log”
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_relay-log-purge">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_relay-log-purge">
        <code class="option">
         --relay-log-purge={0|1}
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143814160">
      </a>
      <a class="indexterm" name="idm46045143812672">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_purge">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-purge[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_purge">
             relay_log_purge
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Disable or enable automatic purging of relay logs as soon as
            they are no longer needed. The default value is 1 (enabled).
            This is a global variable that can be changed dynamically
            with
       <code class="literal">
        SET GLOBAL relay_log_purge =
        <em class="replaceable">
         <code>
          N
         </code>
        </em>
       </code>
       . Disabling purging of
            relay logs when enabling the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_recovery">
        <code class="option">
         --relay-log-recovery
        </code>
       </a>
       option
            risks data consistency and is therefore not crash-safe.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_relay-log-space-limit">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_relay-log-space-limit">
        <code class="option">
         --relay-log-space-limit=
         <em class="replaceable">
          <code>
           size
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143785744">
      </a>
      <a class="indexterm" name="idm46045143784240">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_space_limit">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-space-limit=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_space_limit">
             relay_log_space_limit
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            18446744073709551615
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       This option places an upper limit on the total size in bytes
            of all relay logs on the replica. A value of 0 means
       <span class="quote">
        “
        <span class="quote">
         no limit
        </span>
        ”
       </span>
       . This is useful for a replica server
            host that has limited disk space. When the limit is reached,
            the I/O (receiver) thread stops reading binary log events
            from the source server until the SQL thread has caught up
            and deleted some unused relay logs. Note that this limit is
            not absolute: There are cases where the SQL (applier) thread
            needs more events before it can delete relay logs. In that
            case, the receiver thread exceeds the limit until it becomes
            possible for the applier thread to delete some relay logs
            because not doing so would cause a deadlock. You should not
            set
       <a class="link" href="replication-options-replica.html#option_mysqld_relay-log-space-limit">
        <code class="option">
         --relay-log-space-limit
        </code>
       </a>
       to less than twice the value of
       <a class="link" href="replication-options-replica.html#option_mysqld_max-relay-log-size">
        <code class="option">
         --max-relay-log-size
        </code>
       </a>
       (or
       <a class="link" href="replication-options-binary-log.html#sysvar_max_binlog_size">
        <code class="option">
         --max-binlog-size
        </code>
       </a>
       if
       <a class="link" href="replication-options-replica.html#option_mysqld_max-relay-log-size">
        <code class="option">
         --max-relay-log-size
        </code>
       </a>
       is 0).
            In that case, there is a chance that the receiver thread
            waits for free space because
       <a class="link" href="replication-options-replica.html#option_mysqld_relay-log-space-limit">
        <code class="option">
         --relay-log-space-limit
        </code>
       </a>
       is
            exceeded, but the applier thread has no relay log to purge
            and is unable to satisfy the receiver thread. This forces
            the receiver thread to ignore
       <a class="link" href="replication-options-replica.html#option_mysqld_relay-log-space-limit">
        <code class="option">
         --relay-log-space-limit
        </code>
       </a>
       temporarily.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-do-db">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db=
         <em class="replaceable">
          <code>
           db_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143745984">
      </a>
      <a class="indexterm" name="idm46045143744496">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-do-db">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-do-db=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter using the name of a database.
            Such filters can also be created using
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_DO_DB
        </code>
       </a>
       .
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-do-db:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <p>
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
                server instance that is configured for Group
                Replication, because filtering transactions on some
                servers would make the group unable to reach agreement
                on a consistent state. Channel specific replication
                filters can be used on replication channels that are not
                directly involved with Group Replication, such as where
                a group member also acts as a replica to a source that
                is outside the group. They cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
      </p>
      <p>
       The precise effect of this replication filter depends on
            whether statement-based or row-based replication is in use.
      </p>
      <p>
       <b>
        Statement-based replication.
       </b>
       Tell the replication SQL thread to restrict replication to
              statements where the default database (that is, the one
              selected by
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       ) is
       <em class="replaceable">
        <code>
         db_name
        </code>
       </em>
       . To specify more than
              one database, use this option multiple times, once for
              each database; however, doing so does
       <span class="emphasis">
        <em>
         not
        </em>
       </span>
       replicate cross-database
              statements such as
       <code class="literal">
        UPDATE
        <em class="replaceable">
         <code>
          some_db.some_table
         </code>
        </em>
        SET
              foo='bar'
       </code>
       while a different database (or no
              database) is selected.
      </p>
      <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Warning
       </div>
       <p>
        To specify multiple databases you
        <span class="emphasis">
         <em>
          must
         </em>
        </span>
        use multiple instances of this
              option. Because database names can contain commas, if you
              supply a comma separated list then the list is treated as
              the name of a single database.
       </p>
      </div>
      <p>
       An example of what does not work as you might expect when
            using statement-based replication: If the replica is started
            with
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db=sales
        </code>
       </a>
       and you issue the following statements on the source, the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement is
       <span class="emphasis">
        <em>
         not
        </em>
       </span>
       replicated:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa61287649"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> prices<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> sales<span class="token punctuation">.</span>january <span class="token keyword">SET</span> amount<span class="token operator">=</span>amount<span class="token operator">+</span><span class="token number">1000</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       The main reason for this
       <span class="quote">
        “
        <span class="quote">
         check just the default
            database
        </span>
        ”
       </span>
       behavior is that it is difficult from the
            statement alone to know whether it should be replicated (for
            example, if you are using multiple-table
       <a class="link" href="delete.html" title="15.2.2 DELETE Statement">
        <code class="literal">
         DELETE
        </code>
       </a>
       statements or
            multiple-table
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statements that act across multiple databases). It is also
            faster to check only the default database rather than all
            databases if there is no need.
      </p>
      <p>
       <b>
        Row-based replication.
       </b>
       Tells the replication SQL thread to restrict replication
              to database
       <em class="replaceable">
        <code>
         db_name
        </code>
       </em>
       . Only
              tables belonging to
       <em class="replaceable">
        <code>
         db_name
        </code>
       </em>
       are
              changed; the current database has no effect on this.
              Suppose that the replica is started with
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db=sales
        </code>
       </a>
       and
              row-based replication is in effect, and then the following
              statements are run on the source:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa88155166"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> prices<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> sales<span class="token punctuation">.</span>february <span class="token keyword">SET</span> amount<span class="token operator">=</span>amount<span class="token operator">+</span><span class="token number">100</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       The
       <code class="literal">
        february
       </code>
       table in the
       <code class="literal">
        sales
       </code>
       database on the replica is changed
            in accordance with the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement; this occurs whether or not the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement was issued.
            However, issuing the following statements on the source has
            no effect on the replica when using row-based replication
            and
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db=sales
        </code>
       </a>
       :
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa78771600"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> prices<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> prices<span class="token punctuation">.</span>march <span class="token keyword">SET</span> amount<span class="token operator">=</span>amount<span class="token number">-25</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       Even if the statement
       <code class="literal">
        USE prices
       </code>
       were
            changed to
       <code class="literal">
        USE sales
       </code>
       , the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement's
            effects would still not be replicated.
      </p>
      <p>
       Another important difference in how
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db
        </code>
       </a>
       is handled
            in statement-based replication as opposed to row-based
            replication occurs with regard to statements that refer to
            multiple databases. Suppose that the replica is started with
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db=db1
        </code>
       </a>
       , and
            the following statements are executed on the source:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa16055143"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> db1<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> db1<span class="token punctuation">.</span>table1<span class="token punctuation">,</span> db2<span class="token punctuation">.</span>table2 <span class="token keyword">SET</span> db1<span class="token punctuation">.</span>table1<span class="token punctuation">.</span>col1 <span class="token operator">=</span> <span class="token number">10</span><span class="token punctuation">,</span> db2<span class="token punctuation">.</span>table2<span class="token punctuation">.</span>col2 <span class="token operator">=</span> <span class="token number">20</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       If you are using statement-based replication, then both
            tables are updated on the replica. However, when using
            row-based replication, only
       <code class="literal">
        table1
       </code>
       is
            affected on the replica; since
       <code class="literal">
        table2
       </code>
       is
            in a different database,
       <code class="literal">
        table2
       </code>
       on the
            replica is not changed by the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       . Now suppose that,
            instead of the
       <code class="literal">
        USE db1
       </code>
       statement, a
       <code class="literal">
        USE db4
       </code>
       statement had been used:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa8995926"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> db4<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> db1<span class="token punctuation">.</span>table1<span class="token punctuation">,</span> db2<span class="token punctuation">.</span>table2 <span class="token keyword">SET</span> db1<span class="token punctuation">.</span>table1<span class="token punctuation">.</span>col1 <span class="token operator">=</span> <span class="token number">10</span><span class="token punctuation">,</span> db2<span class="token punctuation">.</span>table2<span class="token punctuation">.</span>col2 <span class="token operator">=</span> <span class="token number">20</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       In this case, the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement would have no effect on the replica when using
            statement-based replication. However, if you are using
            row-based replication, the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       would change
       <code class="literal">
        table1
       </code>
       on the replica, but not
       <code class="literal">
        table2
       </code>
       —in other words, only tables
            in the database named by
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db
        </code>
       </a>
       are
            changed, and the choice of default database has no effect on
            this behavior.
      </p>
      <p>
       If you need cross-database updates to work, use
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=
         <em class="replaceable">
          <code>
           db_name
          </code>
         </em>
         .%
        </code>
       </a>
       instead. See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       .
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        This option affects replication in the same manner that
        <a class="link" href="replication-options-binary-log.html#option_mysqld_binlog-do-db">
         <code class="option">
          --binlog-do-db
         </code>
        </a>
        affects
              binary logging, and the effects of the replication format
              on how
        <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
         <code class="option">
          --replicate-do-db
         </code>
        </a>
        affects replication behavior are the same as those of the
              logging format on the behavior of
        <a class="link" href="replication-options-binary-log.html#option_mysqld_binlog-do-db">
         <code class="option">
          --binlog-do-db
         </code>
        </a>
        .
       </p>
       <p>
        This option has no effect on
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          BEGIN
         </code>
        </a>
        ,
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          COMMIT
         </code>
        </a>
        , or
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          ROLLBACK
         </code>
        </a>
        statements.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-ignore-db">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db=
         <em class="replaceable">
          <code>
           db_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143668800">
      </a>
      <a class="indexterm" name="idm46045143667344">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-ignore-db">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-ignore-db=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter using the name of a database.
            Such filters can also be created using
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_IGNORE_DB
        </code>
       </a>
       .
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-ignore-db:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <p>
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
                server instance that is configured for Group
                Replication, because filtering transactions on some
                servers would make the group unable to reach agreement
                on a consistent state. Channel specific replication
                filters can be used on replication channels that are not
                directly involved with Group Replication, such as where
                a group member also acts as a replica to a source that
                is outside the group. They cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
      </p>
      <p>
       To specify more than one database to ignore, use this option
            multiple times, once for each database. Because database
            names can contain commas, if you supply a comma-separated
            list, it is treated as the name of a single database.
      </p>
      <p>
       As with
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db
        </code>
       </a>
       ,
            the precise effect of this filtering depends on whether
            statement-based or row-based replication is in use, and are
            described in the next several paragraphs.
      </p>
      <p>
       <b>
        Statement-based replication.
       </b>
       Tells the replication SQL thread not to replicate any
              statement where the default database (that is, the one
              selected by
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       ) is
       <em class="replaceable">
        <code>
         db_name
        </code>
       </em>
       .
      </p>
      <p>
       <b>
        Row-based replication.
       </b>
       Tells the replication SQL thread not to update any tables
              in the database
       <em class="replaceable">
        <code>
         db_name
        </code>
       </em>
       . The
              default database has no effect.
      </p>
      <p>
       When using statement-based replication, the following
            example does not work as you might expect. Suppose that the
            replica is started with
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db=sales
        </code>
       </a>
       and you issue the following statements on the source:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa35882621"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> prices<span class="token punctuation">;</span>
<span class="token keyword">UPDATE</span> sales<span class="token punctuation">.</span>january <span class="token keyword">SET</span> amount<span class="token operator">=</span>amount<span class="token operator">+</span><span class="token number">1000</span><span class="token punctuation">;</span></code></pre>
      </div>
      <p>
       The
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement
       <span class="emphasis">
        <em>
         is
        </em>
       </span>
       replicated in such a case because
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db
        </code>
       </a>
       applies
            only to the default database (determined by the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement). Because the
       <code class="literal">
        sales
       </code>
       database was specified explicitly
            in the statement, the statement has not been filtered.
            However, when using row-based replication, the
       <a class="link" href="update.html" title="15.2.17 UPDATE Statement">
        <code class="literal">
         UPDATE
        </code>
       </a>
       statement's
            effects are
       <span class="emphasis">
        <em>
         not
        </em>
       </span>
       propagated to the
            replica, and the replica's copy of the
       <code class="literal">
        sales.january
       </code>
       table is unchanged; in this
            instance,
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db=sales
        </code>
       </a>
       causes
       <span class="emphasis">
        <em>
         all
        </em>
       </span>
       changes made to tables in
            the source's copy of the
       <code class="literal">
        sales
       </code>
       database to be ignored by the replica.
      </p>
      <p>
       You should not use this option if you are using
            cross-database updates and you do not want these updates to
            be replicated. See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       .
      </p>
      <p>
       If you need cross-database updates to work, use
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-ignore-table">
        <code class="option">
         --replicate-wild-ignore-table=
         <em class="replaceable">
          <code>
           db_name
          </code>
         </em>
         .%
        </code>
       </a>
       instead. See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       .
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        This option affects replication in the same manner that
        <a class="link" href="replication-options-binary-log.html#option_mysqld_binlog-ignore-db">
         <code class="option">
          --binlog-ignore-db
         </code>
        </a>
        affects
              binary logging, and the effects of the replication format
              on how
        <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
         <code class="option">
          --replicate-ignore-db
         </code>
        </a>
        affects replication behavior are the same as those of the
              logging format on the behavior of
        <a class="link" href="replication-options-binary-log.html#option_mysqld_binlog-ignore-db">
         <code class="option">
          --binlog-ignore-db
         </code>
        </a>
        .
       </p>
       <p>
        This option has no effect on
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          BEGIN
         </code>
        </a>
        ,
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          COMMIT
         </code>
        </a>
        , or
        <a class="link" href="commit.html" title="15.3.1 START TRANSACTION, COMMIT, and ROLLBACK Statements">
         <code class="literal">
          ROLLBACK
         </code>
        </a>
        statements.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-do-table">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-table">
        <code class="option">
         --replicate-do-table=
         <em class="replaceable">
          <code>
           db_name.tbl_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143615152">
      </a>
      <a class="indexterm" name="idm46045143613696">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-do-table">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-do-table=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter by telling the replication SQL
            thread to restrict replication to a given table. To specify
            more than one table, use this option multiple times, once
            for each table. This works for both cross-database updates
            and default database updates, in contrast to
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-db">
        <code class="option">
         --replicate-do-db
        </code>
       </a>
       . See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       . You can also create
            such a filter by issuing a
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_DO_TABLE
        </code>
       </a>
       statement.
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-do-table:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name.tbl_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <p>
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
                server instance that is configured for Group
                Replication, because filtering transactions on some
                servers would make the group unable to reach agreement
                on a consistent state. Channel specific replication
                filters can be used on replication channels that are not
                directly involved with Group Replication, such as where
                a group member also acts as a replica to a source that
                is outside the group. They cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
      </p>
      <p>
       This option affects only statements that apply to tables. It
            does not affect statements that apply only to other database
            objects, such as stored routines. To filter statements
            operating on stored routines, use one or more of the
       <code class="option">
        --replicate-*-db
       </code>
       options.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-ignore-table">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-table">
        <code class="option">
         --replicate-ignore-table=
         <em class="replaceable">
          <code>
           db_name.tbl_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143590192">
      </a>
      <a class="indexterm" name="idm46045143588688">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-ignore-table">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-ignore-table=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter by telling the replication SQL
            thread not to replicate any statement that updates the
            specified table, even if any other tables might be updated
            by the same statement. To specify more than one table to
            ignore, use this option multiple times, once for each table.
            This works for cross-database updates, in contrast to
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db
        </code>
       </a>
       . See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       . You can also create
            such a filter by issuing a
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_IGNORE_TABLE
        </code>
       </a>
       statement.
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-ignore-table:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name.tbl_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <p>
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
                server instance that is configured for Group
                Replication, because filtering transactions on some
                servers would make the group unable to reach agreement
                on a consistent state. Channel specific replication
                filters can be used on replication channels that are not
                directly involved with Group Replication, such as where
                a group member also acts as a replica to a source that
                is outside the group. They cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
      </p>
      <p>
       This option affects only statements that apply to tables. It
            does not affect statements that apply only to other database
            objects, such as stored routines. To filter statements
            operating on stored routines, use one or more of the
       <code class="option">
        --replicate-*-db
       </code>
       options.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-rewrite-db">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-rewrite-db">
        <code class="option">
         --replicate-rewrite-db=
         <em class="replaceable">
          <code>
           from_name
          </code>
         </em>
         -&gt;
         <em class="replaceable">
          <code>
           to_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143564592">
      </a>
      <a class="indexterm" name="idm46045143563136">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-rewrite-db">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-rewrite-db=old_name-&gt;new_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Tells the replica to create a replication filter that
            translates the specified database to
       <em class="replaceable">
        <code>
         to_name
        </code>
       </em>
       if it was
       <em class="replaceable">
        <code>
         from_name
        </code>
       </em>
       on the source. Only
            statements involving tables are affected, not statements
            such as
       <a class="link" href="create-database.html" title="15.1.12 CREATE DATABASE Statement">
        <code class="literal">
         CREATE DATABASE
        </code>
       </a>
       ,
       <a class="link" href="drop-database.html" title="15.1.24 DROP DATABASE Statement">
        <code class="literal">
         DROP DATABASE
        </code>
       </a>
       , and
       <a class="link" href="alter-database.html" title="15.1.2 ALTER DATABASE Statement">
        <code class="literal">
         ALTER DATABASE
        </code>
       </a>
       .
      </p>
      <p>
       To specify multiple rewrites, use this option multiple
            times. The server uses the first one with a
       <em class="replaceable">
        <code>
         from_name
        </code>
       </em>
       value that matches. The
            database name translation is done
       <span class="emphasis">
        <em>
         before
        </em>
       </span>
       the
       <code class="option">
        --replicate-*
       </code>
       rules are tested. You can
            also create such a filter by issuing a
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_REWRITE_DB
        </code>
       </a>
       statement.
      </p>
      <p>
       If you use the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-rewrite-db">
        <code class="option">
         --replicate-rewrite-db
        </code>
       </a>
       option
            on the command line and the
       <code class="literal">
        &gt;
       </code>
       character is special to your command interpreter, quote the
            option value. For example:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa91628357"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal"><span class="token prompt">$&gt; </span><span class="token command">mysqld</span> <span class="token constant">--replicate-rewrite-db</span>=<span class="token atrule">"<em class="replaceable">olddb</em>-&gt;<em class="replaceable">newdb</em>"</span></code></pre>
      </div>
      <p>
       The effect of the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-rewrite-db">
        <code class="option">
         --replicate-rewrite-db
        </code>
       </a>
       option
            differs depending on whether statement-based or row-based
            binary logging format is used for the query. With
            statement-based format, DML statements are translated based
            on the current database, as specified by the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement. With row-based
            format, DML statements are translated based on the database
            where the modified table exists. DDL statements are always
            filtered based on the current database, as specified by the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement, regardless of
            the binary logging format.
      </p>
      <p>
       To ensure that rewriting produces the expected results,
            particularly in combination with other replication filtering
            options, follow these recommendations when you use the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-rewrite-db">
        <code class="option">
         --replicate-rewrite-db
        </code>
       </a>
       option:
      </p>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          Create the
          <em class="replaceable">
           <code>
            from_name
           </code>
          </em>
          and
          <em class="replaceable">
           <code>
            to_name
           </code>
          </em>
          databases manually on
                the source and the replica with different names.
         </p>
        </li>
        <li class="listitem">
         <p>
          If you use statement-based or mixed binary logging
                format, do not use cross-database queries, and do not
                specify database names in queries. For both DDL and DML
                statements, rely on the
          <a class="link" href="use.html" title="15.8.4 USE Statement">
           <code class="literal">
            USE
           </code>
          </a>
          statement to specify
                the current database, and use only the table name in
                queries.
         </p>
        </li>
        <li class="listitem">
         <p>
          If you use row-based binary logging format exclusively,
                for DDL statements, rely on the
          <a class="link" href="use.html" title="15.8.4 USE Statement">
           <code class="literal">
            USE
           </code>
          </a>
          statement to specify
                the current database, and use only the table name in
                queries. For DML statements, you can use a fully
                qualified table name
                (
          <em class="replaceable">
           <code>
            db
           </code>
          </em>
          .
          <em class="replaceable">
           <code>
            table
           </code>
          </em>
          )
                if you want.
         </p>
        </li>
       </ul>
      </div>
      <p>
       If these recommendations are followed, it is safe to use the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-rewrite-db">
        <code class="option">
         --replicate-rewrite-db
        </code>
       </a>
       option
            in combination with table-level replication filtering
            options such as
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-do-table">
        <code class="option">
         --replicate-do-table
        </code>
       </a>
       .
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. Specify the channel name followed by a
            colon, followed by the filter specification. The first colon
            is interpreted as a separator, and any subsequent colons are
            interpreted as literal colons. For example, to configure a
            channel specific replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       , use:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa73814727"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal"><span class="token prompt">$&gt; </span><span class="token command">mysqld</span> <span class="token constant">--replicate-rewrite-db</span><span class="token attr-value"><span class="token punctuation">=</span><em class="replaceable">channel_1</em>:<em class="replaceable">db_name1</em>-&gt;<em class="replaceable">db_name2</em></span></code></pre>
      </div>
      <p>
       If you use a colon but do not specify a channel name, the
            option configures the replication filter for the default
            replication channel. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <p>
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
                server instance that is configured for Group
                Replication, because filtering transactions on some
                servers would make the group unable to reach agreement
                on a consistent state. Channel specific replication
                filters can be used on replication channels that are not
                directly involved with Group Replication, such as where
                a group member also acts as a replica to a source that
                is outside the group. They cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-same-server-id">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-same-server-id">
        <code class="option">
         --replicate-same-server-id
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143513472">
      </a>
      <a class="indexterm" name="idm46045143511968">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-same-server-id">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-same-server-id[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       This option is for use on replicas. The default is 0
            (
       <code class="literal">
        FALSE
       </code>
       ). With this option set to 1
            (
       <code class="literal">
        TRUE
       </code>
       ), the replica does not skip events
            that have its own server ID. This setting is normally useful
            only in rare configurations.
      </p>
      <p>
       When binary logging is enabled on a replica, the combination
            of the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-same-server-id">
        <code class="option">
         --replicate-same-server-id
        </code>
       </a>
       and
       <a class="link" href="replication-options-binary-log.html#sysvar_log_replica_updates">
        <code class="option">
         --log-replica-updates
        </code>
       </a>
       options on the replica can cause infinite loops in
            replication if the server is part of a circular replication
            topology. (In MySQL 8.4, binary logging is
            enabled by default, and replica update logging is the
            default when binary logging is enabled.) However, the use of
            global transaction identifiers (GTIDs) prevents this
            situation by skipping the execution of transactions that
            have already been applied. If
       <a class="link" href="replication-options-gtids.html#sysvar_gtid_mode">
        <code class="literal">
         gtid_mode=ON
        </code>
       </a>
       is set on the
            replica, you can start the server with this combination of
            options, but you cannot change to any other GTID mode while
            the server is running. If any other GTID mode is set, the
            server does not start with this combination of options.
      </p>
      <p>
       By default, the replication I/O (receiver) thread does not
            write binary log events to the relay log if they have the
            replica's server ID (this optimization helps save disk
            usage). If you want to use
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-same-server-id">
        <code class="option">
         --replicate-same-server-id
        </code>
       </a>
       ,
            be sure to start the replica with this option before you
            make the replica read its own events that you want the
            replication SQL (applier) thread to execute.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-wild-do-table">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=
         <em class="replaceable">
          <code>
           db_name.tbl_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143489488">
      </a>
      <a class="indexterm" name="idm46045143487984">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-wild-do-table">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-wild-do-table=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter by telling the replication SQL
            (applier) thread to restrict replication to statements where
            any of the updated tables match the specified database and
            table name patterns. Patterns can contain the
       <code class="literal">
        %
       </code>
       and
       <code class="literal">
        _
       </code>
       wildcard
            characters, which have the same meaning as for the
       <a class="link" href="string-comparison-functions.html#operator_like">
        <code class="literal">
         LIKE
        </code>
       </a>
       pattern-matching operator.
            To specify more than one table, use this option multiple
            times, once for each table. This works for cross-database
            updates. See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       . You can
            also create such a filter by issuing a
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_WILD_DO_TABLE
        </code>
       </a>
       statement.
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-wild-do-table:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name.tbl_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Important
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
              server instance that is configured for Group Replication,
              because filtering transactions on some servers would make
              the group unable to reach agreement on a consistent state.
              Channel specific replication filters can be used on
              replication channels that are not directly involved with
              Group Replication, such as where a group member also acts
              as a replica to a source that is outside the group. They
              cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
       The replication filter specified by the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table
        </code>
       </a>
       option applies to tables, views, and triggers. It does not
            apply to stored procedures and functions, or events. To
            filter statements operating on the latter objects, use one
            or more of the
       <code class="option">
        --replicate-*-db
       </code>
       options.
      </p>
      <p>
       As an example,
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=foo%.bar%
        </code>
       </a>
       replicates only updates that use a table where the database
            name starts with
       <code class="literal">
        foo
       </code>
       and the table name
            starts with
       <code class="literal">
        bar
       </code>
       .
      </p>
      <p>
       If the table name pattern is
       <code class="literal">
        %
       </code>
       , it
            matches any table name and the option also applies to
            database-level statements (
       <a class="link" href="create-database.html" title="15.1.12 CREATE DATABASE Statement">
        <code class="literal">
         CREATE
            DATABASE
        </code>
       </a>
       ,
       <a class="link" href="drop-database.html" title="15.1.24 DROP DATABASE Statement">
        <code class="literal">
         DROP
            DATABASE
        </code>
       </a>
       , and
       <a class="link" href="alter-database.html" title="15.1.2 ALTER DATABASE Statement">
        <code class="literal">
         ALTER
            DATABASE
        </code>
       </a>
       ). For example, if you use
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=foo%.%
        </code>
       </a>
       ,
            database-level statements are replicated if the database
            name matches the pattern
       <code class="literal">
        foo%
       </code>
       .
      </p>
      <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Important
       </div>
       <p>
        Table-level replication filters are only applied to tables
              that are explicitly mentioned and operated on in the
              query. They do not apply to tables that are implicitly
              updated by the query. For example, a
        <a class="link" href="grant.html" title="15.7.1.6 GRANT Statement">
         <code class="literal">
          GRANT
         </code>
        </a>
        statement, which
              updates the
        <code class="literal">
         mysql.user
        </code>
        system table but
              does not mention that table, is not affected by a filter
              that specifies
        <code class="literal">
         mysql.%
        </code>
        as the wildcard
              pattern.
       </p>
      </div>
      <p>
       To include literal wildcard characters in the database or
            table name patterns, escape them with a backslash. For
            example, to replicate all tables of a database that is named
       <code class="literal">
        my_own%db
       </code>
       , but not replicate tables from
            the
       <code class="literal">
        my1ownAABCdb
       </code>
       database, you should
            escape the
       <code class="literal">
        _
       </code>
       and
       <code class="literal">
        %
       </code>
       characters like this:
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=my\_own\%db
        </code>
       </a>
       .
            If you use the option on the command line, you might need to
            double the backslashes or quote the option value, depending
            on your command interpreter. For example, with the
       <span class="command">
        <strong>
         bash
        </strong>
       </span>
       shell, you would need to type
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table=my\\_own\\%db
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_replicate-wild-ignore-table">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-ignore-table">
        <code class="option">
         --replicate-wild-ignore-table=
         <em class="replaceable">
          <code>
           db_name.tbl_name
          </code>
         </em>
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143442448">
      </a>
      <a class="indexterm" name="idm46045143440944">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replicate-wild-ignore-table">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replicate-wild-ignore-table=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Creates a replication filter which keeps the replication SQL
            thread from replicating a statement in which any table
            matches the given wildcard pattern. To specify more than one
            table to ignore, use this option multiple times, once for
            each table. This works for cross-database updates. See
       <a class="xref" href="replication-rules.html" title="19.2.5 How Servers Evaluate Replication Filtering Rules">
        Section 19.2.5, “How Servers Evaluate Replication Filtering Rules”
       </a>
       . You can also create
            such a filter by issuing a
       <a class="link" href="change-replication-filter.html" title="15.4.2.1 CHANGE REPLICATION FILTER Statement">
        <code class="literal">
         CHANGE
            REPLICATION FILTER REPLICATE_WILD_IGNORE_TABLE
        </code>
       </a>
       statement.
      </p>
      <p>
       This option supports channel specific replication filters,
            enabling multi-source replicas to use specific filters for
            different sources. To configure a channel specific
            replication filter on a channel named
       <em class="replaceable">
        <code>
         channel_1
        </code>
       </em>
       use
       <code class="option">
        --replicate-wild-ignore:
        <em class="replaceable">
         <code>
          channel_1
         </code>
        </em>
        :
        <em class="replaceable">
         <code>
          db_name.tbl_name
         </code>
        </em>
       </code>
       .
            In this case, the first colon is interpreted as a separator
            and subsequent colons are literal colons. See
       <a class="xref" href="replication-rules-channel-based-filters.html" title="19.2.5.4 Replication Channel Based Filters">
        Section 19.2.5.4, “Replication Channel Based Filters”
       </a>
       for more information.
      </p>
      <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Important
       </div>
       <p>
        Global replication filters cannot be used on a MySQL
              server instance that is configured for Group Replication,
              because filtering transactions on some servers would make
              the group unable to reach agreement on a consistent state.
              Channel specific replication filters can be used on
              replication channels that are not directly involved with
              Group Replication, such as where a group member also acts
              as a replica to a source that is outside the group. They
              cannot be used on the
        <code class="literal">
         group_replication_applier
        </code>
        or
        <code class="literal">
         group_replication_recovery
        </code>
        channels.
       </p>
      </div>
      <p>
       As an example,
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-ignore-table">
        <code class="option">
         --replicate-wild-ignore-table=foo%.bar%
        </code>
       </a>
       does not replicate updates that use a table where the
            database name starts with
       <code class="literal">
        foo
       </code>
       and the
            table name starts with
       <code class="literal">
        bar
       </code>
       . For
            information about how matching works, see the description of
            the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-do-table">
        <code class="option">
         --replicate-wild-do-table
        </code>
       </a>
       option. The rules for including literal wildcard characters
            in the option value are the same as for
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-wild-ignore-table">
        <code class="option">
         --replicate-wild-ignore-table
        </code>
       </a>
       as well.
      </p>
      <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Important
       </div>
       <p>
        Table-level replication filters are only applied to tables
              that are explicitly mentioned and operated on in the
              query. They do not apply to tables that are implicitly
              updated by the query. For example, a
        <a class="link" href="grant.html" title="15.7.1.6 GRANT Statement">
         <code class="literal">
          GRANT
         </code>
        </a>
        statement, which
              updates the
        <code class="literal">
         mysql.user
        </code>
        system table but
              does not mention that table, is not affected by a filter
              that specifies
        <code class="literal">
         mysql.%
        </code>
        as the wildcard
              pattern.
       </p>
      </div>
      <p>
       If you need to filter out
       <a class="link" href="grant.html" title="15.7.1.6 GRANT Statement">
        <code class="literal">
         GRANT
        </code>
       </a>
       statements or other
            administrative statements, a possible workaround is to use
            the
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db
        </code>
       </a>
       filter. This filter operates on the default database that is
            currently in effect, as determined by the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement. You can
            therefore create a filter to ignore statements for a
            database that is not replicated, then issue the
       <a class="link" href="use.html" title="15.8.4 USE Statement">
        <code class="literal">
         USE
        </code>
       </a>
       statement
            to switch the default database to that one immediately
            before issuing any administrative statements that you want
            to ignore. In the administrative statement, name the actual
            database where the statement is applied.
      </p>
      <p>
       For example, if
       <a class="link" href="replication-options-replica.html#option_mysqld_replicate-ignore-db">
        <code class="option">
         --replicate-ignore-db=nonreplicated
        </code>
       </a>
       is configured on the replica server, the following sequence
            of statements causes the
       <a class="link" href="grant.html" title="15.7.1.6 GRANT Statement">
        <code class="literal">
         GRANT
        </code>
       </a>
       statement to be
            ignored, because the default database
       <code class="literal">
        nonreplicated
       </code>
       is in effect:
      </p>
      <div class="copytoclipboard-wrapper">
       <pre class="programlisting language-sql"><div class="docs-select-all right" id="sa3861993"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-sql"><span class="token keyword">USE</span> nonreplicated<span class="token punctuation">;</span>
<span class="token keyword">GRANT</span> <span class="token keyword">SELECT</span><span class="token punctuation">,</span> <span class="token keyword">INSERT</span> <span class="token keyword">ON</span> replicated<span class="token punctuation">.</span>t1 <span class="token keyword">TO</span> <span class="token string">'someuser'</span>@<span class="token string">'somehost'</span><span class="token punctuation">;</span></code></pre>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_skip-replica-start">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-replica-start">
        <code class="option">
         --skip-replica-start
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143401488">
      </a>
      <a class="indexterm" name="idm46045143400032">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for skip-replica-start">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --skip-replica-start[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_skip_replica_start">
             skip_replica_start
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-replica-start">
        <code class="option">
         --skip-replica-start
        </code>
       </a>
       tells
            the replica server not to start the replication I/O
            (receiver) and SQL (applier) threads when the server starts.
            To start the threads later, use a
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START
            REPLICA
        </code>
       </a>
       statement.
      </p>
      <p>
       You can use the
       <a class="link" href="replication-options-replica.html#sysvar_skip_replica_start">
        <code class="literal">
         skip_replica_start
        </code>
       </a>
       system
            variable in place of the command line option to allow access
            to this feature using MySQL Server’s privilege structure,
            so that database administrators do not need any privileged
            access to the operating system.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_skip-slave-start">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-slave-start">
        <code class="option">
         --skip-slave-start
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143371152">
      </a>
      <a class="indexterm" name="idm46045143369664">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for skip-slave-start">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --skip-slave-start[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_skip_slave_start">
             skip_slave_start
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-replica-start">
        <code class="option">
         --skip-replica-start
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_slave-skip-errors">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_slave-skip-errors">
        <code class="option">
         --slave-skip-errors=[
         <em class="replaceable">
          <code>
           err_code1
          </code>
         </em>
         ,
         <em class="replaceable">
          <code>
           err_code2
          </code>
         </em>
         ,...|all|ddl_exist_errors]
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143341472">
      </a>
      <a class="indexterm" name="idm46045143339968">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave-skip-errors">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-skip-errors=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_skip_errors">
             slave_skip_errors
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             OFF
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             [list of error codes]
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             all
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ddl_exist_errors
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_replica_skip_errors">
        <code class="option">
         --replica-skip-errors
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="option_mysqld_slave-sql-verify-checksum">
       </a>
       <a class="link" href="replication-options-replica.html#option_mysqld_slave-sql-verify-checksum">
        <code class="option">
         --slave-sql-verify-checksum={0|1}
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143306880">
      </a>
      <a class="indexterm" name="idm46045143305376">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave-sql-verify-checksum">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-sql-verify-checksum[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_replica_sql_verify_checksum">
        <code class="option">
         --replica-sql-verify-checksum
        </code>
       </a>
      </p>
     </li>
    </ul>
   </div>
  </div>
  <div class="simplesect">
   <div class="titlepage">
    <div>
     <div class="simple">
      <h5 class="title">
       <a name="replication-sysvars-slaves">
       </a>
       System Variables Used on Replica Servers
      </h5>
     </div>
    </div>
   </div>
   <p>
    The following list describes system variables for controlling
        replica servers. They can be set at server startup and some of
        them can be changed at runtime using
    <a class="link" href="set-variable.html" title="15.7.6.1 SET Syntax for Variable Assignment">
     <code class="literal">
      SET
     </code>
    </a>
    .
        Server options used with replicas are listed earlier in this
        section.
   </p>
   <div class="itemizedlist">
    <ul class="itemizedlist" style="list-style-type: disc; ">
     <li class="listitem">
      <p>
       <a name="sysvar_init_replica">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_init_replica">
        <code class="literal">
         init_replica
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143286544">
      </a>
      <a class="indexterm" name="idm46045143285456">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for init_replica">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --init-replica=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_init_replica">
             init_replica
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_init_replica">
        <code class="literal">
         init_replica
        </code>
       </a>
       is similar to
       <a class="link" href="server-system-variables.html#sysvar_init_connect">
        <code class="literal">
         init_connect
        </code>
       </a>
       , but is a
            string to be executed by a replica server each time the
            replication SQL thread starts. The format of the string is
            the same as for the
       <a class="link" href="server-system-variables.html#sysvar_init_connect">
        <code class="literal">
         init_connect
        </code>
       </a>
       variable. The
            setting of this variable takes effect for subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statements.
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        The replication SQL thread sends an acknowledgment to the
              client before it executes
        <a class="link" href="replication-options-replica.html#sysvar_init_replica">
         <code class="literal">
          init_replica
         </code>
        </a>
        . Therefore,
              it is not guaranteed that
        <a class="link" href="replication-options-replica.html#sysvar_init_replica">
         <code class="literal">
          init_replica
         </code>
        </a>
        has been
              executed when
        <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
         <code class="literal">
          START REPLICA
         </code>
        </a>
        returns. See
        <a class="xref" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
         Section 15.4.2.4, “START REPLICA Statement”
        </a>
        for more
              information.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_init_slave">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_init_slave">
        <code class="literal">
         init_slave
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143252976">
      </a>
      <a class="indexterm" name="idm46045143251888">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for init_slave">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --init-slave=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_init_slave">
             init_slave
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_init_replica">
        <code class="literal">
         init_replica
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_log_slow_replica_statements">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143226608">
      </a>
      <a class="indexterm" name="idm46045143225504">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for log_slow_replica_statements">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --log-slow-replica-statements[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
             log_slow_replica_statements
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       When the slow query log is enabled,
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
       enables logging for queries that have taken more than
       <a class="link" href="server-system-variables.html#sysvar_long_query_time">
        <code class="literal">
         long_query_time
        </code>
       </a>
       seconds to
            execute on the replica. Note that if row-based replication
            is in use
            (
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_format">
        <code class="literal">
         binlog_format=ROW
        </code>
       </a>
       ),
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
       has no effect. Queries are only added to the replica's slow
            query log when they are logged in statement format in the
            binary log, that is, when
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_format">
        <code class="literal">
         binlog_format=STATEMENT
        </code>
       </a>
       is
            set, or when
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_format">
        <code class="literal">
         binlog_format=MIXED
        </code>
       </a>
       is set
            and the statement is logged in statement format. Slow
            queries that are logged in row format when
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_format">
        <code class="literal">
         binlog_format=MIXED
        </code>
       </a>
       is set,
            or that are logged when
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_format">
        <code class="literal">
         binlog_format=ROW
        </code>
       </a>
       is set,
            are not added to the replica's slow query log, even if
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
       is enabled.
      </p>
      <p>
       Setting
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
       has no immediate effect. The state of the variable applies
            on all subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START
            REPLICA
        </code>
       </a>
       statements. Also note that the global
            setting for
       <a class="link" href="server-system-variables.html#sysvar_long_query_time">
        <code class="literal">
         long_query_time
        </code>
       </a>
       applies for the lifetime of the SQL thread. If you change
            that setting, you must stop and restart the replication SQL
            thread to implement the change there (for example, by
            issuing
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       and
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statements with
            the
       <code class="literal">
        SQL_THREAD
       </code>
       option).
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_log_slow_slave_statements">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_slave_statements">
        <code class="literal">
         log_slow_slave_statements
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143181264">
      </a>
      <a class="indexterm" name="idm46045143180160">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for log_slow_slave_statements">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --log-slow-slave-statements[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_log_slow_slave_statements">
             log_slow_slave_statements
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_log_slow_replica_statements">
        <code class="literal">
         log_slow_replica_statements
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_max_relay_log_size">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
        <code class="literal">
         max_relay_log_size
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143152288">
      </a>
      <a class="indexterm" name="idm46045143151248">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for max_relay_log_size">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --max-relay-log-size=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
             max_relay_log_size
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            4096
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       If a write by a replica to its relay log causes the current
            log file size to exceed the value of this variable, the
            replica rotates the relay logs (closes the current file and
            opens the next one). If
       <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
        <code class="literal">
         max_relay_log_size
        </code>
       </a>
       is 0,
            the server uses
       <a class="link" href="replication-options-binary-log.html#sysvar_max_binlog_size">
        <code class="literal">
         max_binlog_size
        </code>
       </a>
       for both
            the binary log and the relay log. If
       <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
        <code class="literal">
         max_relay_log_size
        </code>
       </a>
       is
            greater than 0, it constrains the size of the relay log,
            which enables you to have different sizes for the two logs.
            You must set
       <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
        <code class="literal">
         max_relay_log_size
        </code>
       </a>
       to
            between 4096 bytes and 1GB (inclusive), or to 0. The default
            value is 0. See
       <a class="xref" href="replication-threads.html" title="19.2.3 Replication Threads">
        Section 19.2.3, “Replication Threads”
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143110704">
      </a>
      <a class="indexterm" name="idm46045143109616">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log=file_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log">
             relay_log
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           File name
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The base name for relay log files. For the default
            replication channel, the default base name for relay logs is
       <code class="filename">
        <em class="replaceable">
         <code>
          host_name
         </code>
        </em>
        -relay-bin
       </code>
       .
            For non-default replication channels, the default base name
            for relay logs is
       <code class="filename">
        <em class="replaceable">
         <code>
          host_name
         </code>
        </em>
        -relay-bin-
        <em class="replaceable">
         <code>
          channel
         </code>
        </em>
       </code>
       ,
            where
       <em class="replaceable">
        <code>
         channel
        </code>
       </em>
       is the name of the
            replication channel recorded in this relay log.
      </p>
      <p>
       The server writes the file in the data directory unless the
            base name is given with a leading absolute path name to
            specify a different directory. The server creates relay log
            files in sequence by adding a numeric suffix to the base
            name.
      </p>
      <p>
       The relay log and relay log index on a replication server
            cannot be given the same names as the binary log and binary
            log index, whose names are specified by the
       <a class="link" href="replication-options-binary-log.html#option_mysqld_log-bin">
        <code class="option">
         --log-bin
        </code>
       </a>
       and
       <a class="link" href="replication-options-binary-log.html#option_mysqld_log-bin-index">
        <code class="option">
         --log-bin-index
        </code>
       </a>
       options. The
            server issues an error message and does not start if the
            binary log and relay log file base names would be the same.
      </p>
      <p>
       Due to the manner in which MySQL parses server options, if
            you specify this variable at server startup, you must supply
            a value;
       <span class="emphasis">
        <em>
         the default base name is used only if the
            option is not actually specified
        </em>
       </span>
       . If you specify
            the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system
            variable at server startup without specifying a value,
            unexpected behavior is likely to result; this behavior
            depends on the other options used, the order in which they
            are specified, and whether they are specified on the command
            line or in an option file. For more information about how
            MySQL handles server options, see
       <a class="xref" href="program-options.html" title="6.2.2 Specifying Program Options">
        Section 6.2.2, “Specifying Program Options”
       </a>
       .
      </p>
      <p>
       If you specify this variable, the value specified is also
            used as the base name for the relay log index file. You can
            override this behavior by specifying a different relay log
            index file base name using the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_index">
        <code class="literal">
         relay_log_index
        </code>
       </a>
       system
            variable.
      </p>
      <p>
       When the server reads an entry from the index file, it
            checks whether the entry contains a relative path. If it
            does, the relative part of the path is replaced with the
            absolute path set using the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system variable.
            An absolute path remains unchanged; in such a case, the
            index must be edited manually to enable the new path or
            paths to be used.
      </p>
      <p>
       You may find the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system variable useful in performing the following tasks:
      </p>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          Creating relay logs whose names are independent of host
                names.
         </p>
        </li>
        <li class="listitem">
         <p>
          If you need to put the relay logs in some area other
                than the data directory because your relay logs tend to
                be very large and you do not want to decrease
          <a class="link" href="replication-options-replica.html#sysvar_max_relay_log_size">
           <code class="literal">
            max_relay_log_size
           </code>
          </a>
          .
         </p>
        </li>
        <li class="listitem">
         <p>
          To increase speed by using load-balancing between disks.
         </p>
        </li>
       </ul>
      </div>
      <p>
       You can obtain the relay log file name (and path) from the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_basename">
        <code class="literal">
         relay_log_basename
        </code>
       </a>
       system
            variable.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log_basename">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_basename">
        <code class="literal">
         relay_log_basename
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143065728">
      </a>
      <a class="indexterm" name="idm46045143064688">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_basename">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_basename">
             relay_log_basename
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           File name
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            datadir + '/' + hostname + '-relay-bin'
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Holds the base name and complete path to the relay log file.
            The maximum variable length is 256. This variable is set by
            the server and is read only.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log_index">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_index">
        <code class="literal">
         relay_log_index
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143042544">
      </a>
      <a class="indexterm" name="idm46045143041456">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_index">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-index=file_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_index">
             relay_log_index
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           File name
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            *host_name*-relay-bin.index
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The name for the relay log index file. The maximum variable
            length is 256. If you do not specify this variable, but the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system variable
            is specified, its value is used as the default base name for
            the relay log index file. If
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       is also not
            specified, then for the default replication channel, the
            default name is
       <code class="filename">
        <em class="replaceable">
         <code>
          host_name
         </code>
        </em>
        -relay-bin.index
       </code>
       ,
            using the name of the host machine. For non-default
            replication channels, the default name is
       <code class="filename">
        <em class="replaceable">
         <code>
          host_name
         </code>
        </em>
        -relay-bin-
        <em class="replaceable">
         <code>
          channel
         </code>
        </em>
        .index
       </code>
       ,
            where
       <em class="replaceable">
        <code>
         channel
        </code>
       </em>
       is the name of the
            replication channel recorded in this relay log index.
      </p>
      <p>
       The default location for relay log files is the data
            directory, or any other location that was specified using
            the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system
            variable. You can use the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_index">
        <code class="literal">
         relay_log_index
        </code>
       </a>
       system
            variable to specify an alternative location, by adding a
            leading absolute path name to the base name to specify a
            different directory.
      </p>
      <p>
       The relay log and relay log index on a replication server
            cannot be given the same names as the binary log and binary
            log index, whose names are specified by the
       <a class="link" href="replication-options-binary-log.html#option_mysqld_log-bin">
        <code class="option">
         --log-bin
        </code>
       </a>
       and
       <a class="link" href="replication-options-binary-log.html#option_mysqld_log-bin-index">
        <code class="option">
         --log-bin-index
        </code>
       </a>
       options. The
            server issues an error message and does not start if the
            binary log and relay log file base names would be the same.
      </p>
      <p>
       Due to the manner in which MySQL parses server options, if
            you specify this variable at server startup, you must supply
            a value;
       <span class="emphasis">
        <em>
         the default base name is used only if the
            option is not actually specified
        </em>
       </span>
       . If you specify
            the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_index">
        <code class="literal">
         relay_log_index
        </code>
       </a>
       system
            variable at server startup without specifying a value,
            unexpected behavior is likely to result; this behavior
            depends on the other options used, the order in which they
            are specified, and whether they are specified on the command
            line or in an option file. For more information about how
            MySQL handles server options, see
       <a class="xref" href="program-options.html" title="6.2.2 Specifying Program Options">
        Section 6.2.2, “Specifying Program Options”
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log_purge">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_purge">
        <code class="literal">
         relay_log_purge
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045143001760">
      </a>
      <a class="indexterm" name="idm46045143000672">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_purge">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-purge[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_purge">
             relay_log_purge
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Disables or enables automatic purging of relay log files as
            soon as they are not needed any more. The default value is 1
            (
       <code class="literal">
        ON
       </code>
       ).
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log_recovery">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_recovery">
        <code class="literal">
         relay_log_recovery
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142975376">
      </a>
      <a class="indexterm" name="idm46045142973888">
      </a>
      <a class="indexterm" name="idm46045142972848">
      </a>
      <a class="indexterm" name="idm46045142971776">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_recovery">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-recovery[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_recovery">
             relay_log_recovery
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       If enabled, this variable enables automatic relay log
            recovery immediately following server startup. The recovery
            process creates a new relay log file, initializes the SQL
            (applier) thread position to this new relay log, and
            initializes the I/O (receiver) thread to the applier thread
            position. Reading of the relay log from the source then
            continues. If
       <code class="literal">
        SOURCE_AUTO_POSITION=1
       </code>
       was
            set for the replication channel using a
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE TO
        </code>
       </a>
       statement, the source position used to start replication
            might be the one received in the connection and not the ones
            assigned in this process.
      </p>
      <p>
       When
       <code class="literal">
        relay_log_recovery
       </code>
       is disabled, the
            server sanitizes the relay log on startup, by performing the
            following actions:
      </p>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          Removing any transactions that remain uncompleted at the
                end of the log
         </p>
        </li>
        <li class="listitem">
         <p>
          Removing any relay log file which contains only parts of
                unfinished transactions
         </p>
        </li>
        <li class="listitem">
         <p>
          Removing any reference from the relay log index file to
                any relay log file that has been removed
         </p>
        </li>
        <li class="listitem">
         <p>
          When a valid source position and source filename are
                obtained from the relay log, updating the position of
                the receiver thread to match this file and position;
                otherwise, updating the position of the receiver thread
                to match the the position of the applier
         </p>
        </li>
       </ul>
      </div>
      <p>
       This global variable is read-only at runtime. Its value can
            be set with the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_recovery">
        <code class="option">
         --relay-log-recovery
        </code>
       </a>
       option
            at replica server startup, which should be used following an
            unexpected halt of a replica to ensure that no possibly
            corrupted relay logs are processed, and must be used in
            order to guarantee a crash-safe replica. The default value
            is 0 (disabled). For information on the combination of
            settings on a replica that is most resilient to unexpected
            halts, see
       <a class="xref" href="replication-solutions-unexpected-replica-halt.html" title="19.4.2 Handling an Unexpected Halt of a Replica">
        Section 19.4.2, “Handling an Unexpected Halt of a Replica”
       </a>
       .
      </p>
      <p>
       For a multithreaded replica (where
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       is
            greater than 0), setting
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_recovery">
        <code class="option">
         --relay-log-recovery
        </code>
       </a>
       at
            startup automatically handles any inconsistencies and gaps
            in the sequence of transactions that have been executed from
            the relay log. These gaps can occur when file position based
            replication is in use. (For more details, see
       <a class="xref" href="replication-features-transaction-inconsistencies.html" title="19.5.1.34 Replication and Transaction Inconsistencies">
        Section 19.5.1.34, “Replication and Transaction Inconsistencies”
       </a>
       .)
            The relay log recovery process deals with gaps using the
            same method as the
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
            UNTIL SQL_AFTER_MTS_GAPS
        </code>
       </a>
       statement would. When the
            replica reaches a consistent gap-free state, the relay log
            recovery process goes on to fetch further transactions from
            the source beginning at the SQL (applier) thread position.
            When GTID-based replication is in use, a multithreaded
            replica checks first whether
       <code class="literal">
        SOURCE_AUTO_POSITION
       </code>
       is set to
       <code class="literal">
        ON
       </code>
       , and if it is, omits the step of
            calculating the transactions that should be skipped or not
            skipped, so that the old relay logs are not required for the
            recovery process.
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        This variable does not affect the following Group
              Replication channels:
       </p>
       <div class="itemizedlist">
        <ul class="itemizedlist" style="list-style-type: circle; ">
         <li class="listitem">
          <p>
           <code class="literal">
            group_replication_applier
           </code>
          </p>
         </li>
         <li class="listitem">
          <p>
           <code class="literal">
            group_replication_recovery
           </code>
          </p>
         </li>
        </ul>
       </div>
       <p>
        Any other channels running on a group are affected, such
              as a channel which is replicating from an outside source
              or another group.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_relay_log_space_limit">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_relay_log_space_limit">
        <code class="literal">
         relay_log_space_limit
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142924512">
      </a>
      <a class="indexterm" name="idm46045142923472">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for relay_log_space_limit">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --relay-log-space-limit=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_relay_log_space_limit">
             relay_log_space_limit
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            18446744073709551615
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The maximum amount of space to use for all relay logs.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_checkpoint_group">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_group">
        <code class="literal">
         replica_checkpoint_group
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142892032">
      </a>
      <a class="indexterm" name="idm46045142890528">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_checkpoint_group">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-checkpoint-group=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_group">
             replica_checkpoint_group
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            512
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            32
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            524280
           </code>
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            8
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_group">
        <code class="literal">
         replica_checkpoint_group
        </code>
       </a>
       sets the maximum number of transactions that can be
            processed by a multithreaded replica before a checkpoint
            operation is called to update its status as shown by
       <a class="link" href="show-replica-status.html" title="15.7.7.35 SHOW REPLICA STATUS Statement">
        <code class="literal">
         SHOW REPLICA STATUS
        </code>
       </a>
       . Setting
            this variable has no effect on replicas for which
            multithreading is not enabled. Setting this variable has no
            immediate effect. The state of the variable applies to all
            subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statements.
      </p>
      <p>
       This variable works in combination with the
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_period">
        <code class="literal">
         replica_checkpoint_period
        </code>
       </a>
       system variable in such a way that, when either limit is
            exceeded, the checkpoint is executed and the counters
            tracking both the number of transactions and the time
            elapsed since the last checkpoint are reset.
      </p>
      <p>
       The minimum allowed value for this variable is 32, unless
            the server was built using
       <a class="link" href="source-configuration-options.html#option_cmake_with_debug">
        <code class="option">
         -DWITH_DEBUG
        </code>
       </a>
       , in which case
            the minimum value is 1. The effective value is always a
            multiple of 8; you can set it to a value that is not such a
            multiple, but the server rounds it down to the next lower
            multiple of 8 before storing the value.
            (
       <span class="emphasis">
        <em>
         Exception
        </em>
       </span>
       : No such rounding is
            performed by the debug server.) Regardless of how the server
            was built, the default value is 512, and the maximum allowed
            value is 524280.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_checkpoint_period">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_period">
        <code class="literal">
         replica_checkpoint_period
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142850064">
      </a>
      <a class="indexterm" name="idm46045142848560">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_checkpoint_period">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-checkpoint-period=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_period">
             replica_checkpoint_period
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            300
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           milliseconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <code class="literal">
        replica_checkpoint_period
       </code>
       sets the
            maximum time (in milliseconds) that is allowed to pass
            before a checkpoint operation is called to update the status
            of a multithreaded replica as shown by
       <a class="link" href="show-replica-status.html" title="15.7.7.35 SHOW REPLICA STATUS Statement">
        <code class="literal">
         SHOW REPLICA STATUS
        </code>
       </a>
       . Setting
            this variable has no effect on replicas for which
            multithreading is not enabled. Setting this variable takes
            effect for all replication channels immediately, including
            running channels.
      </p>
      <p>
       This variable works in combination with the
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_group">
        <code class="literal">
         replica_checkpoint_group
        </code>
       </a>
       system variable in such a way that, when either limit is
            exceeded, the checkpoint is executed and the counters
            tracking both the number of transactions and the time
            elapsed since the last checkpoint are reset.
      </p>
      <p>
       The minimum allowed value for this variable is 1, unless the
            server was built using
       <a class="link" href="source-configuration-options.html#option_cmake_with_debug">
        <code class="option">
         -DWITH_DEBUG
        </code>
       </a>
       , in which case
            the minimum value is 0. Regardless of how the server was
            built, the default value is 300 milliseconds, and the
            maximum possible value is 4294967295 milliseconds
            (approximately 49.7 days).
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_compressed_protocol">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
        <code class="literal">
         replica_compressed_protocol
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142811440">
      </a>
      <a class="indexterm" name="idm46045142810336">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_compressed_protocol">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-compressed-protocol[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
             replica_compressed_protocol
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
        <code class="literal">
         replica_compressed_protocol
        </code>
       </a>
       specifies whether to use compression of the source/replica
            connection protocol if both source and replica support it.
            If this variable is disabled (the default), connections are
            uncompressed. Changes to this variable take effect on
            subsequent connection attempts; this includes after issuing
            a
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statement, as
            well as reconnections made by a running replication I/O
            (receiver) thread.
      </p>
      <p>
       Binary log transaction compression, enabled by the
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_transaction_compression">
        <code class="literal">
         binlog_transaction_compression
        </code>
       </a>
       system variable, can also be used to save bandwidth. If you
            use binary log transaction compression in combination with
            protocol compression, protocol compression has less
            opportunity to act on the data, but can still compress
            headers and those events and transaction payloads that are
            uncompressed. For more information on binary log transaction
            compression, see
       <a class="xref" href="binary-log-transaction-compression.html" title="7.4.4.5 Binary Log Transaction Compression">
        Section 7.4.4.5, “Binary Log Transaction Compression”
       </a>
       .
      </p>
      <p>
       If
       <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
        <code class="literal">
         replica_compressed_protocol
        </code>
       </a>
       is enabled, it takes precedence over any
       <code class="literal">
        SOURCE_COMPRESSION_ALGORITHMS
       </code>
       option
            specified for the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION
            SOURCE TO
        </code>
       </a>
       statement. In this case, connections to
            the source use
       <code class="literal">
        zlib
       </code>
       compression if both
            the source and replica support that algorithm. If
       <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
        <code class="literal">
         replica_compressed_protocol
        </code>
       </a>
       is disabled, the value of
       <code class="literal">
        SOURCE_COMPRESSION_ALGORITHMS
       </code>
       applies.
            For more information, see
       <a class="xref" href="connection-compression-control.html" title="6.2.8 Connection Compression Control">
        Section 6.2.8, “Connection Compression Control”
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_exec_mode">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_exec_mode">
        <code class="literal">
         replica_exec_mode
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142772464">
      </a>
      <a class="indexterm" name="idm46045142771424">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_exec_mode">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-exec-mode=mode
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_exec_mode">
             replica_exec_mode
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Enumeration
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             IDEMPOTENT
            </code>
            (NDB)
           </p>
           <p class="valid-value">
            <code class="literal">
             STRICT
            </code>
            (Other)
           </p>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             STRICT
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             IDEMPOTENT
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_exec_mode">
        <code class="literal">
         replica_exec_mode
        </code>
       </a>
       controls
            how a replication thread resolves conflicts and errors
            during replication.
       <code class="literal">
        IDEMPOTENT
       </code>
       mode
            causes suppression of duplicate-key and no-key-found errors;
       <code class="literal">
        STRICT
       </code>
       means no such suppression takes
            place.
      </p>
      <p>
       <code class="literal">
        IDEMPOTENT
       </code>
       mode is intended for use in
            multi-source replication, circular replication, and some
            other special replication scenarios for NDB Cluster
            Replication. (See
       <a class="xref" href="mysql-cluster-replication-multi-source.html" title="25.7.10 NDB Cluster Replication: Bidirectional and Circular Replication">
        Section 25.7.10, “NDB Cluster Replication: Bidirectional and Circular Replication”
       </a>
       ,
            and
       <a class="xref" href="mysql-cluster-replication-conflict-resolution.html" title="25.7.12 NDB Cluster Replication Conflict Resolution">
        Section 25.7.12, “NDB Cluster Replication Conflict Resolution”
       </a>
       ,
            for more information.) NDB Cluster ignores any value
            explicitly set for
       <a class="link" href="replication-options-replica.html#sysvar_replica_exec_mode">
        <code class="literal">
         replica_exec_mode
        </code>
       </a>
       , and
            always treats it as
       <code class="literal">
        IDEMPOTENT
       </code>
       .
      </p>
      <p>
       In MySQL Server 8.4,
       <code class="literal">
        STRICT
       </code>
       mode is the default value.
      </p>
      <p>
       Setting this variable takes immediate effect for all
            replication channels, including running channels.
      </p>
      <p>
       For storage engines other than
       <a class="link" href="mysql-cluster.html" title="Chapter 25 MySQL NDB Cluster 8.4">
        <code class="literal">
         NDB
        </code>
       </a>
       ,
       <span class="emphasis">
        <em>
         <code class="literal">
          IDEMPOTENT
         </code>
         mode should be used
            only when you are absolutely sure that duplicate-key errors
            and key-not-found errors can safely be ignored
        </em>
       </span>
       .
            It is meant to be used in fail-over scenarios for NDB
            Cluster where multi-source replication or circular
            replication is employed, and is not recommended for use in
            other cases.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_load_tmpdir">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_load_tmpdir">
        <code class="literal">
         replica_load_tmpdir
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142728560">
      </a>
      <a class="indexterm" name="idm46045142727520">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_load_tmpdir">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-load-tmpdir=dir_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_load_tmpdir">
             replica_load_tmpdir
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Directory name
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            Value of --tmpdir
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_load_tmpdir">
        <code class="literal">
         replica_load_tmpdir
        </code>
       </a>
       specifies the name of the directory where the replica
            creates temporary files. Setting this variable takes effect
            for all replication channels immediately, including running
            channels. The variable value is by default equal to the
            value of the
       <a class="link" href="server-system-variables.html#sysvar_tmpdir">
        <code class="literal">
         tmpdir
        </code>
       </a>
       system
            variable, or the default that applies when that system
            variable is not specified.
      </p>
      <p>
       When the replication SQL thread replicates a
       <a class="link" href="load-data.html" title="15.2.9 LOAD DATA Statement">
        <code class="literal">
         LOAD DATA
        </code>
       </a>
       statement, it
            extracts the file to be loaded from the relay log into
            temporary files, and then loads these into the table. If the
            file loaded on the source is huge, the temporary files on
            the replica are huge, too. Therefore, it might be advisable
            to use this option to tell the replica to put temporary
            files in a directory located in some file system that has a
            lot of available space. In that case, the relay logs are
            huge as well, so you might also want to set the
       <a class="link" href="replication-options-replica.html#sysvar_relay_log">
        <code class="literal">
         relay_log
        </code>
       </a>
       system variable
            to place the relay logs in that file system.
      </p>
      <p>
       The directory specified by this option should be located in
            a disk-based file system (not a memory-based file system) so
            that the temporary files used to replicate
       <a class="link" href="load-data.html" title="15.2.9 LOAD DATA Statement">
        <code class="literal">
         LOAD DATA
        </code>
       </a>
       statements can
            survive machine restarts. The directory also should not be
            one that is cleared by the operating system during the
            system startup process. However, replication can now
            continue after a restart if the temporary files have been
            removed.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_max_allowed_packet">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
        <code class="literal">
         replica_max_allowed_packet
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142694464">
      </a>
      <a class="indexterm" name="idm46045142693360">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_max_allowed_packet">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-max-allowed-packet=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
             replica_max_allowed_packet
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
        <code class="literal">
         replica_max_allowed_packet
        </code>
       </a>
       sets the maximum packet size in bytes that the replication
            SQL (applier)and I/O (receiver) threads can handle. Setting
            this variable takes effect for all replication channels
            immediately, including running channels. It is possible for
            a source to write binary log events longer than its
       <a class="link" href="server-system-variables.html#sysvar_max_allowed_packet">
        <code class="literal">
         max_allowed_packet
        </code>
       </a>
       setting
            once the event header is added. The setting for
       <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
        <code class="literal">
         replica_max_allowed_packet
        </code>
       </a>
       must be larger than the
       <a class="link" href="server-system-variables.html#sysvar_max_allowed_packet">
        <code class="literal">
         max_allowed_packet
        </code>
       </a>
       setting
            on the source, so that large updates using row-based
            replication do not cause replication to fail.
      </p>
      <p>
       This global variable always has a value that is a positive
            integer multiple of 1024; if you set it to some value that
            is not, the value is rounded down to the next highest
            multiple of 1024 for it is stored or used; setting
       <code class="literal">
        replica_max_allowed_packet
       </code>
       to 0 causes
            1024 to be used. (A truncation warning is issued in all such
            cases.) The default and maximum value is 1073741824 (1 GB);
            the minimum is 1024.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_net_timeout">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
        <code class="literal">
         replica_net_timeout
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142651600">
      </a>
      <a class="indexterm" name="idm46045142650560">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_net_timeout">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-net-timeout=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
             replica_net_timeout
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            60
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           seconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
        <code class="literal">
         replica_net_timeout
        </code>
       </a>
       specifies the number of seconds to wait for more data or a
            heartbeat signal from the source before the replica
            considers the connection broken, aborts the read, and tries
            to reconnect. Setting this variable has no immediate effect.
            The state of the variable applies on all subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       commands.
      </p>
      <p>
       The default value is 60 seconds (one minute). The first
            retry occurs immediately after the timeout. The interval
            between retries is controlled by the
       <code class="literal">
        SOURCE_CONNECT_RETRY
       </code>
       option for the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE TO
        </code>
       </a>
       statement, and the number of reconnection attempts is
            limited by the
       <code class="literal">
        SOURCE_RETRY_COUNT
       </code>
       option.
      </p>
      <p>
       The heartbeat interval, which stops the connection timeout
            occurring in the absence of data if the connection is still
            good, is controlled by the
       <code class="literal">
        SOURCE_HEARTBEAT_PERIOD
       </code>
       option for the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE TO
        </code>
       </a>
       statement. The heartbeat interval defaults to half the value
            of
       <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
        <code class="literal">
         replica_net_timeout
        </code>
       </a>
       , and
            it is recorded in the replica's connection metadata
            repository and shown in the
       <a class="link" href="performance-schema-replication-connection-configuration-table.html" title="29.12.11.11 The replication_connection_configuration Table">
        <code class="literal">
         replication_connection_configuration
        </code>
       </a>
       Performance Schema table. Note that a change to the value or
            default setting of
       <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
        <code class="literal">
         replica_net_timeout
        </code>
       </a>
       does
            not automatically change the heartbeat interval, whether
            that has been set explicitly or is using a previously
            calculated default. If the connection timeout is changed,
            you must also issue
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION
            SOURCE TO
        </code>
       </a>
       to adjust the heartbeat interval to an
            appropriate value so that it occurs before the connection
            timeout.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_parallel_type">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142604400">
      </a>
      <a class="indexterm" name="idm46045142603360">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_parallel_type">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-parallel-type=value
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
             replica_parallel_type
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Enumeration
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            LOGICAL_CLOCK
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             DATABASE
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             LOGICAL_CLOCK
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       For multithreaded replicas (replicas on which
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       is
            set to a value greater than 0),
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       specifies the policy used to decide which transactions are
            allowed to execute in parallel on the replica. The variable
            has no effect on replicas for which multithreading is not
            enabled. The possible values are:
      </p>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          <code class="literal">
           LOGICAL_CLOCK
          </code>
          : Transactions are
                applied in parallel on the replica, based on timestamps
                which the replication source writes to the binary log.
                Dependencies between transactions are tracked based on
                their timestamps to provide additional parallelization
                where possible.
         </p>
        </li>
        <li class="listitem">
         <p>
          <code class="literal">
           DATABASE
          </code>
          : Transactions that update
                different databases are applied in parallel. This value
                is only appropriate if data is partitioned into multiple
                databases which are being updated independently and
                concurrently on the source. There must be no
                cross-database constraints, as such constraints may be
                violated on the replica.
         </p>
        </li>
       </ul>
      </div>
      <p>
       When
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       is enabled, you must use
       <code class="literal">
        LOGICAL_CLOCK
       </code>
       .
            Multithreading is enabled by default for replica servers
            (
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers=4
        </code>
       </a>
       by default), and
       <code class="literal">
        LOGICAL_CLOCK
       </code>
       is the
            default.
            (
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       is also enabled by default.)
      </p>
      <p>
       When the replication topology uses multiple levels of
            replicas,
       <code class="literal">
        LOGICAL_CLOCK
       </code>
       may achieve less
            parallelization for each level the replica is away from the
            source.
      </p>
      <p>
       When binary log transaction compression is enabled using the
       <a class="link" href="replication-options-binary-log.html#sysvar_binlog_transaction_compression">
        <code class="literal">
         binlog_transaction_compression
        </code>
       </a>
       system variable, if
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       is
            set to
       <code class="literal">
        DATABASE
       </code>
       , all the databases
            affected by the transaction are mapped before the
            transaction is scheduled. The use of binary log transaction
            compression with the
       <code class="literal">
        DATABASE
       </code>
       policy can
            reduce parallelism compared to uncompressed transactions,
            which are mapped and scheduled for each event.
      </p>
      <p>
       <code class="literal">
        replica_parallel_type
       </code>
       is deprecated, as
            is support for parallelization of transactions using
            database partitioning. Expect support for these to be
            removed in a future release, and for
       <code class="literal">
        LOGICAL_CLOCK
       </code>
       to be used exclusively
            thereafter.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_parallel_workers">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142552048">
      </a>
      <a class="indexterm" name="idm46045142550944">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_parallel_workers">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-parallel-workers=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
             replica_parallel_workers
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            4
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <code class="literal">
        replica_parallel_workers
       </code>
       enables
            multithreading on the replica and sets the number of applier
            threads for executing replication transactions in parallel.
            When the value is greater than or equal to 1, the replica
            uses the specified number of worker threads to execute
            transactions, plus a coordinator thread that reads
            transactions from the relay log and schedules them to
            workers. When the value is 0, there is only one thread that
            reads and applies transactions sequentially. If you are
            using multiple replication channels, the value of this
            variable applies to the threads used by each channel.
      </p>
      <p>
       The default value is 4, which means that replicas are
            multithreaded by default.
      </p>
      <p>
       Setting this variable to 0 is deprecated, raises a warning,
            and is subject to removal in a future MySQL release. For a
            single worker, set
       <code class="literal">
        replica_parallel_workers
       </code>
       to 1 instead.
      </p>
      <p>
       When
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       is
       <code class="literal">
        ON
       </code>
       (the default), transactions on a
            replica are externalized on the replica in the same order as
            they appear in the replica's relay log. The way in
            which transactions are distributed among applier threads is
            determined by
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       .
            These system variables also have appropriate defaults for
            multithreading.
      </p>
      <p>
       To disable parallel execution, set
       <code class="literal">
        replica_parallel_workers
       </code>
       to 1, in which
            case the replica uses one coordinator thread which reads
            transactions, and one worker thread which applies them,
            which means that transactions are applied sequentially. When
       <code class="literal">
        replica_parallel_workers
       </code>
       is equal to 1,
            the
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       and
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       system variables have no effect and are ignored. If
       <code class="literal">
        replica_parallel_workers
       </code>
       is equal to 0
            while the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE
            TO
        </code>
       </a>
       option
       <a class="link" href="change-replication-source-to.html#crs-opt-gtid_only">
        <code class="literal">
         GTID_ONLY
        </code>
       </a>
       is enabled, the
            replica has one coordinator thread and one worker thread,
            exactly as if
       <code class="literal">
        replica_parallel_workers
       </code>
       had been set to 1. With one parallel worker, the
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       system variable also has no effect.
      </p>
      <p>
       Setting
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       has no immediate effect but rather applies to all subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statements.
      </p>
      <p>
       Multithreaded replicas are also supported by NDB Cluster
            8.4. See
       <a class="xref" href="mysql-cluster-replication-mta.html" title="25.7.11 NDB Cluster Replication Using the Multithreaded Applier">
        Section 25.7.11, “NDB Cluster Replication Using the Multithreaded Applier”
       </a>
       , for more
            information.
      </p>
      <p>
       Increasing the number of workers improves the potential for
            parallelism. Typically, this improves performance up to a
            certain point, beyond which increasing the number of workers
            reduces performance due to concurrency effects such as lock
            contention. The ideal number depends on both hardware and
            workload; it can be difficult to predict and typically has
            to be found by testing. Tables without primary keys, which
            always harm performance, may have even greater negative
            performance impact on replicas having
       <code class="literal">
        replica_parallel_workers
       </code>
       &gt; 1; so make
            sure that all tables have primary keys before enabling this
            option.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_pending_jobs_size_max">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_pending_jobs_size_max">
        <code class="literal">
         replica_pending_jobs_size_max
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142497776">
      </a>
      <a class="indexterm" name="idm46045142496272">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_pending_jobs_size_max">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-pending-jobs-size-max=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_pending_jobs_size_max">
             replica_pending_jobs_size_max
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            128M
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            16EiB
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       For multithreaded replicas, this variable sets the maximum
            amount of memory (in bytes) available to applier queues
            holding events not yet applied. Setting this variable has no
            effect on replicas for which multithreading is not enabled.
            Setting this variable has no immediate effect. The state of
            the variable applies on all subsequent
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       commands.
      </p>
      <p>
       The minimum possible value for this variable is 1024 bytes;
            the default is 128MB. The maximum possible value is
            18446744073709551615 (16 exbibytes). Values that are not
            exact multiples of 1024 bytes are rounded down to the next
            lower multiple of 1024 bytes prior to being stored.
      </p>
      <p>
       The value of this variable is a soft limit and can be set to
            match the normal workload. If an unusually large event
            exceeds this size, the transaction is held until all the
            worker threads have empty queues, and then processed. All
            subsequent transactions are held until the large transaction
            has been completed.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_preserve_commit_order">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142458576">
      </a>
      <a class="indexterm" name="idm46045142457072">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_preserve_commit_order">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-preserve-commit-order[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
             replica_preserve_commit_order
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       For multithreaded replicas (replicas on which
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       is
            set to a value greater than 0), setting
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=ON
        </code>
       </a>
       ensures that transactions are executed and committed on the
            replica in the same order as they appear in the
            replica's relay log. This prevents gaps in the sequence
            of transactions that have been executed from the replica's
            relay log, and preserves the same transaction history on the
            replica as on the source (with the limitations listed
            below). This variable has no effect on replicas for which
            multithreading is not enabled.
      </p>
      <p>
       Multithreading is enabled by default in MySQL
            8.4 for replica servers
            (
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers=4
        </code>
       </a>
       by default), so
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=ON
        </code>
       </a>
       is the default, and the setting
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type=LOGICAL_CLOCK
        </code>
       </a>
       is also the default. In addition, the setting for
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       is ignored if
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       is
            set to 1, because in that situation the order of
            transactions is preserved anyway.
      </p>
      <p>
       Binary logging and replica update logging are not required
            on the replica to set
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=ON
        </code>
       </a>
       ,
            and can be disabled if wanted. Setting
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=ON
        </code>
       </a>
       requires that
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       is
            set to
       <code class="literal">
        LOGICAL_CLOCK
       </code>
       , the default in
            MySQL 8.4. Before changing the value of
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       and
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       ,
            the replication SQL thread (for all replication channels if
            you are using multiple replication channels) must be
            stopped.
      </p>
      <p>
       When
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=OFF
        </code>
       </a>
       is set, the transactions that a multithreaded replica
            applies in parallel may commit out of order. Therefore,
            checking for the most recently executed transaction does not
            guarantee that all previous transactions from the source
            have been executed on the replica. There is a chance of gaps
            in the sequence of transactions that have been executed from
            the replica's relay log. This has implications for logging
            and recovery when using a multithreaded replica. See
       <a class="xref" href="replication-features-transaction-inconsistencies.html" title="19.5.1.34 Replication and Transaction Inconsistencies">
        Section 19.5.1.34, “Replication and Transaction Inconsistencies”
       </a>
       for more information.
      </p>
      <p>
       When
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order=ON
        </code>
       </a>
       is set, the executing worker thread waits until all previous
            transactions are committed before committing. While a given
            thread is waiting for other worker threads to commit their
            transactions, it reports its status as
       <code class="literal">
        Waiting for
            preceding transaction to commit
       </code>
       . With this mode, a
            multithreaded replica never enters a state that the source
            was not in. This supports the use of replication for read
            scale-out. See
       <a class="xref" href="replication-solutions-scaleout.html" title="19.4.5 Using Replication for Scale-Out">
        Section 19.4.5, “Using Replication for Scale-Out”
       </a>
       .
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <div class="itemizedlist">
        <ul class="itemizedlist" style="list-style-type: circle; ">
         <li class="listitem">
          <p>
           <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
            <code class="literal">
             replica_preserve_commit_order=ON
            </code>
           </a>
           does not prevent source binary log position lag, where
           <code class="literal">
            Exec_master_log_pos
           </code>
           is behind the
                  position up to which transactions have been executed.
                  See
           <a class="xref" href="replication-features-transaction-inconsistencies.html" title="19.5.1.34 Replication and Transaction Inconsistencies">
            Section 19.5.1.34, “Replication and Transaction Inconsistencies”
           </a>
           .
          </p>
         </li>
         <li class="listitem">
          <p>
           <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
            <code class="literal">
             replica_preserve_commit_order=ON
            </code>
           </a>
           does not preserve the commit order and transaction
                  history if the replica uses filters on its binary log,
                  such as
           <a class="link" href="replication-options-binary-log.html#option_mysqld_binlog-do-db">
            <code class="option">
             --binlog-do-db
            </code>
           </a>
           .
          </p>
         </li>
         <li class="listitem">
          <p>
           <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
            <code class="literal">
             replica_preserve_commit_order=ON
            </code>
           </a>
           does not preserve the order of non-transactional DML
                  updates. These might commit before transactions that
                  precede them in the relay log, which might result in
                  gaps in the sequence of transactions that have been
                  executed from the replica's relay log.
          </p>
         </li>
         <li class="listitem">
          <p>
           A limitation to preserving the commit order on the
                  replica can occur if statement-based replication is in
                  use, and both transactional and non-transactional
                  storage engines participate in a non-XA transaction
                  that is rolled back on the source. Normally, non-XA
                  transactions that are rolled back on the source are
                  not replicated to the replica, but in this particular
                  situation, the transaction might be replicated to the
                  replica. If this does happen, a multithreaded replica
                  without binary logging does not handle the transaction
                  rollback, so the commit order on the replica diverges
                  from the relay log order of the transactions in that
                  case.
          </p>
         </li>
        </ul>
       </div>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_sql_verify_checksum">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_sql_verify_checksum">
        <code class="literal">
         replica_sql_verify_checksum
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142396160">
      </a>
      <a class="indexterm" name="idm46045142395056">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_sql_verify_checksum">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-sql-verify-checksum[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_sql_verify_checksum">
             replica_sql_verify_checksum
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_sql_verify_checksum">
        <code class="literal">
         replica_sql_verify_checksum
        </code>
       </a>
       causes the replication SQL (applier) thread to verify data
            using the checksums read from the relay log. In the event of
            a mismatch, the replica stops with an error. Setting this
            variable takes effect for all replication channels
            immediately, including running channels.
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        The replication I/O (receiver)thread always reads
              checksums if possible when accepting events from over the
              network.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_transaction_retries">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_transaction_retries">
        <code class="literal">
         replica_transaction_retries
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142368000">
      </a>
      <a class="indexterm" name="idm46045142366896">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_transaction_retries">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-transaction-retries=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_transaction_retries">
             replica_transaction_retries
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            18446744073709551615
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_transaction_retries">
        <code class="literal">
         replica_transaction_retries
        </code>
       </a>
       sets the maximum number of times for replication SQL threads
            on a single-threaded or multithreaded replica to
            automatically retry failed transactions before stopping.
            Setting this variable takes effect for all replication
            channels immediately, including running channels. The
            default value is 10. Setting the variable to 0 disables
            automatic retrying of transactions.
      </p>
      <p>
       If a replication SQL thread fails to execute a transaction
            because of an
       <a class="link" href="innodb-storage-engine.html" title="Chapter 17 The InnoDB Storage Engine">
        <code class="literal">
         InnoDB
        </code>
       </a>
       deadlock
            or because the transaction's execution time exceeded
       <a class="link" href="innodb-storage-engine.html" title="Chapter 17 The InnoDB Storage Engine">
        <code class="literal">
         InnoDB
        </code>
       </a>
       's
       <a class="link" href="innodb-parameters.html#sysvar_innodb_lock_wait_timeout">
        <code class="literal">
         innodb_lock_wait_timeout
        </code>
       </a>
       or
       <a class="link" href="mysql-cluster.html" title="Chapter 25 MySQL NDB Cluster 8.4">
        <code class="literal">
         NDB
        </code>
       </a>
       's
       <a class="link" href="mysql-cluster-ndbd-definition.html#ndbparam-ndbd-transactiondeadlockdetectiontimeout">
        <code class="literal">
         TransactionDeadlockDetectionTimeout
        </code>
       </a>
       or
       <a class="link" href="mysql-cluster-ndbd-definition.html#ndbparam-ndbd-transactioninactivetimeout">
        <code class="literal">
         TransactionInactiveTimeout
        </code>
       </a>
       ,
            it automatically retries
       <a class="link" href="replication-options-replica.html#sysvar_replica_transaction_retries">
        <code class="literal">
         replica_transaction_retries
        </code>
       </a>
       times before stopping with an error. Transactions with a
            non-temporary error are not retried.
      </p>
      <p>
       The Performance Schema table
       <a class="link" href="performance-schema-replication-applier-status-table.html" title="29.12.11.5 The replication_applier_status Table">
        <code class="literal">
         replication_applier_status
        </code>
       </a>
       shows the number of retries that took place on each
            replication channel, in the
       <code class="literal">
        COUNT_TRANSACTIONS_RETRIES
       </code>
       column. The
            Performance Schema table
       <a class="link" href="performance-schema-replication-applier-status-by-worker-table.html" title="29.12.11.7 The replication_applier_status_by_worker Table">
        <code class="literal">
         replication_applier_status_by_worker
        </code>
       </a>
       shows detailed information on transaction retries by
            individual applier threads on a single-threaded or
            multithreaded replica, and identifies the errors that caused
            the last transaction and the transaction currently in
            progress to be reattempted.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_type_conversions">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_type_conversions">
        <code class="literal">
         replica_type_conversions
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142321424">
      </a>
      <a class="indexterm" name="idm46045142320320">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_type_conversions">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-type-conversions=set
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_type_conversions">
             replica_type_conversions
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Set
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             ALL_LOSSY
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_NON_LOSSY
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_SIGNED
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_UNSIGNED
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replica_type_conversions">
        <code class="literal">
         replica_type_conversions
        </code>
       </a>
       controls the type conversion mode in effect on the replica
            when using row-based replication. Its value is a
            comma-delimited set of zero or more elements from the list:
       <code class="literal">
        ALL_LOSSY
       </code>
       ,
       <code class="literal">
        ALL_NON_LOSSY
       </code>
       ,
       <code class="literal">
        ALL_SIGNED
       </code>
       ,
       <code class="literal">
        ALL_UNSIGNED
       </code>
       . Set this variable to an
            empty string to disallow type conversions between the source
            and the replica. Setting this variable takes effect for all
            replication channels immediately, including running
            channels.
      </p>
      <p>
       For additional information on type conversion modes
            applicable to attribute promotion and demotion in row-based
            replication, see
       <a class="xref" href="replication-features-differing-tables.html#replication-features-attribute-promotion" title="Row-based replication: attribute promotion and demotion">
        Row-based replication: attribute promotion and demotion
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replication_optimize_for_static_plugin_config">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replication_optimize_for_static_plugin_config">
        <code class="literal">
         replication_optimize_for_static_plugin_config
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142284080">
      </a>
      <a class="indexterm" name="idm46045142283040">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replication_optimize_for_static_plugin_config">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replication-optimize-for-static-plugin-config[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replication_optimize_for_static_plugin_config">
             replication_optimize_for_static_plugin_config
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Use shared locks, and avoid unnecessary lock acquisitions,
            to improve performance for semisynchronous replication. This
            setting and
       <a class="link" href="replication-options-replica.html#sysvar_replication_sender_observe_commit_only">
        <code class="literal">
         replication_sender_observe_commit_only
        </code>
       </a>
       help as the number of replicas increases, because contention
            for locks can slow down performance. While this system
            variable is enabled, the semisynchronous replication plugin
            cannot be uninstalled, so you must disable the system
            variable before the uninstall can complete.
      </p>
      <p>
       This system variable can be enabled before or after
            installing the semisynchronous replication plugin, and can
            be enabled while replication is running. Semisynchronous
            replication source servers can also get performance benefits
            from enabling this system variable, because they use the
            same locking mechanisms as the replicas.
      </p>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_replication_optimize_for_static_plugin_config">
        <code class="literal">
         replication_optimize_for_static_plugin_config
        </code>
       </a>
       can be enabled when Group Replication is in use on a server.
            In that scenario, it might benefit performance when there is
            contention for locks due to high workloads.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replication_sender_observe_commit_only">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replication_sender_observe_commit_only">
        <code class="literal">
         replication_sender_observe_commit_only
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142253760">
      </a>
      <a class="indexterm" name="idm46045142252720">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replication_sender_observe_commit_only">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replication-sender-observe-commit-only[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replication_sender_observe_commit_only">
             replication_sender_observe_commit_only
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Limit callbacks to improve performance for semisynchronous
            replication. This setting and
       <a class="link" href="replication-options-replica.html#sysvar_replication_optimize_for_static_plugin_config">
        <code class="literal">
         replication_optimize_for_static_plugin_config
        </code>
       </a>
       help as the number of replicas increases, because contention
            for locks can slow down performance.
      </p>
      <p>
       This system variable can be enabled before or after
            installing the semisynchronous replication plugin, and can
            be enabled while replication is running. Semisynchronous
            replication source servers can also get performance benefits
            from enabling this system variable, because they use the
            same locking mechanisms as the replicas.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_report_host">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_report_host">
        <code class="literal">
         report_host
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142225808">
      </a>
      <a class="indexterm" name="idm46045142224720">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for report_host">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --report-host=host_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_report_host">
             report_host
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The host name or IP address of the replica to be reported to
            the source during replica registration. This value appears
            in the output of
       <a class="link" href="show-replicas.html" title="15.7.7.36 SHOW REPLICAS Statement">
        <code class="literal">
         SHOW
            REPLICAS
        </code>
       </a>
       on the source server. Leave the value
            unset if you do not want the replica to register itself with
            the source.
      </p>
      <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Note
       </div>
       <p>
        It is not sufficient for the source to simply read the IP
              address of the replica server from the TCP/IP socket after
              the replica connects. Due to NAT and other routing issues,
              that IP may not be valid for connecting to the replica
              from the source or other hosts.
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_report_password">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_report_password">
        <code class="literal">
         report_password
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142200128">
      </a>
      <a class="indexterm" name="idm46045142199040">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for report_password">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --report-password=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_report_password">
             report_password
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The account password of the replica to be reported to the
            source during replica registration. This value appears in
            the output of
       <a class="link" href="show-replicas.html" title="15.7.7.36 SHOW REPLICAS Statement">
        <code class="literal">
         SHOW REPLICAS
        </code>
       </a>
       on the source server if the source was started with
       <a class="link" href="replication-options-source.html#option_mysqld_show-replica-auth-info">
        <code class="option">
         --show-replica-auth-info
        </code>
       </a>
       .
      </p>
      <p>
       Although the name of this variable might imply otherwise,
       <a class="link" href="replication-options-replica.html#sysvar_report_password">
        <code class="literal">
         report_password
        </code>
       </a>
       is not
            connected to the MySQL user privilege system and so is not
            necessarily (or even likely to be) the same as the password
            for the MySQL replication user account.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_report_port">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_report_port">
        <code class="literal">
         report_port
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142172704">
      </a>
      <a class="indexterm" name="idm46045142171616">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for report_port">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --report-port=port_num
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_report_port">
             report_port
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            [slave_port]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            65535
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The TCP/IP port number for connecting to the replica, to be
            reported to the source during replica registration. Set this
            only if the replica is listening on a nondefault port or if
            you have a special tunnel from the source or other clients
            to the replica. If you are not sure, do not use this option.
      </p>
      <p>
       The default value for this option is the port number
            actually used by the replica. This is also the default value
            displayed by
       <a class="link" href="show-replicas.html" title="15.7.7.36 SHOW REPLICAS Statement">
        <code class="literal">
         SHOW REPLICAS
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_report_user">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_report_user">
        <code class="literal">
         report_user
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142140176">
      </a>
      <a class="indexterm" name="idm46045142139088">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for report_user">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --report-user=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_report_user">
             report_user
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The account user name of the replica to be reported to the
            source during replica registration. This value appears in
            the output of
       <a class="link" href="show-replicas.html" title="15.7.7.36 SHOW REPLICAS Statement">
        <code class="literal">
         SHOW REPLICAS
        </code>
       </a>
       on the source server if the source was started with
       <a class="link" href="replication-options-source.html#option_mysqld_show-replica-auth-info">
        <code class="option">
         --show-replica-auth-info
        </code>
       </a>
       .
      </p>
      <p>
       Although the name of this variable might imply otherwise,
       <a class="link" href="replication-options-replica.html#sysvar_report_user">
        <code class="literal">
         report_user
        </code>
       </a>
       is not
            connected to the MySQL user privilege system and so is not
            necessarily (or even likely to be) the same as the name of
            the MySQL replication user account.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_read_size">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_read_size">
        <code class="literal">
         rpl_read_size
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142112800">
      </a>
      <a class="indexterm" name="idm46045142111312">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_read_size">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-read-size=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_read_size">
             rpl_read_size
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            8192
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            8192
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294959104
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            8192
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The
       <a class="link" href="replication-options-replica.html#sysvar_rpl_read_size">
        <code class="literal">
         rpl_read_size
        </code>
       </a>
       system
            variable controls the minimum amount of data in bytes that
            is read from the binary log files and relay log files. If
            heavy disk I/O activity for these files is impeding
            performance for the database, increasing the read size might
            reduce file reads and I/O stalls when the file data is not
            currently cached by the operating system.
      </p>
      <p>
       The minimum and default value for
       <a class="link" href="replication-options-replica.html#sysvar_rpl_read_size">
        <code class="literal">
         rpl_read_size
        </code>
       </a>
       is 8192
            bytes. The value must be a multiple of 4KB. Note that a
            buffer the size of this value is allocated for each thread
            that reads from the binary log and relay log files,
            including dump threads on sources and coordinator threads on
            replicas. Setting a large value might therefore have an
            impact on memory consumption for servers.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_semi_sync_replica_enabled">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_enabled">
        <code class="literal">
         rpl_semi_sync_replica_enabled
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142073536">
      </a>
      <a class="indexterm" name="idm46045142072432">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_semi_sync_replica_enabled">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-semi-sync-replica-enabled[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_enabled">
             rpl_semi_sync_replica_enabled
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_enabled">
        <code class="literal">
         rpl_semi_sync_replica_enabled
        </code>
       </a>
       controls whether semisynchronous replication is enabled on
            the replica server. To enable or disable the plugin, set
            this variable to
       <code class="literal">
        ON
       </code>
       or
       <code class="literal">
        OFF
       </code>
       (or 1 or 0), respectively. The
            default is
       <code class="literal">
        OFF
       </code>
       .
      </p>
      <p>
       This variable is available only if the replica-side
            semisynchronous replication plugin is installed.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_semi_sync_replica_trace_level">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_trace_level">
        <code class="literal">
         rpl_semi_sync_replica_trace_level
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142043728">
      </a>
      <a class="indexterm" name="idm46045142042688">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_semi_sync_replica_trace_level">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-semi-sync-replica-trace-level=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_trace_level">
             rpl_semi_sync_replica_trace_level
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            32
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_trace_level">
        <code class="literal">
         rpl_semi_sync_replica_trace_level
        </code>
       </a>
       controls the semisynchronous replication debug trace level
            on the replica server. See
       <a class="link" href="replication-options-source.html#sysvar_rpl_semi_sync_master_trace_level">
        <code class="literal">
         rpl_semi_sync_master_trace_level
        </code>
       </a>
       for the permissible values.
      </p>
      <p>
       This variable is available only if the replica-side
            semisynchronous replication plugin is installed.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_semi_sync_slave_enabled">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_slave_enabled">
        <code class="literal">
         rpl_semi_sync_slave_enabled
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045142009968">
      </a>
      <a class="indexterm" name="idm46045142008864">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_semi_sync_slave_enabled">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-semi-sync-slave-enabled[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_slave_enabled">
             rpl_semi_sync_slave_enabled
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_enabled">
        <code class="literal">
         rpl_semi_sync_replica_enabled
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_semi_sync_slave_trace_level">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_slave_trace_level">
        <code class="literal">
         rpl_semi_sync_slave_trace_level
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141982960">
      </a>
      <a class="indexterm" name="idm46045141981856">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_semi_sync_slave_trace_level">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-semi-sync-slave-trace-level=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_slave_trace_level">
             rpl_semi_sync_slave_trace_level
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            32
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_rpl_semi_sync_replica_trace_level">
        <code class="literal">
         rpl_semi_sync_replica_trace_level
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_stop_replica_timeout">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_stop_replica_timeout">
        <code class="literal">
         rpl_stop_replica_timeout
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141951136">
      </a>
      <a class="indexterm" name="idm46045141949632">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_stop_replica_timeout">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-stop-replica-timeout=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_stop_replica_timeout">
             rpl_stop_replica_timeout
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            2
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           seconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       You can control the length of time (in seconds) that
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       waits before
            timing out by setting this variable. This can be used to
            avoid deadlocks between
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP
            REPLICA
        </code>
       </a>
       and other SQL statements using different
            client connections to the replica.
      </p>
      <p>
       The maximum and default value of
       <code class="literal">
        rpl_stop_replica_timeout
       </code>
       is 31536000
            seconds (1 year). The minimum is 2 seconds. Changes to this
            variable take effect for subsequent
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       statements.
      </p>
      <p>
       This variable affects only the client that issues a
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       statement. When
            the timeout is reached, the issuing client returns an error
            message stating that the command execution is incomplete.
            The client then stops waiting for the replication I/O
            (receiver)and SQL (applier) threads to stop, but the
            replication threads continue to try to stop, and the
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       statement
            remains in effect. Once the replication threads are no
            longer busy, the
       <a class="link" href="stop-replica.html" title="15.4.2.5 STOP REPLICA Statement">
        <code class="literal">
         STOP REPLICA
        </code>
       </a>
       statement is executed and the replica stops.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_rpl_stop_slave_timeout">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_rpl_stop_slave_timeout">
        <code class="literal">
         rpl_stop_slave_timeout
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141908608">
      </a>
      <a class="indexterm" name="idm46045141907120">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for rpl_stop_slave_timeout">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --rpl-stop-slave-timeout=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_rpl_stop_slave_timeout">
             rpl_stop_slave_timeout
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            2
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           seconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_rpl_stop_replica_timeout">
        <code class="literal">
         rpl_stop_replica_timeout
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_skip_replica_start">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_skip_replica_start">
        <code class="literal">
         skip_replica_start
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141872800">
      </a>
      <a class="indexterm" name="idm46045141871760">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for skip-replica-start">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --skip-replica-start[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_skip_replica_start">
             skip_replica_start
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_skip_replica_start">
        <code class="literal">
         skip_replica_start
        </code>
       </a>
       tells
            the replica server not to start the replication I/O
            (receiver) and SQL (applier) threads when the server starts.
            To start the threads later, use a
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START
            REPLICA
        </code>
       </a>
       statement.
      </p>
      <p>
       This system variable is read-only and can be set by using
            the
       <code class="literal">
        PERSIST_ONLY
       </code>
       keyword or the
       <code class="literal">
        @@persist_only
       </code>
       qualifier with the
       <a class="link" href="set.html" title="13.3.6 The SET Type">
        <code class="literal">
         SET
        </code>
       </a>
       statement. The
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-replica-start">
        <code class="option">
         --skip-replica-start
        </code>
       </a>
       command
            line option also sets this system variable. You can use the
            system variable in place of the command line option to allow
            access to this feature using MySQL Server’s privilege
            structure, so that database administrators do not need any
            privileged access to the operating system.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_skip_slave_start">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_skip_slave_start">
        <code class="literal">
         skip_slave_start
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141839824">
      </a>
      <a class="indexterm" name="idm46045141838736">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for skip-slave-start">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --skip-slave-start[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_skip_slave_start">
             skip_slave_start
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#option_mysqld_skip-replica-start">
        <code class="option">
         --skip-replica-start
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_checkpoint_group">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_checkpoint_group">
        <code class="literal">
         slave_checkpoint_group
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141811232">
      </a>
      <a class="indexterm" name="idm46045141809744">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_checkpoint_group">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-checkpoint-group=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_checkpoint_group">
             slave_checkpoint_group
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            512
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            32
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            524280
           </code>
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            8
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_group">
        <code class="literal">
         replica_checkpoint_group
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_checkpoint_period">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_checkpoint_period">
        <code class="literal">
         slave_checkpoint_period
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141774544">
      </a>
      <a class="indexterm" name="idm46045141773056">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_checkpoint_period">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-checkpoint-period=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_checkpoint_period">
             slave_checkpoint_period
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            300
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           milliseconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated synonym for
       <a class="link" href="replication-options-replica.html#sysvar_replica_checkpoint_period">
        <code class="literal">
         replica_checkpoint_period
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_compressed_protocol">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_compressed_protocol">
        <code class="literal">
         slave_compressed_protocol
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141738736">
      </a>
      <a class="indexterm" name="idm46045141737632">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_compressed_protocol">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-compressed-protocol[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_compressed_protocol">
             slave_compressed_protocol
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_compressed_protocol">
        <code class="literal">
         replica_compressed_protocol
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_exec_mode">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_exec_mode">
        <code class="literal">
         slave_exec_mode
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141709872">
      </a>
      <a class="indexterm" name="idm46045141708784">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_exec_mode">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-exec-mode=mode
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_exec_mode">
             slave_exec_mode
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Enumeration
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             IDEMPOTENT
            </code>
            (NDB)
           </p>
           <p class="valid-value">
            <code class="literal">
             STRICT
            </code>
            (Other)
           </p>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             STRICT
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             IDEMPOTENT
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_exec_mode">
        <code class="literal">
         replica_exec_mode
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_load_tmpdir">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_load_tmpdir">
        <code class="literal">
         slave_load_tmpdir
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141677520">
      </a>
      <a class="indexterm" name="idm46045141676480">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_load_tmpdir">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-load-tmpdir=dir_name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_load_tmpdir">
             slave_load_tmpdir
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Directory name
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            Value of --tmpdir
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_load_tmpdir">
        <code class="literal">
         replica_load_tmpdir
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_max_allowed_packet">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_max_allowed_packet">
        <code class="literal">
         slave_max_allowed_packet
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141648672">
      </a>
      <a class="indexterm" name="idm46045141647568">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_max_allowed_packet">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-max-allowed-packet=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_max_allowed_packet">
             slave_max_allowed_packet
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1073741824
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_max_allowed_packet">
        <code class="literal">
         replica_max_allowed_packet
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_net_timeout">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_net_timeout">
        <code class="literal">
         slave_net_timeout
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141609680">
      </a>
      <a class="indexterm" name="idm46045141608640">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_net_timeout">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-net-timeout=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_net_timeout">
             slave_net_timeout
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            60
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            31536000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           seconds
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_net_timeout">
        <code class="literal">
         replica_net_timeout
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_parallel_type">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_parallel_type">
        <code class="literal">
         slave_parallel_type
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141573872">
      </a>
      <a class="indexterm" name="idm46045141572832">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_parallel_type">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-parallel-type=value
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_parallel_type">
             slave_parallel_type
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Enumeration
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            LOGICAL_CLOCK
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             DATABASE
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             LOGICAL_CLOCK
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_type">
        <code class="literal">
         replica_parallel_type
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_parallel_workers">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_parallel_workers">
        <code class="literal">
         slave_parallel_workers
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141541184">
      </a>
      <a class="indexterm" name="idm46045141540144">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_parallel_workers">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-parallel-workers=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_parallel_workers">
             slave_parallel_workers
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            4
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_parallel_workers">
        <code class="literal">
         replica_parallel_workers
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_pending_jobs_size_max">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_pending_jobs_size_max">
        <code class="literal">
         slave_pending_jobs_size_max
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141507488">
      </a>
      <a class="indexterm" name="idm46045141505984">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_pending_jobs_size_max">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-pending-jobs-size-max=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_pending_jobs_size_max">
             slave_pending_jobs_size_max
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            128M
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            16EiB
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Unit
          </th>
          <td>
           bytes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="server-system-variables.html#system-variables-block-size" title="Note">
            Block Size
           </a>
          </th>
          <td>
           <code class="literal">
            1024
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_pending_jobs_size_max">
        <code class="literal">
         replica_pending_jobs_size_max
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_preserve_commit_order">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_preserve_commit_order">
        <code class="literal">
         slave_preserve_commit_order
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141468576">
      </a>
      <a class="indexterm" name="idm46045141467072">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_preserve_commit_order">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-preserve-commit-order[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_preserve_commit_order">
             slave_preserve_commit_order
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_preserve_commit_order">
        <code class="literal">
         replica_preserve_commit_order
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_skip_errors">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_skip_errors">
        <code class="literal">
         slave_skip_errors
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141439536">
      </a>
      <a class="indexterm" name="idm46045141438496">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave-skip-errors">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-skip-errors=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_skip_errors">
             slave_skip_errors
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             OFF
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             [list of error codes]
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             all
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ddl_exist_errors
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_skip_errors">
        <code class="literal">
         replica_skip_errors
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_replica_skip_errors">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_replica_skip_errors">
        <code class="literal">
         replica_skip_errors
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141405024">
      </a>
      <a class="indexterm" name="idm46045141403984">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for replica_skip_errors">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --replica-skip-errors=name
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_replica_skip_errors">
             replica_skip_errors
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           String
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            OFF
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             OFF
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             [list of error codes]
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             all
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ddl_exist_errors
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Normally, replication stops when an error occurs on the
            replica, which gives you the opportunity to resolve the
            inconsistency in the data manually. This variable causes the
            replication SQL thread to continue replication when a
            statement returns any of the errors listed in the variable
            value.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_sql_verify_checksum">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_sql_verify_checksum">
        <code class="literal">
         slave_sql_verify_checksum
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141373424">
      </a>
      <a class="indexterm" name="idm46045141372320">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_sql_verify_checksum">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-sql-verify-checksum[={OFF|ON}]
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_sql_verify_checksum">
             slave_sql_verify_checksum
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Boolean
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            ON
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_sql_verify_checksum">
        <code class="literal">
         replica_sql_verify_checksum
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_transaction_retries">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_transaction_retries">
        <code class="literal">
         slave_transaction_retries
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141344480">
      </a>
      <a class="indexterm" name="idm46045141343376">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_transaction_retries">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-transaction-retries=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_transaction_retries">
             slave_transaction_retries
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value (64-bit platforms)
          </th>
          <td>
           <code class="literal">
            18446744073709551615
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value (32-bit platforms)
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_transaction_retries">
        <code class="literal">
         replica_transaction_retries
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_slave_type_conversions">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_slave_type_conversions">
        <code class="literal">
         slave_type_conversions
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141308160">
      </a>
      <a class="indexterm" name="idm46045141307120">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for slave_type_conversions">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --slave-type-conversions=set
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_slave_type_conversions">
             slave_type_conversions
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Set
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             ALL_LOSSY
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_NON_LOSSY
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_SIGNED
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             ALL_UNSIGNED
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_replica_type_conversions">
        <code class="literal">
         replica_type_conversions
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sql_replica_skip_counter">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sql_replica_skip_counter">
        <code class="literal">
         sql_replica_skip_counter
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141273760">
      </a>
      <a class="indexterm" name="idm46045141272656">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sql_replica_skip_counter">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sql_replica_skip_counter">
             sql_replica_skip_counter
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_sql_replica_skip_counter">
        <code class="literal">
         sql_replica_skip_counter
        </code>
       </a>
       specifies the number of events from the source that a
            replica should skip. Setting the option has no immediate
            effect. The variable applies to the next
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statement; the
            next
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START REPLICA
        </code>
       </a>
       statement
            also changes the value back to 0. When this variable is set
            to a nonzero value and there are multiple replication
            channels configured, the
       <a class="link" href="start-replica.html" title="15.4.2.4 START REPLICA Statement">
        <code class="literal">
         START
            REPLICA
        </code>
       </a>
       statement can only be used with the
       <code class="literal">
        FOR CHANNEL
        <em class="replaceable">
         <code>
          channel
         </code>
        </em>
       </code>
       clause.
      </p>
      <p>
       This option is incompatible with GTID-based replication, and
            must not be set to a nonzero value when
       <a class="link" href="replication-options-gtids.html#sysvar_gtid_mode">
        <code class="literal">
         gtid_mode=ON
        </code>
       </a>
       is set. If you
            need to skip transactions when employing GTIDs, use
       <a class="link" href="replication-options-gtids.html#sysvar_gtid_executed">
        <code class="literal">
         gtid_executed
        </code>
       </a>
       from the
            source instead. If you have enabled GTID assignment on a
            replication channel using the
       <code class="literal">
        ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS
       </code>
       option of the
       <a class="link" href="change-replication-source-to.html" title="15.4.2.2 CHANGE REPLICATION SOURCE TO Statement">
        <code class="literal">
         CHANGE REPLICATION SOURCE
            TO
        </code>
       </a>
       statement,
       <a class="link" href="replication-options-replica.html#sysvar_sql_replica_skip_counter">
        <code class="literal">
         sql_replica_skip_counter
        </code>
       </a>
       is
            available. See
       <a class="xref" href="replication-administration-skip.html" title="19.1.7.3 Skipping Transactions">
        Section 19.1.7.3, “Skipping Transactions”
       </a>
       .
      </p>
      <div class="important" style="margin-left: 0.5in; margin-right: 0.5in;">
       <div class="admon-title">
        Important
       </div>
       <p>
        If skipping the number of events specified by setting this
              variable would cause the replica to begin in the middle of
              an event group, the replica continues to skip until it
              finds the beginning of the next event group and begins
              from that point. For more information, see
        <a class="xref" href="replication-administration-skip.html" title="19.1.7.3 Skipping Transactions">
         Section 19.1.7.3, “Skipping Transactions”
        </a>
        .
       </p>
      </div>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sql_slave_skip_counter">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sql_slave_skip_counter">
        <code class="literal">
         sql_slave_skip_counter
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141230144">
      </a>
      <a class="indexterm" name="idm46045141229104">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sql_slave_skip_counter">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sql_slave_skip_counter">
             sql_slave_skip_counter
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_sql_replica_skip_counter">
        <code class="literal">
         sql_replica_skip_counter
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sync_master_info">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sync_master_info">
        <code class="literal">
         sync_master_info
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141198928">
      </a>
      <a class="indexterm" name="idm46045141197840">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sync_master_info">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --sync-master-info=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sync_master_info">
             sync_master_info
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Deprecated alias for
       <a class="link" href="replication-options-replica.html#sysvar_sync_source_info">
        <code class="literal">
         sync_source_info
        </code>
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sync_relay_log">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sync_relay_log">
        <code class="literal">
         sync_relay_log
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141165328">
      </a>
      <a class="indexterm" name="idm46045141164240">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sync_relay_log">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --sync-relay-log=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sync_relay_log">
             sync_relay_log
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       If the value of this variable is greater than 0, the MySQL
            server synchronizes its relay log to disk (using
       <code class="literal">
        fdatasync()
       </code>
       ) after every
       <code class="literal">
        sync_relay_log
       </code>
       events are written to the
            relay log. Setting this variable takes effect for all
            replication channels immediately, including running
            channels.
      </p>
      <p>
       Setting
       <code class="literal">
        sync_relay_log
       </code>
       to 0 causes no
            synchronization to be done to disk; in this case, the server
            relies on the operating system to flush the relay log's
            contents from time to time as for any other file.
      </p>
      <p>
       A value of 1 is the safest choice because in the event of an
            unexpected halt you lose at most one event from the relay
            log. However, it is also the slowest choice (unless the disk
            has a battery-backed cache, which makes synchronization very
            fast). For information on the combination of settings on a
            replica that is most resilient to unexpected halts, see
       <a class="xref" href="replication-solutions-unexpected-replica-halt.html" title="19.4.2 Handling an Unexpected Halt of a Replica">
        Section 19.4.2, “Handling an Unexpected Halt of a Replica”
       </a>
       .
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sync_relay_log_info">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sync_relay_log_info">
        <code class="literal">
         sync_relay_log_info
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141130144">
      </a>
      <a class="indexterm" name="idm46045141129104">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sync_relay_log_info">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --sync-relay-log-info=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Deprecated
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sync_relay_log_info">
             sync_relay_log_info
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       The number of transactions after which the replica updates
            the applier metadata repository. When the applier metadata
            repository is stored as an
       <a class="link" href="innodb-storage-engine.html" title="Chapter 17 The InnoDB Storage Engine">
        <code class="literal">
         InnoDB
        </code>
       </a>
       table, which is the
            default, it is updated after every transaction and this
            system variable is ignored. If the applier metadata
            repository is stored as a file (deprecated), the replica
            synchronizes its
       <code class="literal">
        relay-log.info
       </code>
       file to
            disk (using
       <code class="literal">
        fdatasync()
       </code>
       ) after this many
            transactions.
       <code class="literal">
        0
       </code>
       (zero) means that the
            file contents are flushed by the operating system only.
            Setting this variable takes effect for all replication
            channels immediately, including running channels.
      </p>
      <p>
       Since storing applier metadata as a file is deprecated, this
            variable is also deprecated, and the server raises a warning
            whenever you set it or read its value. You should expect
       <code class="literal">
        sync_relay_log_info
       </code>
       to be removed in a
            future version of MySQL, and migrate applications now that
            may depend on it.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_sync_source_info">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_sync_source_info">
        <code class="literal">
         sync_source_info
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141092336">
      </a>
      <a class="indexterm" name="idm46045141091248">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for sync_source_info">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --sync-source-info=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_sync_source_info">
             sync_source_info
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Integer
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            10000
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Minimum Value
          </th>
          <td>
           <code class="literal">
            0
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Maximum Value
          </th>
          <td>
           <code class="literal">
            4294967295
           </code>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       <a class="link" href="replication-options-replica.html#sysvar_sync_source_info">
        <code class="literal">
         sync_source_info
        </code>
       </a>
       specifies
            the number of events after which the replica updates the
            connection metadata repository. When the connection metadata
            repository is stored as an
       <a class="link" href="innodb-storage-engine.html" title="Chapter 17 The InnoDB Storage Engine">
        <code class="literal">
         InnoDB
        </code>
       </a>
       table (the default, it
            is updated after this number of events. If the connection
            metadata repository is stored as a file (deprecated), the
            replica synchronizes its
       <code class="literal">
        master.info
       </code>
       file
            to disk (using
       <code class="literal">
        fdatasync()
       </code>
       ) after this
            number of events. The default value is 10000, and a zero
            value means that the repository is never updated. Setting
            this variable takes effect for all replication channels
            immediately, including running channels.
      </p>
     </li>
     <li class="listitem">
      <p>
       <a name="sysvar_terminology_use_previous">
       </a>
       <a class="link" href="replication-options-replica.html#sysvar_terminology_use_previous">
        <code class="literal">
         terminology_use_previous
        </code>
       </a>
      </p>
      <a class="indexterm" name="idm46045141057392">
      </a>
      <a class="indexterm" name="idm46045141056288">
      </a>
      <div class="informaltable">
       <table frame="box" rules="all" summary="Properties for terminology_use_previous">
        <colgroup>
         <col style="width: 30%"/>
         <col style="width: 70%"/>
        </colgroup>
        <tbody>
         <tr>
          <th>
           Command-Line Format
          </th>
          <td>
           <code class="literal">
            --terminology-use-previous=#
           </code>
          </td>
         </tr>
         <tr>
          <th>
           System Variable
          </th>
          <td>
           <code class="literal">
            <a class="link" href="replication-options-replica.html#sysvar_terminology_use_previous">
             terminology_use_previous
            </a>
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Scope
          </th>
          <td>
           Global, Session
          </td>
         </tr>
         <tr>
          <th>
           Dynamic
          </th>
          <td>
           Yes
          </td>
         </tr>
         <tr>
          <th>
           <a class="link" href="optimizer-hints.html#optimizer-hints-set-var" title="Variable-Setting Hint Syntax">
            <code class="literal">
             SET_VAR
            </code>
           </a>
           Hint Applies
          </th>
          <td>
           No
          </td>
         </tr>
         <tr>
          <th>
           Type
          </th>
          <td>
           Enumeration
          </td>
         </tr>
         <tr>
          <th>
           Default Value
          </th>
          <td>
           <code class="literal">
            NONE
           </code>
          </td>
         </tr>
         <tr>
          <th>
           Valid Values
          </th>
          <td>
           <p class="valid-value">
            <code class="literal">
             NONE
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             BEFORE_8_0_26
            </code>
           </p>
           <p class="valid-value">
            <code class="literal">
             BEFORE_8_2_0
            </code>
           </p>
          </td>
         </tr>
        </tbody>
       </table>
      </div>
      <p>
       Incompatible changes were made in MySQL 8.0 to
            instrumentation names containing the terms
       <code class="literal">
        master
       </code>
       ,
       <code class="literal">
        slave
       </code>
       , and
       <code class="literal">
        mts
       </code>
       (for
       <span class="quote">
        “
        <span class="quote">
         Multi-Threaded
            Slave
        </span>
        ”
       </span>
       ), which were changed respectively to
       <code class="literal">
        source
       </code>
       ,
       <code class="literal">
        replica
       </code>
       , and
       <code class="literal">
        mta
       </code>
       (for
       <span class="quote">
        “
        <span class="quote">
         Multi-Threaded
            Applier
        </span>
        ”
       </span>
       ). If these incompatible changes impact your
            applications, set
       <code class="literal">
        terminology_use_previous
       </code>
       to
       <code class="literal">
        BEFORE_8_0_26
       </code>
       to make the MySQL server
            use the old versions of the names for the objects specified
            in the previous list. This enables monitoring tools that
            rely on the old names to continue working until they can be
            updated to use the new names.
      </p>
      <p>
       MySQL 8.4 normally displays
       <code class="literal">
        REPLICA_SIDE_DISABLED
       </code>
       rather than
       <code class="literal">
        SLAVESIDE_DISABLED
       </code>
       in the output of
       <code class="literal">
        SHOW CREATE EVENT
       </code>
       ,
       <code class="literal">
        SHOW
            EVENTS
       </code>
       , and queries against the Information Schema
       <code class="literal">
        EVENTS
       </code>
       table. You can cause
       <code class="literal">
        SLAVESIDE_DISABLED
       </code>
       to be shown instead by
            setting
       <code class="literal">
        terminology_use_previous
       </code>
       to
       <code class="literal">
        BEFORE_8_0_26
       </code>
       or
       <code class="literal">
        BEFORE_8_2_0
       </code>
       .
      </p>
      <p>
       Set the
       <a class="link" href="replication-options-replica.html#sysvar_terminology_use_previous">
        <code class="literal">
         terminology_use_previous
        </code>
       </a>
       system variable with session scope to support individual
            users, or with global scope to be the default for all new
            sessions. When global scope is used, the slow query log
            contains the old versions of the names.
      </p>
      <p>
       The affected instrumentation names are given in the
            following list. The
       <a class="link" href="replication-options-replica.html#sysvar_terminology_use_previous">
        <code class="literal">
         terminology_use_previous
        </code>
       </a>
       system variable only affects these items. It does not affect
            the new aliases for system variables, status variables, and
            command-line options that were also introduced in MySQL 8.0,
            and these can still be used when it is enabled.
      </p>
      <div class="itemizedlist">
       <ul class="itemizedlist" style="list-style-type: circle; ">
        <li class="listitem">
         <p>
          Instrumented locks (mutexes), visible in the
          <code class="literal">
           mutex_instances
          </code>
          and
          <code class="literal">
           events_waits_*
          </code>
          Performance Schema
                tables with the prefix
          <code class="literal">
           wait/synch/mutex/
          </code>
         </p>
        </li>
        <li class="listitem">
         <p>
          Read/write locks, visible in the
          <code class="literal">
           rwlock_instances
          </code>
          and
          <code class="literal">
           events_waits_*
          </code>
          Performance Schema
                tables with the prefix
          <code class="literal">
           wait/synch/rwlock/
          </code>
         </p>
        </li>
        <li class="listitem">
         <p>
          Instrumented condition variables, visible in the
          <code class="literal">
           cond_instances
          </code>
          and
          <code class="literal">
           events_waits_*
          </code>
          Performance Schema
                tables with the prefix
          <code class="literal">
           wait/synch/cond/
          </code>
         </p>
        </li>
        <li class="listitem">
         <p>
          Instrumented memory allocations, visible in the
          <code class="literal">
           memory_summary_*
          </code>
          Performance Schema
                tables with the prefix
          <code class="literal">
           memory/sql/
          </code>
         </p>
        </li>
        <li class="listitem">
         <p>
          Thread names, visible in the
          <code class="literal">
           threads
          </code>
          Performance Schema table with the prefix
          <code class="literal">
           thread/sql/
          </code>
         </p>
        </li>
        <li class="listitem">
         <p>
          Thread stages, visible in the
          <code class="literal">
           events_stages_*
          </code>
          Performance Schema
                tables with the prefix
          <code class="literal">
           stage/sql/
          </code>
          ,
                and without the prefix in the
          <code class="literal">
           threads
          </code>
          and
          <code class="literal">
           processlist
          </code>
          Performance Schema
                tables, the output from the
          <code class="literal">
           SHOW
                PROCESSLIST
          </code>
          statement, the Information Schema
          <code class="literal">
           processlist
          </code>
          table, and the slow query
                log
         </p>
        </li>
        <li class="listitem">
         <p>
          Thread commands, visible in the
          <code class="literal">
           events_statements_history*
          </code>
          and
          <code class="literal">
           events_statements_summary_*_by_event_name
          </code>
          Performance Schema tables with the prefix
          <code class="literal">
           statement/com/
          </code>
          , and without the
                prefix in the
          <code class="literal">
           threads
          </code>
          and
          <code class="literal">
           processlist
          </code>
          Performance Schema
                tables, the output from the
          <code class="literal">
           SHOW
                PROCESSLIST
          </code>
          statement, the Information Schema
          <code class="literal">
           processlist
          </code>
          table, and the output
                from the
          <code class="literal">
           SHOW REPLICA STATUS
          </code>
          statement
         </p>
        </li>
       </ul>
      </div>
     </li>
    </ul>
   </div>
  </div>
 </div>
 <br/>
</div>
