mysql-cluster-gpl-7.1.17 安装配置脚本

#!/bin/sh
# install mysql-cluster
#usage:sh inscluster |ndb_mgmd |ndbd |mysqld $2  eg:sh inscluster.sh ndbd 116.211.12.171
#$1 type   $2:ndb-mgmd-ip

group=`cat /etc/group|grep -i "mysql"|awk -F':' '{print $1}'`
if [ "$group" != "mysql" ];then
groupadd mysql
fi
user=`cat /etc/shadow|grep -i "mysql"|awk -F':' '{print $1}'`
if [ "$user" != "mysql" ];then
useradd -g mysql mysql
fi

ndb_mgmd()
{
#install ndb_mgmd
mkdir -p /app/mysql-cluster/mysql-cluster
ln -s /app/mysql-cluster /usr/local
chown -R mysql:mysql  /app/mysql-cluster/mysql-cluster
cd /app/mysql-cluster
tar zxvf /root/mysql-cluster-gpl-7.1.17.tar.gz
cd mysql-cluster-gpl-7.1.17
sed -i '54761s/\$RM/\#\$RM/' ./configure
./configure --prefix=/app/mysql-cluster --with-plugins=partition,ndbcluster
make
make install
ln -s /app/mysql-cluster/libexec/ndb_mgmd /app/mysql-cluster/bin
cp /app/mysql-cluster/libexec/ndb_mgmd  /etc/rc.d/init.d/ndb_mgmd
chmod +x /etc/rc.d/init.d/ndb_mgmd
#chkconfig --add ndb_mgmd

echo "PATH=$PATH:/usr/local/mysql-cluster/bin" >>/etc/bashrc
echo "export PATH"                     >>/etc/bashrc

#configure config.ini
config=/app/mysql-cluster/config.ini
echo -e  '[ndbd default]\nNoOfReplicas=2\nDataMemory=500M\nIndexMemory=100M'>> $config
echo -e  '[tcp default]\n#portnumber=220'>> $config
echo -e  '[ndb_mgmd]\nhostname='$2'\n#MGM上保存日志的目录\ndatadir=/app/mysql-cluster/mysql-cluster\nnodeid =1'>> $config
echo -e  '[ndbd]\nhostname=\n#ndb上保存数据的目录\ndatadir=/app/mysql-cluster/ndbdata\nnodeid =2'>> $config
echo -e  '[ndbd]\nhostname=\n#ndb上保存数据的目录\ndatadir=/app/mysql-cluster/ndbdata\nnodeid =3'>> $config
echo -e  '[mysqld]\nhostname=\nnodeid =4' >>$config
echo -e  '[mysqld]\nhostname=\nnodeid =5'>> $config
}

ndbd()
{
#install datanode
mkdir -p /app/mysql-cluster
cd /app/mysql-cluster
ln -s /app/mysql-cluster /usr/local
tar zxvf  /root/mysql-cluster-gpl-7.1.17.tar.gz
cd mysql-cluster-gpl-7.1.17
sed -i '54761s/\$RM/\#\$RM/' ./configure
./configure --prefix=/app/mysql-cluster --with-plugins=partition,ndbcluster  
make
make install
./scripts/mysql_install_db --user=mysql --datadir=/app/mysql-cluster/ndbdata
cp ./support-files/my-large.cnf /etc/my.cnf
ln -s /app/mysql-cluster/libexec/ndbd /app/mysql-cluster/bin
chown -R mysql:mysql /app/mysql-cluster/ndbdata
cp /app/mysql-cluster/libexec/ndbd  /etc/rc.d/init.d/ndbd
chmod +x /etc/rc.d/init.d/ndbd
echo "PATH=$PATH:/usr/local/mysql-cluster/bin" >>/etc/bashrc
echo "export PATH"                     >>/etc/bashrc
#configure my.cnf
sed -i '128a\ndbcluster\nndb-connectstring='$2'\n[mysql_cluster]\nndb-connectstring='$2'\n' /etc/my.cnf

}

mysqld ()
{
#install sqlnode
mkdir -p /app/mysql-cluster
cd /app/mysql-cluster
ln -s /app/mysql-cluster /usr/local
tar zxvf /root/mysql-cluster-gpl-7.1.17.tar.gz
cd mysql-cluster-gpl-7.1.17
sed -i '54761s/\$RM/\#\$RM/' ./configure
./configure --prefix=/app/mysql-cluster --with-plugins=partition,ndbcluster
make
make install
./scripts/mysql_install_db --user=mysql
cp ./support-files/my-large.cnf /etc/my.cnf
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
cd /app/mysql-cluster
chown -R mysql:mysql var
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld

echo "PATH=$PATH:/usr/local/mysql-cluster/bin" >>/etc/bashrc
echo "export PATH"                     >>/etc/bashrc
#configure my.cnf
sed -i '128a\default-storage-engine=ndb\nndbcluster\nndb-connectstring='$2'\n[mysql_cluster]\nndb-connectstring='$2'' /etc/my.cnf
}

case "$1" in
   "ndb_mgmd")
   ndb_mgmd
   ;;
   "ndbd")
   ndbd
   ;;
   "mysqld")
   mysqld
   ;;
esac

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值