mirror of
https://git.freebsd.org/ports.git
synced 2025-06-06 13:20:32 -04:00
MariaDB is a database server that offers drop-in replacement functionality for MySQL1. MariaDB is built by some of the original authors of MySQL, with assistance from the broader community of Free and open source software developers. In addition to the core functionality of MySQL, MariaDB offers a rich set of feature enhancements including alternate storage engines, server optimizations, and patches. MariaDB is primarily driven by developers at Monty Program, a company founded by Michael "Monty" Widenius, the original author of MySQL, but this is not the whole story about MariaDB. On the "About MariaDB" page you will find more information about all participants in the MariaDB community, including storage engines XtraDB and PBXT. WWW: http://mariadb.org/ PR: ports/152237 Submitted by: Artyom Olshevskiy <siasiamail@gmail.com>
74 lines
1.7 KiB
Bash
74 lines
1.7 KiB
Bash
#!/bin/sh
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
# PROVIDE: mysql
|
|
# REQUIRE: LOGIN
|
|
# KEYWORD: shutdown
|
|
|
|
#
|
|
# Add the following line to /etc/rc.conf to enable mysql:
|
|
# mysql_enable (bool): Set to "NO" by default.
|
|
# Set it to "YES" to enable MySQL.
|
|
# mysql_limits (bool): Set to "NO" by default.
|
|
# Set it to yes to run `limits -e -U mysql`
|
|
# just before mysql starts.
|
|
# mysql_dbdir (str): Default to "/var/db/mysql"
|
|
# Base database directory.
|
|
# mysql_args (str): Custom additional arguments to be passed
|
|
# to mysqld_safe (default empty).
|
|
#
|
|
|
|
. /etc/rc.subr
|
|
|
|
name="mysql"
|
|
rcvar=`set_rcvar`
|
|
|
|
load_rc_config $name
|
|
|
|
: ${mysql_enable="NO"}
|
|
: ${mysql_limits="NO"}
|
|
: ${mysql_dbdir="/var/db/mysql"}
|
|
: ${mysql_args=""}
|
|
|
|
mysql_user="mysql"
|
|
mysql_limits_args="-e -U ${mysql_user}"
|
|
pidfile="${mysql_dbdir}/`/bin/hostname`.pid"
|
|
command="/usr/sbin/daemon"
|
|
command_args="-c -f %%PREFIX%%/bin/mysqld_safe --defaults-extra-file=${mysql_dbdir}/my.cnf --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args}"
|
|
procname="%%PREFIX%%/libexec/mysqld"
|
|
start_precmd="${name}_prestart"
|
|
start_postcmd="${name}_poststart"
|
|
mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
|
|
mysql_install_db_args="--ldata=${mysql_dbdir}"
|
|
|
|
mysql_create_auth_tables()
|
|
{
|
|
eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
|
|
[ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir}
|
|
}
|
|
|
|
mysql_prestart()
|
|
{
|
|
if [ ! -d "${mysql_dbdir}/mysql/." ]; then
|
|
mysql_create_auth_tables || return 1
|
|
fi
|
|
if checkyesno mysql_limits; then
|
|
eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
|
|
else
|
|
return 0
|
|
fi
|
|
}
|
|
|
|
mysql_poststart()
|
|
{
|
|
local timeout=15
|
|
while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
|
|
timeout=$(( timeout - 1 ))
|
|
sleep 1
|
|
done
|
|
return 0
|
|
}
|
|
|
|
run_rc_command "$1"
|