#!/sbin/sh # # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2018, Michal Nowak # . /lib/svc/share/smf_include.sh # SMF_FMRI is the name of the target service. This allows multiple instances # to use the same script. getproparg() { val=`svcprop -p $1 $SMF_FMRI` [ -n "$val" ] && echo $val } MYSQLBIN=`getproparg mariadb/bin` MYSQLDATA=`getproparg mariadb/data` PIDFILE=${MYSQLDATA}/`/usr/bin/uname -n`.pid if [ -z $SMF_FMRI ]; then echo "SMF framework variables are not initialized." exit $SMF_EXIT_ERR fi if [ -z ${MYSQLDATA} ]; then echo "mariadb/data property not set" exit $SMF_EXIT_ERR_CONFIG fi if [ ! -d ${MYSQLDATA} ]; then echo "mariadb/data directory ${MYSQLDATA} is not a valid MySQL data directory" exit $SMF_EXIT_ERR_CONFIG fi if [ ! -d ${MYSQLDATA}/mysql ]; then ${MYSQLBIN}/mysql_install_db --user=mysql --datadir=${MYSQLDATA} fi mysql_start() { echo ${MYSQLBIN}/mysqld_safe --user=mysql --datadir=${MYSQLDATA} --pid-file=${PIDFILE} ${MYSQLBIN}/mysqld_safe --user=mysql --datadir=${MYSQLDATA} --pid-file=${PIDFILE} > /dev/null & } case "$1" in 'start') mysql_start ;; *) echo "Usage: $0 {start}" exit 1 ;; esac exit $SMF_EXIT_OK