加入收藏 | 设为首页 | 会员中心 | 我要投稿 天瑞地安资讯网_保定站长网 (https://www.52baoding.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL如何实现各版本自动安装脚本

发布时间:2022-01-10 16:36:24 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍MySQL如何实现各版本自动安装脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 描述: 1 . 所有版本都是源码编译安装,根据需求设定编译参数 2 . 简单的对源码包的获取,依赖包的安装,以及编译过程,用户的添
         这篇文章主要介绍MySQL如何实现各版本自动安装脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
 
描述:
 
    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
 
    注意点:
 
    ① 5.7版本需要下载带boost包的源码包,如上图,由于5.7的编译要求cmake在2.8以上,故而该脚本适用于debian7.0以上的系统,centos同理
    ② 在5.5版本之后的编译安装都需要使用cmake ,脚本已做区分
    ③ 在公司各系统测试安装都可以成功。
    ④ 运行位置,在待安装mysql服务的机器上
    
 
以上是“MySQL如何实现各版本自动安装脚本”这篇文章的所有内容,感谢各位的阅读!

(编辑:天瑞地安资讯网_保定站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!