温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-11-01 11:34:54 来源:亿速云 阅读:131 作者:小新 栏目:MySQL数据库

这篇文章主要介绍MySQL如何实现各版本自动安装脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

描述:

    1 . 所有版本都是源码编译安装,根据需求设定编译参数
    2 . 简单的对源码包的获取,依赖包的安装,以及编译过程,用户的添加,环境变量的设置做了一个封装

cat auto_install_mysql.sh

点击(此处)折叠或打开

  1. #!/bin/bash


  2. ssh_host=192.168.71.56 #存储源码包的机器

  3. soft_dir=/var/www/init/mysql_dir #存储源码包的位置

  4. ssh_port=xxx    #存储机端口

  5. ssh_user=xxx    #存储机用户

  6. ssh_pwd=xxxxx   #存储机密码


  7. tran_rate=50000 #通过scp方式传输源码包到待安装机器,这里限速大小 单位bit


  8. os=debian       #设定系统类型debian 或者 centos

  9. version=5.0     #待安装mysql版本

  10. log_dir=./      #日志存储位置

  11. tmp_dir=/tmp    #临时目录


  12. function redirect_log {

  13.         mkdir -p $log_dir

  14.         log_file=$log_dir/`date +%Y-%m-$d`.log

  15.         exec 1> $log_file

  16.         exec 2> $log_file

  17. }


  18. function get_soft_kit {

  19.         echo "get soft"

  20.         if [ $os=='debian' ];then

  21.                 apt-get -y install sshpass

  22.         else

  23.                 yum -y install sshpass

  24.         fi

  25.         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"`

  26.         echo "get $file"

  27.         sshpass -p $ssh_pwd scp -P $ssh_port -l $tran_rate -o StrictHostKeyChecking=no $ssh_user@$ssh_host:$soft_dir/$file $tmp_dir

  28. }


  29. function install_dep {

  30.         echo "install dep"

  31.         if [ $os=='debian' ];then

  32.         apt-get -y install cmake

  33.         apt-get -y install make

  34.         apt-get -y install gcc

  35.         apt-get -y install g++

  36.         apt-get -y install bison

  37.         apt-get -y install ncurses-dev

  38.         apt-get -y install libbison-dev

  39.         else

  40.         yum -y install make cmake gcc-c++ bison bison-devel ncurses-devel

  41.         fi


  42. }


  43. function install_soft_kit {

  44.         echo "install soft"

  45.     cd $tmp_dir

  46.     file=`ls | grep -i mysql | grep $version | grep tar.gz | head -1`

  47. echo $file

  48.     mkdir -p $tmp_dir/mysql_temp

  49.     tar -xzvf $tmp_dir/$file -C $tmp_dir/mysql_temp

  50.     cd $tmp_dir/mysql_temp

  51.     source_dir_name=`ls | head -1`

  52.     cd $source_dir_name

  53.     pwd

  54.     if [ $version == '5.0' ];then

  55.         ./configure --prefix=/usr/local/mysql

  56.         make && make install

  57.     elif [ $version == '5.7' ];then

  58.         cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_BOOST=./boost/boost_1_59_0

  59.         make && make install

  60.     else

  61.         cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

  62.         make && make install

  63.     fi

  64. }


  65. function mysql_conf {

  66.     groupadd mysql

  67.     useradd -g mysql mysql

  68.     echo "MYSQL_HOME=/usr/local/mysql" >> /etc/profile

  69.     echo "PATH=\$PATH:\$MYSQL_HOME/bin:\$MYSQL_HOME/scripts" >> /etc/profile

  70. }


  71. #redirect_log

  72. get_soft_kit

  73. install_dep

  74. install_soft_kit

  75. mysql_conf

    关于192.168.71.56源码包如下:
    
    MySQL如何实现各版本自动安装脚本

    注意点:

    ① 5.7版本需要下载带boost包的源码包,如上图,由于5.7的编译要求cmake在2.8以上,故而该脚本适用于debian7.0以上的系统,centos同理
    ② 在5.5版本之后的编译安装都需要使用cmake ,脚本已做区分
    ③ 在公司各系统测试安装都可以成功。
    ④ 运行位置,在待安装mysql服务的机器上
    

以上是“MySQL如何实现各版本自动安装脚本”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI