From 20b2ce29bc811c225ae4862f8d2f562dfcb6cbfa Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 30 Dec 2002 17:53:47 +0000 Subject: Add new option --dbmatch to support pools of webservers accessing same database (could be fun setting up that some day). --- localezcreate | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'localezcreate') diff --git a/localezcreate b/localezcreate index 03fb425..8d94486 100755 --- a/localezcreate +++ b/localezcreate @@ -3,7 +3,7 @@ # /usr/local/sbin/localezcreate # Copyright 2001-2002 Jonas Smedegaard # -# $Id: localezcreate,v 1.23 2002-12-09 00:17:34 jonas Exp $ +# $Id: localezcreate,v 1.24 2002-12-30 17:53:47 jonas Exp $ # # Create local eZ Publish site # @@ -20,7 +20,7 @@ set -e prg=`basename $0` -TEMP=`getopt -o hu:g:d:a:m:N:U:D:Z:i::v::q::f:: --long help,user:,group:,domain:,mailuser:,maildomain:,dbname:,dbuser:,dbserver:,dballow:,info::,verbose::,debug::,query::,force:: -n "$prg" -- "$@"` +TEMP=`getopt -o hu:g:d:a:m:N:M:U:D:Z:i::v::q::f:: --long help,user:,group:,domain:,mailuser:,maildomain:,dbname:,dbmatch:,dbuser:,dbserver:,dballow:,info::,verbose::,debug::,query::,force:: -n "$prg" -- "$@"` # Check for non-GNU getopt if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi @@ -31,7 +31,7 @@ eval set -- "$TEMP" # (If changing defaults, you might need to change these as well) opts1="user group domain maildomain dbserver dballow templates languages sqlchunks templatedirs languagedirs sqldirs" # Options with self-contained defaults opts2="dbuser home" # Options requiring $opts1 to resolve default -opts3="mailuser dbname basedir adminhost webcfg" # Options requiring $opts1, $opts2 or $host to resolve default +opts3="mailuser dbname dbmatch basedir adminhost webcfg" # Options requiring $opts1, $opts2 or $host to resolve default optsboolean="debug verbose info query force" # Do not touch these! # Defaults @@ -40,7 +40,8 @@ defaultgroup="www-data" defaultdomain="ez."`hostname -d` defaultmailuser='$dbuser' defaultmaildomain=`cat /etc/mailname 2> /dev/null || hostname -d` -defaultdbname='ez_2_2_$host' # TODO: Allow all defaults to be set like this +defaultdbname='$dbuser-ez-$host' +defaultdbmatch='$dbuser%' defaultdbuser='$user' defaultdbserver="localhost" defaultdballow="localhost" @@ -90,6 +91,8 @@ function usage() { echo " $defaultmaildomain)" echo " -N, --dbname=DB MySQL database name (default:" echo " $defaultdbname)" + echo " -M, --dbmatch=STRING MySQL database authorization match (default:" + echo " $defaultdbmatch)" echo " -U, --dbuser=UID MySQL database user (default: $defaultdbuser)" echo " -D, --dbserver=HOST IP or host of MySQL server (default:" echo " $defaultdbserver)" @@ -140,6 +143,7 @@ while true ; do -a|--mailuser) mailuser="$2"; shift 2;; -m|--maildomain) maildomain="$2"; shift2 ;; -N|--dbname) dbname="$2"; shift 2;; + -M|--dbmatch) dbmatch="$2"; shift 2;; -U|--dbuser) dbuser="$2"; shift 2;; -D|--dbserver) dbserver="$2"; shift 2;; -Z|--dballow) dballow="$2"; shift 2;; @@ -297,11 +301,11 @@ if [ -e /usr/share/wwwconfig-common/mysql-createuser.sh ] ; then exit 1 fi for h in `echo "localhost $dballow" | sort -u`; do - echo "GRANT INDEX ON $dbname.* TO '$dbuser'@$h IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver + echo "GRANT INDEX ON '$dbmatch' TO '$dbuser'@'$h';" | mysql -u$dbadmin -p$dbadmpass $optdbserver done else for h in `echo "localhost $dballow" | sort -u`; do - echo "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX ON $dbname.* TO '$dbuser'@$h IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver + echo "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX ON '$dbmatch' TO '$dbuser'@'$h' IDENTIFIED BY '$dbpass';" | mysql -u$dbadmin -p$dbadmpass $optdbserver done fi -- cgit v1.2.3