# HG changeset patch # User Michael Schloh von Bennewitz # Date 1346171320 -7200 # Node ID 7b145ccff1e9b448279d0c58a908b8cf1496e862 # Parent 7ddfdb42afce37cd38497104944364f1806be679 Import package vendor original specs for necessary manipulations. diff -r 7ddfdb42afce -r 7b145ccff1e9 mysql/my.cnf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mysql/my.cnf Tue Aug 28 18:28:40 2012 +0200 @@ -0,0 +1,55 @@ +## +## my.cnf -- MySQL configuration +## + +[client] + +socket = @l_prefix@/var/mysql/mysql.sock +port = 3306 + +[mysqld] + +bind-address = 127.0.0.1 +port = 3306 +#skip-networking + +tmpdir = @l_prefix@/var/mysql/tmp +log = @l_prefix@/var/mysql/common.log +#log-bin = @l_prefix@/var/mysql/binary.log +#server-id = 1 + +key_buffer_size = 64M +table_cache = 256 +join_buffer_size = 1M +max_connections = 1000 +max_connect_errors = 10 +max_delayed_threads = 20 +max_heap_table_size = 16777216 +max_sort_length = 1024 +max_user_connections = 1000 +record_buffer = 131072 +sort_buffer = 4M +key_buffer = 1M +tmp_table_size = 32M +query_cache_type = 1 +query_cache_limit = 1M +query_cache_size = 32M +ft_min_word_len = 3 + + +innodb_buffer_pool_size = 70M +innodb_additional_mem_pool_size = 2M +innodb_log_files_in_group = 3 +innodb_log_file_size = 20M +innodb_log_buffer_size = 8M +innodb_lock_wait_timeout = 50 + + +[mysqld_safe] + +datadir = @l_prefix@/var/mysql +socket = @l_prefix@/var/mysql/mysql.sock +pid_file = @l_prefix@/var/mysql/mysqld.pid +user = @l_rusr@ +basedir = @l_prefix@ + diff -r 7ddfdb42afce -r 7b145ccff1e9 mysql/my.pwd --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mysql/my.pwd Tue Aug 28 18:28:40 2012 +0200 @@ -0,0 +1,8 @@ +## +## my.pwd -- MySQL configuration (administrator password only) +## + +[mysqladmin] +user = root +password = + diff -r 7ddfdb42afce -r 7b145ccff1e9 mysql/mysql.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mysql/mysql.patch Tue Aug 28 18:28:40 2012 +0200 @@ -0,0 +1,87 @@ +Index: configure +--- configure.orig 2010-10-11 22:40:59.000000000 +0200 ++++ configure 2010-11-03 13:05:31.000000000 +0100 +@@ -19652,7 +19652,7 @@ + + # Enable the abi_check rule only if gcc is available + +-if test "$GCC" != "yes" || expr "$CC" : ".*icc.*" ++if true + then + ABI_CHECK="" + else +Index: include/Makefile.in +--- include/Makefile.in.orig 2010-10-11 22:40:17.000000000 +0200 ++++ include/Makefile.in 2010-11-03 13:07:11.000000000 +0100 +@@ -405,7 +405,8 @@ + decimal.h errmsg.h my_global.h my_net.h \ + my_getopt.h sslopt-longopts.h my_dir.h \ + sslopt-vars.h sslopt-case.h sql_common.h keycache.h \ +- m_ctype.h my_attribute.h my_compiler.h \ ++ m_ctype.h my_attribute.h my_compiler.h rijndael.h sha1.h \ ++ my_aes.h \ + $(HEADERS_GEN_CONFIGURE) \ + $(HEADERS_GEN_MAKE) + +@@ -413,8 +414,7 @@ + heap.h my_bitmap.h my_uctype.h \ + myisam.h myisampack.h myisammrg.h ft_global.h\ + mysys_err.h my_base.h help_start.h help_end.h \ +- my_nosys.h my_alarm.h queues.h rijndael.h sha1.h \ +- my_aes.h my_tree.h my_trie.h hash.h thr_alarm.h \ ++ my_nosys.h my_alarm.h queues.h my_tree.h my_trie.h hash.h thr_alarm.h \ + thr_lock.h t_ctype.h violite.h my_md5.h base64.h \ + my_handler.h my_time.h my_vle.h my_user.h \ + my_libwrap.h my_stacktrace.h +Index: mysys/default.c +--- mysys/default.c.orig 2010-10-11 22:34:24.000000000 +0200 ++++ mysys/default.c 2010-11-03 13:05:31.000000000 +0100 +@@ -1123,8 +1123,7 @@ + + #else + +- errors += add_directory(alloc, "/etc/", dirs); +- errors += add_directory(alloc, "/etc/mysql/", dirs); ++ errors += add_directory(alloc, "@l_prefix@/etc/mysql/", dirs); + + #if defined(DEFAULT_SYSCONFDIR) + if (DEFAULT_SYSCONFDIR[0]) +Index: scripts/mysql_config.sh +--- scripts/mysql_config.sh.orig 2010-10-11 22:34:28.000000000 +0200 ++++ scripts/mysql_config.sh 2010-11-03 13:05:31.000000000 +0100 +@@ -104,9 +104,9 @@ + + # Create options + # We intentionally add a space to the beginning and end of lib strings, simplifies replace later +-libs=" $ldflags -L$pkglibdir -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@" ++libs=" $ldflags -L$pkglibdir -lmysqlclient -lmysys @ZLIB_DEPS@ @NON_THREADED_LIBS@" + libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ " +-libs_r=" $ldflags -L$pkglibdir -lmysqlclient_r @ZLIB_DEPS@ @LIBS@ @openssl_libs@ " ++libs_r=" $ldflags -L$pkglibdir -lmysqlclient_r -lmysys @ZLIB_DEPS@ @LIBS@ @openssl_libs@ " + embedded_libs=" $ldflags -L$pkglibdir -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @innodb_system_libs@ @openssl_libs@ " + + if [ -r "$pkglibdir/libmygcc.a" ]; then +Index: scripts/mysql_system_tables_data.sql +--- scripts/mysql_system_tables_data.sql.orig 2010-10-11 22:34:29.000000000 +0200 ++++ scripts/mysql_system_tables_data.sql 2010-11-03 13:05:31.000000000 +0100 +@@ -11,8 +11,6 @@ + -- Fill "db" table with default grants for anyone to + -- access database 'test' and 'test_%' if "db" table didn't exist + CREATE TEMPORARY TABLE tmp_db LIKE db; +-INSERT INTO tmp_db VALUES ('%','test','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N','Y','Y'); +-INSERT INTO tmp_db VALUES ('%','test\_%','','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y','Y','Y','Y','N','N','Y','Y'); + INSERT INTO db SELECT * FROM tmp_db WHERE @had_db_table=0; + DROP TABLE tmp_db; + +Index: sql/Makefile.in +--- sql/Makefile.in.orig 2010-10-11 22:40:27.000000000 +0200 ++++ sql/Makefile.in 2010-11-03 13:05:31.000000000 +0100 +@@ -538,7 +538,7 @@ + $(top_builddir)/strings/libmystrings.a + + mysqld_DEPENDENCIES = @mysql_plugin_libs@ $(SUPPORTING_LIBS) libndb.la +-LDADD = $(SUPPORTING_LIBS) @ZLIB_LIBS@ @NDB_SCI_LIBS@ ++LDADD = $(SUPPORTING_LIBS) @NDB_SCI_LIBS@ + mysqld_LDADD = libndb.la \ + @MYSQLD_EXTRA_LDFLAGS@ \ + @pstack_libs@ \ diff -r 7ddfdb42afce -r 7b145ccff1e9 mysql/mysql.spec --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mysql/mysql.spec Tue Aug 28 18:28:40 2012 +0200 @@ -0,0 +1,373 @@ +## +## mysql.spec -- OpenPKG RPM Package Specification +## Copyright (c) 2000-2012 OpenPKG Foundation e.V. +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +## SUCH DAMAGE. +## + +# package version +%define V_major 5.1 +%define V_minor 63 +%define V_mysql %{V_major}.%{V_minor} +%define V_opkg %{V_major}.%{V_minor} +%define V_jdbc 5.1.21 + +# package information +Name: mysql +Summary: Fast Relational Database Management System +URL: http://www.mysql.com/products/mysql/ +Vendor: ORACLE +Packager: OpenPKG Foundation e.V. +Distribution: OpenPKG Community +Class: BASE +Group: Database +License: GPL +Version: %{V_opkg} +Release: 20120704 + +# package options +%option with_server yes +%option with_innobase yes +%option with_archive no +%option with_blackhole no +%option with_federated no +%option with_ndbcluster no +%option with_partition no +%option with_ssl no +%option with_embedded no +%option with_charset utf8 +%option with_collation utf8_unicode_ci +%option with_jdbc no + +# fixing implicit inter-plugin dependencies and correlations +%if "%{with_ndbcluster}" == "yes" +%undefine with_partition +%define with_partition yes +%endif + +# list of sources +Source0: http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-%{V_major}/mysql-%{V_mysql}.tar.gz +Source1: http://ftp.gwdg.de/pub/misc/mysql/Downloads/Connector-J/mysql-connector-java-%{V_jdbc}.tar.gz +Source2: my.cnf +Source3: my.pwd +Source4: rc.mysql +Patch0: mysql.patch + +# build information +BuildPreReq: OpenPKG, openpkg >= 20100101, perl, make, gcc, gcc::with_cxx = yes +PreReq: OpenPKG, openpkg >= 20100101, perl +BuildPreReq: zlib, readline, ncurses +PreReq: zlib, readline, ncurses +%if "%{with_ssl}" == "yes" +BuildPreReq: openssl +PreReq: openssl +%endif +%if "%{with_jdbc}" == "yes" +PreReq: java, JAVA-JDK +%endif + +%description + MySQL is a multi-user Relational Database Management System (RDBMS), + which is controlled through Structured Query Language (SQL) + operating in full multi-threading mode. The main goals of MySQL are + speed, robustness and ease of use. MySQL was originally developed + because of the need for a SQL server that could handle very big + databases with magnitude higher speed than what any database vendor + could offer. + +%track + prog mysql = { + version = %{V_mysql} + url = http://dev.mysql.com/downloads/mysql/%{V_major}.html + regex = mysql-(__VER__)\.tar\.gz + } + prog mysql:connector-jdbc = { + version = %{V_jdbc} + url = http://dev.mysql.com/downloads/connector/j/%{V_major}.html + regex = mysql-connector-java-(__VER__)\.tar\.gz + } + +%prep + %setup -q +%if "%{with_jdbc}" == "yes" + %setup -q -T -D -a 1 +%endif + %patch -p0 + +%build + # patch file search path + %{l_shtool} subst %{l_value -s -a} \ + mysys/default.c + + # fix shebang on supplemental Perl scripts + rm -f scripts/*.orig + %{l_shtool} subst \ + -e 's;^#!/usr/bin/perl;#!%{l_prefix}/bin/perl;' \ + scripts/* + + # determine additional configure options + case "%{l_platform -t}" in + *-freebsd* ) opt="--with-client-ldflags=-static --with-mysqld-ldflags=-static" ;; + *-linux* ) opt="--with-client-ldflags=-static --with-mysqld-ldflags=-static" ;; + *-sunos* ) opt="--with-client-ldflags=-static --with-mysqld-ldflags=-static" ;; + esac + + # configure source tree + CC="%{l_cc}" \ + CXX="%{l_cxx}" \ + CFLAGS="%{l_cflags -O}" \ + CXXFLAGS="%{l_cxxflags -O}" \ + CPPFLAGS="%{l_cppflags ncurses}" \ + LDFLAGS="-L`pwd`/libmysql %{l_ldflags}" \ + LIBS="-lz" \ + ./configure \ + --prefix=%{l_prefix} \ + --mandir=%{l_prefix}/man \ + --infodir=%{l_prefix}/info \ + --sysconfdir=%{l_prefix}/etc/mysql \ + --localstatedir=%{l_prefix}/var/mysql \ + --libexecdir=%{l_prefix}/libexec/mysql \ + --with-unix-socket-path=%{l_prefix}/var/mysql/mysql.sock \ + --with-mysqld-user=%{l_musr} \ + --enable-thread-safe-client \ + --with-comment="%{l_openpkg_release}" \ +%if "%{with_server}" != "yes" + --without-server \ +%else + --with-server \ + --with-plugin-csv \ + --with-plugin-heap \ + --with-plugin-myisam \ + --with-plugin-myisammrg \ +%if "%{with_innobase}" == "yes" + --with-plugin-innobase \ +%else + --without-plugin-innobase \ +%endif +%if "%{with_archive}" == "yes" + --with-plugin-archive \ +%else + --without-plugin-archive \ +%endif +%if "%{with_blackhole}" == "yes" + --with-plugin-blackhole \ +%else + --without-plugin-blackhole \ +%endif +%if "%{with_federated}" == "yes" + --with-plugin-federated \ +%else + --without-plugin-federated \ +%endif +%if "%{with_ndbcluster}" == "yes" + --with-plugin-ndbcluster \ +%else + --without-plugin-ndbcluster \ +%endif +%if "%{with_partition}" == "yes" + --with-plugin-partition \ +%else + --without-plugin-partition \ +%endif +%endif + --with-zlib-dir=%{l_prefix} \ +%if "%{with_ssl}" == "yes" + --with-ssl=%{l_prefix} \ +%endif +%if "%{with_embedded}" == "yes" + --with-embedded-server \ +%endif + --with-charset=%{with_charset} \ + --with-collation=%{with_collation} \ + --without-readline \ + --without-libedit \ + --with-big-tables \ + --with-low-memory \ + --disable-shared \ + $opt + + # build source tree + %{l_make} %{l_mflags} + +%install + + # patch init script + %{l_shtool} subst %{l_value -s -a} \ + scripts/mysql_install_db.sh + + # perform standard installation procedure + %{l_make} %{l_mflags} install \ + AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT" \ + DESTDIR=$RPM_BUILD_ROOT + + # cleanup mysql_config script + %{l_shtool} subst \ + -e 's;^\(ldflags=.\).*\(.\)$;\1%{l_ldflags}\2;' \ + $RPM_BUILD_ROOT%{l_prefix}/bin/mysql_config + + # move utility 'replace', msql2mysql is patched for new path + mv $RPM_BUILD_ROOT%{l_prefix}/bin/replace \ + $RPM_BUILD_ROOT%{l_prefix}/libexec/mysql/ + + # strip installation area + rm -rf $RPM_BUILD_ROOT%{l_prefix}/mysql-test + rm -rf $RPM_BUILD_ROOT%{l_prefix}/sql-bench + rm -f $RPM_BUILD_ROOT%{l_prefix}/info/dir + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/mysql/mysql-%{V_mysql}.spec + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/mysql/binary-configure + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/make_win_src_distribution + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/make_win_binary_distribution + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/comp_err + strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true + strip $RPM_BUILD_ROOT%{l_prefix}/libexec/mysql/* 2>/dev/null || true +%if "%{with_ndbcluster}" == "yes" + rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/ndb* + rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/ndb* + rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man8/ndb* + rm -rf $RPM_BUILD_ROOT%{l_prefix}/include/mysql/storage/ndb + rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/mysql/libndb* + rm -f $RPM_BUILD_ROOT%{l_prefix}/libexec/mysql/ndb* + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/mysql/ndb-config-2-node.ini +%endif + + # install global configuration + %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/mysql + sed <%{SOURCE my.cnf} >my.cnf \ +%if "%{with_innobase}" == "yes" + -e '/<\/\{0,1\}with_innobase>/d' +%else + -e '//,/<\/with_innobase>/d' +%endif + %{l_shtool} install -c -m 644 %{l_value -s -a} \ + my.cnf \ + $RPM_BUILD_ROOT%{l_prefix}/etc/mysql/ + %{l_shtool} install -c -m 600 \ + %{SOURCE my.pwd} \ + $RPM_BUILD_ROOT%{l_prefix}/etc/mysql/ + + # install run-command script + %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d + %{l_shtool} install -c -m 755 %{l_value -s -a} \ + %{SOURCE rc.mysql} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/ + + # make sure the database directory exists + %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/var/mysql + + # directory for temporary tables + %{l_shtool} mkdir -f -p -m 700 $RPM_BUILD_ROOT%{l_prefix}/var/mysql/tmp + + # optional client-only installation +%if "%{with_server}" != "yes" + rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/mysql + ( cd $RPM_BUILD_ROOT%{l_prefix}/bin + for bin in *; do + case "$bin" in + mysql | mysql_config ) ;; + * ) rm -f $bin ;; + esac + done + ) || exit $? + ( cd $RPM_BUILD_ROOT%{l_prefix}/man/man1 + for man in *; do + case "$man" in + mysql.1 | mysql_config.1 ) ;; + * ) rm -f $man ;; + esac + done + ) || exit $? +%endif + + # install JDBC driver +%if "%{with_jdbc}" == "yes" + ( cd mysql-connector-java-%{V_jdbc} + %{l_shtool} install -c -m 644 \ + mysql-connector-java-%{V_jdbc}-bin.jar \ + $RPM_BUILD_ROOT%{l_prefix}/lib/mysql/mysql.jar + ) || exit $? +%endif + + # determine the package files + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \ +%if "%{with_server}" == "yes" + %{l_files_std} \ + '%config %attr(644,%{l_musr},%{l_mgrp}) %{l_prefix}/etc/mysql/my.cnf' \ + '%config %attr(600,%{l_susr},%{l_mgrp}) %{l_prefix}/etc/mysql/my.pwd' \ + '%attr(-,%{l_rusr},%{l_rgrp}) %{l_prefix}/var/mysql' \ + '%attr(-,%{l_rusr},%{l_rgrp}) %{l_prefix}/var/mysql/tmp' +%else + %{l_files_std} +%endif + +%files -f files + +%clean + +%pre +%if "%{with_server}" == "yes" + # before upgrade, save status and stop service + [ $1 -eq 2 ] || exit 0 + eval `%{l_rc} mysql status 2>/dev/null | tee %{l_tmpfile}` + %{l_rc} mysql stop 2>/dev/null +%endif + exit 0 + +%post +%if "%{with_server}" == "yes" + if [ $1 -eq 1 ]; then + # after install, create initial database + $RPM_INSTALL_PREFIX/bin/mysql_install_db \ + --defaults-file=$RPM_INSTALL_PREFIX/etc/mysql/my.cnf >/dev/null 2>&1 + chown -R %{l_rusr}:%{l_rgrp} $RPM_INSTALL_PREFIX/var/mysql/* + ( echo "An initial MySQL DB was created. The owner of the database" + echo "is the DB user 'root'. Its initial password is empty." + echo "After starting MySQL with..." + echo "" + echo " \$ $RPM_INSTALL_PREFIX/bin/openpkg rc mysql start" + echo "" + echo "...you should change the password as soon as possible with:" + echo "" + echo " \$ $RPM_INSTALL_PREFIX/bin/mysqladmin \\ " + echo " -u root password ''" + echo "" + echo "Additionally, because the MySQL package includes automated" + echo "maintenance procedures that require administrator access to" + echo "the database, you must maintain a (plain text) copy of the" + echo "administrator account name and password:" + echo "" + echo " \$ vi $RPM_INSTALL_PREFIX/etc/mysql/my.pwd" + ) | %{l_rpmtool} msg -b -t notice + fi + if [ $1 -eq 2 ]; then + # after upgrade, restore status + { eval `cat %{l_tmpfile}`; rm -f %{l_tmpfile}; true; } >/dev/null 2>&1 + [ ".$mysql_active" = .yes ] && %{l_rc} mysql start + fi +%endif + exit 0 + +%preun +%if "%{with_server}" == "yes" + # before erase, stop service and remove log files + [ $1 -eq 0 ] || exit 0 + %{l_rc} mysql stop 2>/dev/null + rm -f $RPM_INSTALL_PREFIX/var/mysql/*.log* >/dev/null 2>&1 || true + rm -f $RPM_INSTALL_PREFIX/var/mysql/*.err* >/dev/null 2>&1 || true +%endif + exit 0 + diff -r 7ddfdb42afce -r 7b145ccff1e9 mysql/rc.mysql --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mysql/rc.mysql Tue Aug 28 18:28:40 2012 +0200 @@ -0,0 +1,86 @@ +#!@l_prefix@/bin/openpkg rc +## +## rc.mysql -- Run-Commands +## + +%config + mysql_enable="$openpkg_rc_def" + mysql_pwd_file=@l_prefix@/etc/mysql/my.pwd + mysql_cnf_file=@l_prefix@/etc/mysql/my.cnf + mysql_common_prolog="true" + mysql_common_epilog="true" + mysql_common_numfiles="10" + mysql_common_minsize="1M" + mysql_common_complevel="9" + mysql_err_prolog="true" + mysql_err_epilog="true" + mysql_err_numfiles="10" + mysql_err_minsize="1M" + mysql_err_complevel="9" + +%common + mysql_pid_file=@l_prefix@/var/mysql/mysqld.pid + mysql_err_log=@l_prefix@/var/mysql/mysqld.err + mysql_common_log=@l_prefix@/var/mysql/common.log + mysql_flush_logs () { + HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \ + --defaults-extra-file=${mysql_pwd_file} \ + flush-logs + } + +%status -u @l_susr@ -o + mysql_usable="unknown" + mysql_active="no" + HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \ + --defaults-extra-file=${mysql_pwd_file} \ + ping >/dev/null 2>&1 && mysql_active="yes" + if [ $mysql_active = "no" -a -f $mysql_pid_file ] ; then + kill -0 `cat $mysql_pid_file` && mysql_active="unknown" + fi + echo "mysql_enable=\"$mysql_enable\"" + echo "mysql_usable=\"$mysql_usable\"" + echo "mysql_active=\"$mysql_active\"" + +%start -p 400 -u @l_susr@ + rcService mysql enable yes || exit 0 + rcService mysql active yes && exit 0 + cd @l_prefix@ + cmd="@l_prefix@/bin/mysqld_safe" + cmd="$cmd --pid-file=$mysql_pid_file" + cmd="$cmd --log-error=$mysql_err_log" + su @l_rusr@ -c "$cmd /dev/null 2>&1 &" /dev/null 2>&1 + +%stop -p 600 -u @l_susr@ + rcService mysql enable yes || exit 0 + rcService mysql active no && exit 0 + mysql_flush_logs + HOME=@l_prefix@/etc/mysql @l_prefix@/bin/mysqladmin \ + --defaults-extra-file=${mysql_pwd_file} \ + shutdown + +%restart -p 400 -u @l_susr@ + rcService mysql enable yes || exit 0 + rcService mysql active no && exit 0 + rc mysql stop start + +%daily -u @l_susr@ + rcService mysql enable yes || exit 0 + rcTmp -i + hintfile=`rcTmp -f -n hint` + shtool rotate -f \ + -n ${mysql_common_numfiles} -s ${mysql_common_minsize} -d \ + -z ${mysql_common_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \ + -P "${mysql_common_prolog}" \ + -E "${mysql_common_epilog}; echo 1 >$hintfile" \ + ${mysql_common_log} + shtool rotate -f \ + -n ${mysql_err_numfiles} -s ${mysql_err_minsize} -d \ + -z ${mysql_err_complevel} -m 660 -o @l_rusr@ -g @l_rgrp@ \ + -P "${mysql_err_prolog}" \ + -E "${mysql_err_epilog}; echo 1 >$hintfile" \ + ${mysql_err_log} + if [ -s $hintfile ]; then + mysql_flush_logs + fi + rcTmp -k +