2.7.2 Installing MySQL on OpenSolaris Using IPS

OpenSolaris includes standard packages for MySQL in the core repository. The MySQL packages are based on a specific release of MySQL and updated periodically. For the latest release you must use either the native Solaris PKG, tar, or source installations. The native OpenSolaris packages include SMF files so that you can easily control your MySQL installation, including automatic startup and recovery, using the native service management tools.

To install MySQL on OpenSolaris, use the pkg command. You will need to be logged in as root, or use the pfexec tool, as shown in the example below:

shell> pfexec pkg install SUNWmysql55

The package set installs three individual packages, SUNWmysql55lib, which contains the MySQL client libraries; SUNWmysql55r which contains the root components, including SMF and configuration files; and SUNWmysql55u which contains the scripts, binary tools and other files. You can install these packages individually if you only need the corresponding components.

The MySQL files are installed into /usr/mysql which symbolic links for the sub directories (bin, lib, etc.) to a version specific directory. For MySQL 5.5, the full installation is located in /usr/mysql/5.5. The default data directory is /var/mysql/5.5/data. The configuration file is installed in /etc/mysql/5.5/my.cnf. This layout permits multiple versions of MySQL to be installed, without overwriting the data and binaries from other versions.

Once installed, you must run mysql_install_db to initialize the database, and use the mysql_secure_installation to secure your installation.

Using SMF to manage your MySQL installation

Once installed, you can start and stop your MySQL server using the installed SMF configuration. The service name is mysql, or if you have multiple versions installed, you should use the full version name, for example mysql:version_55. To start and enable MySQL to be started at boot time:

shell> svcadm enable mysql

To disable MySQL from starting during boot time, and shut the MySQL server down if it is running, use:

shell> svcadm disable mysql

To restart MySQL, for example after a configuration file changes, use the restart option:

shell> svcadm restart mysql

You can also use SMF to configure the data directory and enable full 64-bit mode. For example, to set the data directory used by MySQL:

shell> svccfg 
svc:> select mysql:version_55 
svc:/application/database/mysql:version_55> setprop mysql/data=/data0/mysql
  

By default, the 32-bit binaries are used. To enable the 64-bit server on 64-bit platforms, set the enable_64bit parameter. For example:

svc:/application/database/mysql:version_55> setprop mysql/enable_64bit=1 

You need to refresh the SMF after settings these options:

shell> svcadm refresh mysql