Convertir le script RC de MySQL vers un SMF
1 Introduction
Solaris 10 and later now supplies MySQL as part of the OS, provided you’ve installed the "SUNWmysql[rtu]" pkgs, but it’s started via a legacy RC script still. This document details how to create an SMF manifest to start MySQL instead.
Note : This process is only needed if you are running Solaris 10, or you wish to use the MySQL 4.x installation that is supplied with Nevada. Later builds of Nevada (I believe snv_79 and later) now come with MySQL 5.0 and includes a service manifest for this version.
2 Find scripts
Find all of the current RC scripts:
find |
# find /etc/rc* /etc/init.d | grep -i mysql /etc/rc0.d/K00mysql /etc/rc1.d/K00mysql /etc/rc2.d/K00mysql /etc/rc3.d/S99mysql /etc/rcS.d/K00mysql # |
If you’ve never configured MySQL, you may find these don’t exist yet.
Remove all the old legacy scripts, if they exist :
# for x in `find /etc/rc* /etc/init.d |
3 Create SMF Script
Create the MySQL manifest :
And copy it :
# mkdir /var/svc/manifest/application/database # cp mysql.txt /var/svc/manifest/application/database/mysql.xml |
If you’ve got Postgresql installed already, you’ll already have a /var/svc/manifest/application/database directory.
Import the manifest:
svccfg |
# svccfg validate /var/svc/manifest/application/database/mysql.xml # svccfg import /var/svc/manifest/application/database/mysql.xml |
Check the service:
svcs |
# svcs mysql STATE STIME FMRI disabled 13:23:17 svc:/application/database/mysql:default |
There you have it. Now to enable it, just ensure you’ve configured MySQL as per the README at /etc/sfw/mysql/README.solaris.mysql and then enable the service:
# svcadm enable mysql # svcs mysql STATE STIME FMRI online 13:29:14 svc:/application/database/mysql:default |