#!/bin/bash

###########################################################################################
# Usage: add <mysql configfile location> <datadir> <group> <instance root user> <instance root password> <instance port>  <instancename> <mysqlmanager user> <mysqlmanager password> <mysqlmanager socket>
# 06 - Dec - 2009. talonx@gmail.com
# v 0.01
#
###########################################################################################i
if [ $# -lt 10 ]
then
	echo "Usage: add <mysql configfile location> <datadir> <group> <instance root user> <instance root password> <instance port>  <instancename> <mysqlmanager user> <mysqlmanager password> <mysqlmanager socket>"
	exit 1
fi

config_file=$1
datadir=$2
group=$3
user=$4
password=$5
port=$6
instance_name=$7
mm_user=$8
mm_pass=$9
shift
mm_sock=$9

socket_file="/tmp/$instance_name.sock"

function install_db
{
	mkdir $2
	chown -R $3.$1 $2
	mysql_install_db --user=$1 --datadir=$2
	echo "Installed system tables in $2"
}

function update_config
{
	echo "" >> $1
	echo "[$5]" >> $1
	echo "datadir=$4" >> $1
	echo "user=$2" >> $1
	echo "port=$3" >> $1
	echo "socket=$6" >> $1
	echo "" >> $1
}

function start_server
{
	mysql -u$1 -p$2 --socket=$3 --execute="flush instances;"
	mysql -u$1 -p$2 --socket=$3 --execute="start instance $4;"
	echo "Started $4"
}

function update_password
{
	mysqladmin -uroot --socket=$3 password $1
	echo "Updated password for user: $2"
}

install_db $user $datadir $group
update_config $config_file $user $port $datadir $instance_name $socket_file
start_server $mm_user $mm_pass $mm_sock $instance_name
sleep 6
update_password $password $user $socket_file


echo "MySQL Server running on $port"
echo "Connect using mysql -u$user -p$password --socket=$socket_file"

