<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h2 class="title">
      <a name="faqs-general">
      </a>
      A.1 MySQL 8.4 FAQ: General
     </h2>
    </div>
   </div>
  </div>
  <div class="qandaset">
   <a name="idm46045056501904">
   </a>
   <dl>
    <dt>
     A.1.1.
     <a href="faqs-general.html#faq-mysql-version-ga">
      Which version of MySQL is production-ready (GA)?
     </a>
    </dt>
    <dt>
     A.1.2.
     <a href="faqs-general.html#faq-mysql-why-8.0">
      Why did MySQL version numbering skip versions 6 and 7 and go
        straight to 8.0?
     </a>
    </dt>
    <dt>
     A.1.3.
     <a href="faqs-general.html#faq-mysql-do-subqueries">
      Can MySQL do subqueries?
     </a>
    </dt>
    <dt>
     A.1.4.
     <a href="faqs-general.html#faq-mysql-do-multiple-iud">
      Can MySQL perform multiple-table inserts, updates, and deletes?
     </a>
    </dt>
    <dt>
     A.1.5.
     <a href="faqs-general.html#faq-mysql-have-sequences">
      Does MySQL have Sequences?
     </a>
    </dt>
    <dt>
     A.1.6.
     <a href="faqs-general.html#faq-mysql-have-now-fractions">
      Does MySQL have a NOW() function
        with fractions of seconds?
     </a>
    </dt>
    <dt>
     A.1.7.
     <a href="faqs-general.html#faq-mysql-support-multi-core">
      Does MySQL work with multi-core processors?
     </a>
    </dt>
    <dt>
     A.1.8.
     <a href="faqs-general.html#faq-mysql-why-multiple-processes">
      Why do I see multiple processes for mysqld?
     </a>
    </dt>
    <dt>
     A.1.9.
     <a href="faqs-general.html#faq-mysql-have-acid-transactions">
      Can MySQL perform ACID transactions?
     </a>
    </dt>
   </dl>
   <table border="0" style="width: 100%;">
    <colgroup>
     <col align="left" width="1%"/>
     <col/>
    </colgroup>
    <tbody>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-version-ga">
       </a>
       <a name="idm46045056501136">
       </a>
       <p>
        <b>
         A.1.1.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Which version of MySQL is production-ready (GA)?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        MySQL 9.1, 8.4, and 8.0 are actively supported for production
        use.
       </p>
       <p>
        The MySQL 9 Innovation series began with the MySQL 9.0.0 release
        on 01 July 2024.
       </p>
       <p>
        The MySQL 8.4 LTS series began with the MySQL 8.4.0 release on
        30 April 2024.
       </p>
       <p>
        The MySQL 8 Innovation series began with the MySQL 8.1.0 release
        on 18 July 2023. Active development ended on 2024-01-16 with the
        MySQL 8.3.0 release.
       </p>
       <p>
        MySQL 8.0 achieved General Availability (GA) status with MySQL
        8.0.11, which was released for production use on 19 April 2018.
        It became a bugfix series as of MySQL 8.0.34 with the
        introduction of the
        <a class="link" href="mysql-releases.html" title="1.3 MySQL Releases: Innovation and LTS">
         Innovation
        and LTS release model
        </a>
        .
       </p>
       <p>
        MySQL 5.7 achieved General Availability (GA) status with MySQL
        5.7.9, which was released for production use on 21 October 2015.
        Active development for MySQL 5.7 ended on 25 October 2023 with
        the MySQL 5.7.44 release.
       </p>
       <p>
        MySQL 5.6 achieved General Availability (GA) status with MySQL
        5.6.10, which was released for production use on 5 February
        2013. Active development for MySQL 5.6 has ended.
       </p>
       <p>
        MySQL 5.5 achieved General Availability (GA) status with MySQL
        5.5.8, which was released for production use on 3 December 2010.
        Active development for MySQL 5.5 has ended.
       </p>
       <p>
        MySQL 5.1 achieved General Availability (GA) status with MySQL
        5.1.30, which was released for production use on 14 November
        2008. Active development for MySQL 5.1 has ended.
       </p>
       <p>
        MySQL 5.0 achieved General Availability (GA) status with MySQL
        5.0.15, which was released for production use on 19 October
        2005. Active development for MySQL 5.0 has ended.
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-why-8.0">
       </a>
       <a name="idm46045056492880">
       </a>
       <p>
        <b>
         A.1.2.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Why did MySQL version numbering skip versions 6 and 7 and go
        straight to 8.0?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Due to the many new and important features we were introducing
        in this MySQL version, we decided to start a fresh new series.
        As the series numbers 6 and 7 had actually been used before by
        MySQL, we went to 8.0.
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-do-subqueries">
       </a>
       <a name="idm46045056490608">
       </a>
       <p>
        <b>
         A.1.3.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Can MySQL do subqueries?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Yes. See
        <a class="xref" href="subqueries.html" title="15.2.15 Subqueries">
         Section 15.2.15, “Subqueries”
        </a>
        .
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-do-multiple-iud">
       </a>
       <a name="idm46045056487904">
       </a>
       <p>
        <b>
         A.1.4.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Can MySQL perform multiple-table inserts, updates, and deletes?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Yes. For the syntax required to perform multiple-table updates,
        see
        <a class="xref" href="update.html" title="15.2.17 UPDATE Statement">
         Section 15.2.17, “UPDATE Statement”
        </a>
        ; for that required to perform
        multiple-table deletes, see
        <a class="xref" href="delete.html" title="15.2.2 DELETE Statement">
         Section 15.2.2, “DELETE Statement”
        </a>
        .
       </p>
       <p>
        A multiple-table insert can be accomplished using a trigger
        whose
        <code class="literal">
         FOR EACH ROW
        </code>
        clause contains multiple
        <a class="link" href="insert.html" title="15.2.7 INSERT Statement">
         <code class="literal">
          INSERT
         </code>
        </a>
        statements within a
        <code class="literal">
         BEGIN ... END
        </code>
        block. See
        <a class="xref" href="triggers.html" title="27.3 Using Triggers">
         Section 27.3, “Using Triggers”
        </a>
        .
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-have-sequences">
       </a>
       <a name="idm46045056480544">
       </a>
       <p>
        <b>
         A.1.5.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Does MySQL have Sequences?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        No. However, MySQL has an
        <code class="literal">
         AUTO_INCREMENT
        </code>
        system, which can also handle inserts in a multi-source
        replication setup. With the
        <a class="link" href="replication-options-source.html#sysvar_auto_increment_increment">
         <code class="literal">
          auto_increment_increment
         </code>
        </a>
        and
        <a class="link" href="replication-options-source.html#sysvar_auto_increment_offset">
         <code class="literal">
          auto_increment_offset
         </code>
        </a>
        system
        variables, you can set each server to generate auto-increment
        values that don't conflict with other servers. The
        <a class="link" href="replication-options-source.html#sysvar_auto_increment_increment">
         <code class="literal">
          auto_increment_increment
         </code>
        </a>
        value
        should be greater than the number of servers, and each server
        should have a unique offset.
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-have-now-fractions">
       </a>
       <a name="idm46045056473632">
       </a>
       <p>
        <b>
         A.1.6.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Does MySQL have a
        <a class="link" href="date-and-time-functions.html#function_now">
         <code class="literal">
          NOW()
         </code>
        </a>
        function
        with fractions of seconds?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Yes, see
        <a class="xref" href="fractional-seconds.html" title="13.2.6 Fractional Seconds in Time Values">
         Section 13.2.6, “Fractional Seconds in Time Values”
        </a>
        .
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-support-multi-core">
       </a>
       <a name="idm46045056469760">
       </a>
       <p>
        <b>
         A.1.7.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Does MySQL work with multi-core processors?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Yes. MySQL is fully multithreaded, and makes use of all CPUs
        made available to it. Not all CPUs may be available; modern
        operating systems should be able to utilize all underlying CPUs,
        but also make it possible to restrict a process to a specific
        CPU or sets of CPUs.
       </p>
       <p>
        On Windows, there is currently a limit to the number of
        (logical) processors that
        <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
         <span class="command">
          <strong>
           mysqld
          </strong>
         </span>
        </a>
        can use: a
        single processor group, which is limited to a maximum of 64
        logical processors.
       </p>
       <p>
        Use of multiple cores may be seen in these ways:
       </p>
       <div class="itemizedlist">
        <ul class="itemizedlist" style="list-style-type: disc; ">
         <li class="listitem">
          <p>
           A single core is usually used to service the commands issued
            from one session.
          </p>
         </li>
         <li class="listitem">
          <p>
           A few background threads make limited use of extra cores;
            for example, to keep background I/O tasks moving.
          </p>
         </li>
         <li class="listitem">
          <p>
           If the database is I/O-bound (indicated by CPU consumption
            less than capacity), adding more CPUs is futile. If the
            database is partitioned into an I/O-bound part and a
            CPU-bond part, adding CPUs may still be useful.
          </p>
         </li>
        </ul>
       </div>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-why-multiple-processes">
       </a>
       <a name="idm46045056461136">
       </a>
       <p>
        <b>
         A.1.8.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Why do I see multiple processes for
        <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
         <span class="command">
          <strong>
           mysqld
          </strong>
         </span>
        </a>
        ?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
         <span class="command">
          <strong>
           mysqld
          </strong>
         </span>
        </a>
        is a single-process program, not a
        multi-process program, and does not fork or launch other
        processes. However,
        <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
         <span class="command">
          <strong>
           mysqld
          </strong>
         </span>
        </a>
        is multithreaded
        and some process-reporting system utilities display separate
        entries for each thread of multithreaded processes, which may
        lead to the appearance of multiple
        <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
         <span class="command">
          <strong>
           mysqld
          </strong>
         </span>
        </a>
        processes when in fact there is only one.
       </p>
      </td>
     </tr>
     <tr class="question">
      <td align="left" valign="top">
       <a name="faq-mysql-have-acid-transactions">
       </a>
       <a name="idm46045056453936">
       </a>
       <p>
        <b>
         A.1.9.
        </b>
       </p>
      </td>
      <td align="left" valign="top">
       <p>
        Can MySQL perform ACID transactions?
       </p>
      </td>
     </tr>
     <tr class="answer">
      <td align="left" valign="top">
      </td>
      <td align="left" valign="top">
       <p>
        Yes. All current MySQL versions support transactions. The
        <code class="literal">
         InnoDB
        </code>
        storage engine offers full ACID
        transactions with row-level locking, multi-versioning,
        nonlocking repeatable reads, and all four SQL standard isolation
        levels.
       </p>
       <p>
        The
        <a class="link" href="mysql-cluster.html" title="Chapter 25 MySQL NDB Cluster 8.4">
         <code class="literal">
          NDB
         </code>
        </a>
        storage engine supports the
        <a class="link" href="innodb-transaction-isolation-levels.html#isolevel_read-committed">
         <code class="literal">
          READ COMMITTED
         </code>
        </a>
        transaction
        isolation level only.
       </p>
      </td>
     </tr>
    </tbody>
   </table>
  </div>
 </div>
 <br/>
</div>
