<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h2 class="title">
      <a name="solaris-installation">
      </a>
      2.7 Installing MySQL on Solaris
     </h2>
    </div>
   </div>
  </div>
  <div class="toc">
   <dl class="toc">
    <dt>
     <span class="section">
      <a href="solaris-installation-pkg.html">
       2.7.1 Installing MySQL on Solaris Using a Solaris PKG
      </a>
     </span>
    </dt>
   </dl>
  </div>
  <a class="indexterm" name="idm46045329794880">
  </a>
  <a class="indexterm" name="idm46045329793424">
  </a>
  <a class="indexterm" name="idm46045329791968">
  </a>
  <a class="indexterm" name="idm46045329790480">
  </a>
  <a class="indexterm" name="idm46045329789392">
  </a>
  <a class="indexterm" name="idm46045329787904">
  </a>
  <a class="indexterm" name="idm46045329786448">
  </a>
  <a class="indexterm" name="idm46045329784960">
  </a>
  <a class="indexterm" name="idm46045329783888">
  </a>
  <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
   <div class="admon-title">
    Note
   </div>
   <p>
    MySQL 8.4 supports Solaris 11.4 and higher
   </p>
  </div>
  <p>
   MySQL on Solaris is available in a number of different formats.
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      For information on installing using the native Solaris PKG
        format, see
      <a class="xref" href="solaris-installation-pkg.html" title="2.7.1 Installing MySQL on Solaris Using a Solaris PKG">
       Section 2.7.1, “Installing MySQL on Solaris Using a Solaris PKG”
      </a>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      To use a standard
      <code class="literal">
       tar
      </code>
      binary installation,
        use the notes provided in
      <a class="xref" href="binary-installation.html" title="2.2 Installing MySQL on Unix/Linux Using Generic Binaries">
       Section 2.2, “Installing MySQL on Unix/Linux Using Generic Binaries”
      </a>
      .
        Check the notes and hints at the end of this section for Solaris
        specific notes that you may need before or after installation.
     </p>
    </li>
   </ul>
  </div>
  <p>
   To obtain a binary MySQL distribution for Solaris in tarball or PKG
    format,
   <a class="ulink" href="https://dev.mysql.com/downloads/mysql/8.4.html" target="_top">
    https://dev.mysql.com/downloads/mysql/8.4.html
   </a>
   .
  </p>
  <p>
   Additional notes to be aware of when installing and using MySQL on
    Solaris:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      If you want to use MySQL with the
      <code class="literal">
       mysql
      </code>
      user
        and group, use the
      <span class="command">
       <strong>
        groupadd
       </strong>
      </span>
      and
      <span class="command">
       <strong>
        useradd
       </strong>
      </span>
      commands:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting language-terminal"><div class="docs-select-all right" id="sa85607113"><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">groupadd mysql
useradd <span class="token property">-g</span> mysql <span class="token property">-s</span> /bin/false mysql</code></pre>
     </div>
    </li>
    <li class="listitem">
     <p>
      If you install MySQL using a binary tarball distribution on
        Solaris, because the Solaris
      <span class="command">
       <strong>
        tar
       </strong>
      </span>
      cannot
        handle long file names, use GNU
      <span class="command">
       <strong>
        tar
       </strong>
      </span>
      (
      <span class="command">
       <strong>
        gtar
       </strong>
      </span>
      ) to unpack the distribution. If you do
        not have GNU
      <span class="command">
       <strong>
        tar
       </strong>
      </span>
      on your system, install it
        with the following command:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa62231147"><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">pkg install archiver/gnu-tar</code></pre>
     </div>
    </li>
    <li class="listitem">
     <p>
      You should mount any file systems on which you intend to store
      <code class="literal">
       InnoDB
      </code>
      files with the
      <code class="literal">
       forcedirectio
      </code>
      option. (By default mounting is
        done without this option.) Failing to do so causes a significant
        drop in performance when using the
      <code class="literal">
       InnoDB
      </code>
      storage engine on this platform.
     </p>
    </li>
    <li class="listitem">
     <p>
      If you would like MySQL to start automatically, you can copy
      <code class="filename">
       support-files/mysql.server
      </code>
      to
      <code class="filename">
       /etc/init.d
      </code>
      and create a symbolic link to
        it named
      <code class="filename">
       /etc/rc3.d/S99mysql.server
      </code>
      .
     </p>
    </li>
    <li class="listitem">
     <p>
      If too many processes try to connect very rapidly to
      <a class="link" href="mysqld.html" title="6.3.1 mysqld — The MySQL Server">
       <span class="command">
        <strong>
         mysqld
        </strong>
       </span>
      </a>
      , you should see this error in the
        MySQL log:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-simple"><div class="docs-select-all right" id="sa73902142"><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-simple">Error in accept<span class="token operator">:</span> Protocol error</code></pre>
     </div>
     <p>
      You might try starting the server with the
      <a class="link" href="server-system-variables.html#sysvar_back_log">
       <code class="option">
        --back_log=50
       </code>
      </a>
      option as a
        workaround for this.
     </p>
    </li>
    <li class="listitem">
     <p>
      To configure the generation of core files on Solaris you should
        use the
      <span class="command">
       <strong>
        coreadm
       </strong>
      </span>
      command. Because of the
        security implications of generating a core on a
      <code class="literal">
       setuid()
      </code>
      application, by default, Solaris
        does not support core files on
      <code class="literal">
       setuid()
      </code>
      programs. However, you can modify this behavior using
      <span class="command">
       <strong>
        coreadm
       </strong>
      </span>
      . If you enable
      <code class="literal">
       setuid()
      </code>
      core files for the current user,
        they are generated using mode 600 and are owned by the
        superuser.
     </p>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
