You can install MySQL on Solaris using a binary package of the native Solaris PKG format instead of the binary tarball distribution.
MySQL 5.7 has a dependency on the Oracle Developer Studio Runtime Libraries; but this does not apply to MySQL 8.0.
To use this package, download the corresponding
mysql-VERSION-solaris11-PLATFORM.pkg.gz
file,
then uncompress it. For example:
$> gunzip mysql-8.0.40-solaris11-x86_64.pkg.gz
To install a new package, use pkgadd and follow the onscreen prompts. You must have root privileges to perform this operation:
$> pkgadd -d mysql-8.0.40-solaris11-x86_64.pkg
The following packages are available:
1 mysql MySQL Community Server (GPL)
(i86pc) 8.0.40
Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:
The PKG installer installs all of the files and tools needed, and then initializes your database if one does not exist. To complete the installation, you should set the root password for MySQL as provided in the instructions at the end of the installation. Alternatively, you can run the mysql_secure_installation script that comes with the installation.
By default, the PKG package installs MySQL under the root path
/opt/mysql
. You can change only the
installation root path when using pkgadd, which
can be used to install MySQL in a different Solaris zone. If you
need to install in a specific directory, use a binary
tar file distribution.
The pkg
installer copies a suitable startup
script for MySQL into /etc/init.d/mysql
. To
enable MySQL to startup and shutdown automatically, you should
create a link between this file and the init script directories.
For example, to ensure safe startup and shutdown of MySQL you
could use the following commands to add the right links:
$> ln /etc/init.d/mysql /etc/rc3.d/S91mysql
$> ln /etc/init.d/mysql /etc/rc0.d/K02mysql
To remove MySQL, the installed package name is
mysql
. You can use this in combination with the
pkgrm command to remove the installation.
To upgrade when using the Solaris package file format, you must remove the existing installation before installing the updated package. Removal of the package does not delete the existing database information, only the server, binaries and support files. The typical upgrade sequence is therefore:
$> mysqladmin shutdown
$> pkgrm mysql
$> pkgadd -d mysql-8.0.40-solaris11-x86_64.pkg
$> mysqld_safe &
$> mysql_upgrade # prior to MySQL 8.0.16 only
You should check the notes in Upgrading MySQL before performing any upgrade.