diff options
author | Alex Dupre <ale@FreeBSD.org> | 2005-04-06 13:38:29 +0000 |
---|---|---|
committer | Alex Dupre <ale@FreeBSD.org> | 2005-04-06 13:38:29 +0000 |
commit | bd1e850d7249b66550078edcc36e27aa815d9a3b (patch) | |
tree | 0dadd99ae13da37b4847a12de40fb3f52fd8a84f /databases/mysql60-server/files | |
parent | 69df622682dfe0d2965b44143cdb89dfe252c7f5 (diff) |
Update to 5.0.3 release:
- Add the possibility to specify the database directory in rc.conf
- Move database creation from post-install stage into startup script
- Add the possibility to specify additional command-line arguments
to be passed to mysqld_safe on startup
Notes
Notes:
svn path=/head/; revision=132637
Diffstat (limited to 'databases/mysql60-server/files')
8 files changed, 100 insertions, 213 deletions
diff --git a/databases/mysql60-server/files/mysql-server.sh b/databases/mysql60-server/files/mysql-server.sh deleted file mode 100644 index 708ad57df4b3..000000000000 --- a/databases/mysql60-server/files/mysql-server.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh -# -# $FreeBSD$ -# - -# PROVIDE: mysql -# REQUIRE: NETWORKING SERVERS -# BEFORE: DAEMON -# 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. -# mysqllimits_enable (bool): Set to "NO" by default. -# Set it to yes to run `limits $limits_args` -# just before mysql starts. -# mysqllimits_args (str): Default to "-e -U mysql" -# Arguments of pre-start limits run. -# - -. %%RC_SUBR%% - -name="mysql" -rcvar=`set_rcvar` -mysql_dbdir="%%DB_DIR%%" -mysql_user="mysql" -pidfile="${mysql_dbdir}/`/bin/hostname`.pid" -command="%%PREFIX%%/bin/mysqld_safe" -command_args="--user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} > /dev/null &" -procname="%%PREFIX%%/libexec/mysqld" -start_precmd="${name}_prestart" - -[ -z "$mysql_enable" ] && mysql_enable="NO" -[ -z "$mysqllimits_enable" ] && mysqllimits_enable="NO" -[ -z "$mysqllimits_args" ] && mysqllimits_args="-e -U ${mysql_user}" - -mysql_prestart() -{ - if checkyesno mysqllimits_enable; then - eval `/usr/bin/limits ${mysqllimits_args}` 2>/dev/null - else - return 0 - fi -} - -required_dirs="${mysql_dbdir}" -required_files="${mysql_dbdir}/mysql/host.frm ${mysql_dbdir}/mysql/user.frm ${mysql_dbdir}/mysql/db.frm" - -load_rc_config $name -run_rc_command "$1" diff --git a/databases/mysql60-server/files/mysql-server.sh.in b/databases/mysql60-server/files/mysql-server.sh.in new file mode 100644 index 000000000000..e5870bdc1c9a --- /dev/null +++ b/databases/mysql60-server/files/mysql-server.sh.in @@ -0,0 +1,64 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: mysql +# REQUIRE: NETWORKING SERVERS +# BEFORE: DAEMON +# 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). +# + +. %%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="%%PREFIX%%/bin/mysqld_safe" +command_args="--user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args} > /dev/null &" +procname="%%PREFIX%%/libexec/mysqld" +start_precmd="${name}_prestart" +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 + [ $? -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 +} + +run_rc_command "$1" diff --git a/databases/mysql60-server/files/patch-Docs::Makefile.in b/databases/mysql60-server/files/patch-Docs::Makefile.in index e76340001630..7424656ab673 100644 --- a/databases/mysql60-server/files/patch-Docs::Makefile.in +++ b/databases/mysql60-server/files/patch-Docs::Makefile.in @@ -1,25 +1,25 @@ ---- Docs/Makefile.in.orig Wed Dec 1 01:08:19 2004 -+++ Docs/Makefile.in Mon Jan 10 11:44:27 2005 -@@ -331,7 +331,7 @@ - check-recursive installcheck-recursive - DIST_COMMON = Makefile.am Makefile.in - DIST_SUBDIRS = $(SUBDIRS) +--- Docs/Makefile.in.orig Tue Mar 22 20:27:11 2005 ++++ Docs/Makefile.in Wed Apr 6 13:00:28 2005 +@@ -359,7 +359,7 @@ + + SUBDIRS = Images + GT = $(srcdir)/Support/generate-text-files.pl -all: $(BUILT_SOURCES) +all: $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: -@@ -599,7 +599,7 @@ - installdirs-am: - $(mkinstalldirs) $(DESTDIR)$(infodir) - +@@ -669,7 +669,7 @@ + for dir in "$(DESTDIR)$(infodir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done -install: $(BUILT_SOURCES) +install: $(MAKE) $(AM_MAKEFLAGS) install-recursive install-exec: install-exec-recursive install-data: install-data-recursive -@@ -718,7 +718,7 @@ - uninstall-info-am uninstall-info-recursive uninstall-recursive +@@ -793,7 +793,7 @@ + tags tags-recursive uninstall uninstall-am uninstall-info-am -all: $(targets) txt_files diff --git a/databases/mysql60-server/files/patch-Makefile.in b/databases/mysql60-server/files/patch-Makefile.in index df6774784d9b..56adfc29a52f 100644 --- a/databases/mysql60-server/files/patch-Makefile.in +++ b/databases/mysql60-server/files/patch-Makefile.in @@ -1,16 +1,16 @@ ---- Makefile.in.orig Wed Dec 1 01:08:19 2004 -+++ Makefile.in Mon Jan 10 11:46:31 2005 -@@ -302,12 +302,7 @@ +--- Makefile.in.orig Tue Mar 22 20:27:12 2005 ++++ Makefile.in Wed Apr 6 13:07:04 2005 +@@ -358,12 +358,7 @@ # These are built from source in the Docs directory EXTRA_DIST = INSTALL-SOURCE README COPYING EXCEPTIONS-CLIENT -SUBDIRS = . include @docs_dirs@ @zlib_dir@ \ - @readline_topdir@ sql-common \ - @thread_dirs@ pstack \ -- @sql_server_dirs@ @sql_client_dirs@ scripts man tests \ +- @sql_union_dirs@ scripts man tests \ - netware @libmysqld_dirs@ \ - @bench_dirs@ support-files @fs_dirs@ @tools_dirs@ +SUBDIRS = - DIST_SUBDIRS = . include @docs_dirs@ zlib \ + @readline_topdir@ sql-common \ diff --git a/databases/mysql60-server/files/patch-man::Makefile.in b/databases/mysql60-server/files/patch-man::Makefile.in index 86d18cec61b2..0f83c2ae8cad 100644 --- a/databases/mysql60-server/files/patch-man::Makefile.in +++ b/databases/mysql60-server/files/patch-man::Makefile.in @@ -1,13 +1,13 @@ ---- man/Makefile.in.orig Mon Feb 23 14:54:10 2004 -+++ man/Makefile.in Mon Feb 23 14:54:34 2004 -@@ -272,9 +272,7 @@ - vio_dir = @vio_dir@ - vio_libs = @vio_libs@ - --man_MANS = mysql.1 isamchk.1 isamlog.1 mysql_zap.1 mysqlaccess.1 \ +--- man/Makefile.in.orig Tue Mar 22 20:27:16 2005 ++++ man/Makefile.in Wed Apr 6 13:10:42 2005 +@@ -333,9 +333,7 @@ + tools_dirs = @tools_dirs@ + uname_prog = @uname_prog@ + zlib_dir = @zlib_dir@ +-man_MANS = mysql.1 mysql_zap.1 mysqlaccess.1 \ - mysqladmin.1 mysqld.1 mysqld_multi.1 mysqldump.1 mysqlshow.1 \ - perror.1 replace.1 mysqld_safe.1 mysql_fix_privilege_tables.1 +man_MANS = - - EXTRA_DIST = mysql.1.in isamchk.1.in isamlog.1.in mysql_zap.1.in \ + EXTRA_DIST = mysql.1.in mysql_zap.1.in \ + mysqlaccess.1.in mysqladmin.1.in mysqld.1.in mysqld_multi.1.in \ diff --git a/databases/mysql60-server/files/patch-scripts::Makefile.in b/databases/mysql60-server/files/patch-scripts::Makefile.in index ffef310f740c..405818e00304 100644 --- a/databases/mysql60-server/files/patch-scripts::Makefile.in +++ b/databases/mysql60-server/files/patch-scripts::Makefile.in @@ -1,9 +1,9 @@ ---- scripts/Makefile.in.orig Tue Jul 27 08:14:44 2004 -+++ scripts/Makefile.in Sat Oct 23 10:44:33 2004 -@@ -287,26 +287,7 @@ - vio_dir = @vio_dir@ - vio_libs = @vio_libs@ - +--- scripts/Makefile.in.orig Tue Mar 22 20:27:34 2005 ++++ scripts/Makefile.in Wed Apr 6 13:16:58 2005 +@@ -336,26 +336,7 @@ + tools_dirs = @tools_dirs@ + uname_prog = @uname_prog@ + zlib_dir = @zlib_dir@ -bin_SCRIPTS = @server_scripts@ \ - msql2mysql \ - mysql_config \ @@ -26,18 +26,18 @@ - mysql_create_system_tables +bin_SCRIPTS = - EXTRA_SCRIPTS = make_binary_distribution.sh \ -@@ -340,7 +321,7 @@ + make_sharedlib_distribution.sh \ +@@ -386,7 +367,7 @@ + mysqlaccess.conf \ mysqlbug - -dist_pkgdata_DATA = fill_help_tables.sql mysql_fix_privilege_tables.sql +dist_pkgdata_DATA = # mysqlbug should be distributed built so that people can report build # failures with it. -@@ -616,8 +597,6 @@ +@@ -677,8 +658,6 @@ all: fill_help_tables.sql make_win_src_distribution make_binary_distribution make_sharedlib_distribution diff --git a/databases/mysql60-server/files/patch-scripts::mysqlaccess.sh b/databases/mysql60-server/files/patch-scripts::mysqlaccess.sh deleted file mode 100644 index f1382fbad153..000000000000 --- a/databases/mysql60-server/files/patch-scripts::mysqlaccess.sh +++ /dev/null @@ -1,90 +0,0 @@ ---- scripts/mysqlaccess.sh.orig 2005-01-16 14:28:38 -08:00 -+++ scripts/mysqlaccess.sh 2005-01-16 14:28:38 -08:00 -@@ -2,7 +2,7 @@ - # **************************** - package MySQLaccess; - #use strict; --use POSIX qw(tmpnam); -+use File::Temp qw(tempfile tmpnam); - use Fcntl; - - BEGIN { -@@ -32,7 +32,6 @@ - $ACCESS_U_BCK = 'user_backup'; - $ACCESS_D_BCK = 'db_backup'; - $DIFF = '/usr/bin/diff'; -- $TMP_PATH = '/tmp'; #path to writable tmp-directory - $MYSQLDUMP = '@bindir@/mysqldump'; - #path to mysqldump executable - -@@ -432,7 +431,7 @@ - # no caching on STDOUT - $|=1; - -- $MYSQL_CNF = POSIX::tmpnam(); -+ $MYSQL_CNF = tmpnam(); - %MYSQL_CNF = (client => { }, - mysql => { }, - mysqldump => { }, -@@ -577,8 +576,6 @@ - push(@MySQLaccess::Grant::Error,'not_found_mysql') if !(-x $MYSQL); - push(@MySQLaccess::Grant::Error,'not_found_diff') if !(-x $DIFF); - push(@MySQLaccess::Grant::Error,'not_found_mysqldump') if !(-x $MYSQLDUMP); --push(@MySQLaccess::Grant::Error,'not_found_tmp') if !(-d $TMP_PATH); --push(@MySQLaccess::Grant::Error,'write_err_tmp') if !(-w $TMP_PATH); - if (@MySQLaccess::Grant::Error) { - MySQLaccess::Report::Print_Error_Messages() ; - exit 0; -@@ -1777,17 +1774,15 @@ - @before = sort(@before); - @after = sort(@after); - -- $before = "$MySQLaccess::TMP_PATH/$MySQLaccess::script.before.$$"; -- $after = "$MySQLaccess::TMP_PATH/$MySQLaccess::script.after.$$"; -- #$after = "/tmp/t0"; -- open(BEFORE,"> $before") || -- push(@MySQLaccess::Report::Errors,"Can't open temporary file $before for writing"); -- open(AFTER,"> $after") || -- push(@MySQLaccess::Report::Errors,"Can't open temporary file $after for writing"); -- print BEFORE join("\n",@before); -- print AFTER join("\n",@after); -- close(BEFORE); -- close(AFTER); -+ ($hb, $before) = tempfile("$MySQLaccess::script.XXXXXX") or -+ push(@MySQLaccess::Report::Errors,"Can't create temporary file: $!"); -+ ($ha, $after) = tempfile("$MySQLaccess::script.XXXXXX") or -+ push(@MySQLaccess::Report::Errors,"Can't create temporary file: $!"); -+ -+ print $hb join("\n",@before); -+ print $ha join("\n",@after); -+ close $hb; -+ close $ha; - - # ---------------------------------- - # compute difference -@@ -1800,8 +1795,8 @@ - - # ---------------------------------- - # cleanup temp. files -- unlink(BEFORE); -- unlink(AFTER); -+ unlink($before); -+ unlink($after); - - return \@diffs; - } -@@ -2316,14 +2311,6 @@ - => "The diff program <$MySQLaccess::DIFF> could not be found.\n" - ."+ Check your path, or\n" - ."+ edit the source of this script to point \$DIFF to the diff program.\n" -- ,'not_found_tmp' -- => "The temporary directory <$MySQLaccess::TMP_PATH> could not be found.\n" -- ."+ create this directory (writeable!), or\n" -- ."+ edit the source of this script to point \$TMP_PATH to the right directory.\n" -- ,'write_err_tmp' -- => "The temporary directory <$MySQLaccess::TMP_PATH> is not writable.\n" -- ."+ make this directory writeable!, or\n" -- ."+ edit the source of this script to point \$TMP_PATH to another directory.\n" - ,'Unrecognized_option' - => "Sorry,\n" - ."You are using an old version of the mysql-program,\n" diff --git a/databases/mysql60-server/files/patch-sql::mysqld.cc b/databases/mysql60-server/files/patch-sql::mysqld.cc index c98d38bcbd10..e79f985fcb69 100644 --- a/databases/mysql60-server/files/patch-sql::mysqld.cc +++ b/databases/mysql60-server/files/patch-sql::mysqld.cc @@ -9,39 +9,3 @@ #include <syslog.h> #ifdef NEED_SYS_SYSLOG_H #include <sys/syslog.h> -@@ -136,15 +136,6 @@ - int allow_severity = LOG_INFO; - int deny_severity = LOG_WARNING; - --#ifdef __STDC__ --#define my_fromhost(A) fromhost(A) --#define my_hosts_access(A) hosts_access(A) --#define my_eval_client(A) eval_client(A) --#else --#define my_fromhost(A) fromhost() --#define my_hosts_access(A) hosts_access() --#define my_eval_client(A) eval_client() --#endif /* __STDC__ */ - #endif /* HAVE_LIBWRAP */ - - #ifdef HAVE_SYS_MMAN_H -@@ -3565,8 +3556,8 @@ - struct request_info req; - signal(SIGCHLD, SIG_DFL); - request_init(&req, RQ_DAEMON, libwrapName, RQ_FILE, new_sock, NULL); -- my_fromhost(&req); -- if (!my_hosts_access(&req)) -+ fromhost(&req); -+ if (!hosts_access(&req)) - { - /* - This may be stupid but refuse() includes an exit(0) -@@ -3574,7 +3565,7 @@ - clean_exit() - same stupid thing ... - */ - syslog(deny_severity, "refused connect from %s", -- my_eval_client(&req)); -+ eval_client(&req)); - - /* - C++ sucks (the gibberish in front just translates the supplied |