描述:
1 . 所有版本都是源码编译安装,根据需求设定编译参数
2 . 简单的对源码包的获取,依赖包的安装,以及编译过程,用户的添加,环境变量的设置做了一个封装
cat auto_install_mysql.sh
-
#!/bin/bash
-
-
ssh_host=192.168.71.56 #存储源码包的机器
-
soft_dir=/var/www/init/mysql_dir #存储源码包的位置
-
ssh_port=xxx #存储机端口
-
ssh_user=xxx #存储机用户
-
ssh_pwd=xxxxx #存储机密码
-
-
tran_rate=50000 #通过scp方式传输源码包到待安装机器,这里限速大小 单位bit
-
-
os=debian #设定系统类型debian 或者 centos
-
version=5.0 #待安装mysql版本
-
log_dir=./ #日志存储位置
-
tmp_dir=/tmp #临时目录
-
-
function redirect_log {
-
mkdir -p $log_dir
-
log_file=$log_dir/`date +%Y-%m-$d`.log
-
exec 1> $log_file
-
exec 2> $log_file
-
}
-
-
function get_soft_kit {
-
echo "get soft"
-
if [ $os=='debian' ];then
-
apt-get -y install sshpass
-
else
-
yum -y install sshpass
-
fi
-
file=`sshpass -p $ssh_pwd ssh -p $ssh_port -o StrictHostKeyChecking=no $ssh_user@$ssh_host "ls $soft_dir | grep -i mysql | grep $version | grep tar.gz | head -1"`
-
echo "get $file"
-
sshpass -p $ssh_pwd scp -P $ssh_port -l $tran_rate -o StrictHostKeyChecking=no $ssh_user@$ssh_host:$soft_dir/$file $tmp_dir
-
}
-
-
function install_dep {
-
echo "install dep"
-
if [ $os=='debian' ];then
-
apt-get -y install cmake
-
apt-get -y install make
-
apt-get -y install gcc
-
apt-get -y install g++
-
apt-get -y install bison
-
apt-get -y install ncurses-dev
-
apt-get -y install libbison-dev
-
else
-
yum -y install make cmake gcc-c++ bison bison-devel ncurses-devel
-
fi
-
-
}
-
-
function install_soft_kit {
-
echo "install soft"
-
cd $tmp_dir
-
file=`ls | grep -i mysql | grep $version | grep tar.gz | head -1`
-
echo $file
-
mkdir -p $tmp_dir/mysql_temp
-
tar -xzvf $tmp_dir/$file -C $tmp_dir/mysql_temp
-
cd $tmp_dir/mysql_temp
-
source_dir_name=`ls | head -1`
-
cd $source_dir_name
-
pwd
-
if [ $version == '5.0' ];then
-
./configure --prefix=/usr/local/mysql
-
make && make install
-
elif [ $version == '5.7' ];then
-
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_BOOST=./boost/boost_1_59_0
-
make && make install
-
else
-
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-
make && make install
-
fi
-
}
-
-
function mysql_conf {
-
groupadd mysql
-
useradd -g mysql mysql
-
echo "MYSQL_HOME=/usr/local/mysql" >> /etc/profile
-
echo "PATH=\$PATH:\$MYSQL_HOME/bin:\$MYSQL_HOME/scripts" >> /etc/profile
-
}
-
-
#redirect_log
-
get_soft_kit
-
install_dep
-
install_soft_kit
-
mysql_conf
关于192.168.71.56源码包如下:
注意点:
① 5.7版本需要下载带boost包的源码包,如上图,由于5.7的编译要求cmake在2.8以上,故而该脚本适用于debian7.0以上的系统,centos同理
② 在5.5版本之后的编译安装都需要使用cmake ,脚本已做区分
③ 在公司各系统测试安装都可以成功。
④ 运行位置,在待安装mysql服务的机器上
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31385648/viewspace-2127326/
,如需转载,请注明出处,否则将追究法律责任。