Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选

首页 / 数据库 / MySQL / MySQL 5.5.40自动化安装脚本

学习了两周Linux Shell脚本,终于写出一个MySQL自动化安装脚本。加上今天一整天的测试,可以正常执行安装MySQL 5.5.40. 其他版本还没有测试。现分享一下。也请高手指点一下。执行该脚本的前提是:环境介绍:1、RedHat 6.3 x64,最小化安装
2、RAM: 2G,HD:30G
3、关闭selinux
4、配置好yum源(我使用自己配置的源)
5、打开ssh,病配置好iptables,允许远程登录访问。
6、所需软件和文件:cmake-2.8.10.1.tar.gz
bison-3.0.tar.gz
zlib-1.2.7.tar.gz
mysql-5.5.40.tar.gz
my.cnf //老师共享的文件脚本内容:#!/bin/bashecho "step one: create folder and mount packages"if [ -d /mnt/share ]then  echo "find it,don"t need to create it." 
else mkdir -p /mnt/share   if [[ $? = 0 ]]      then       echo "create it successfully!"      else        echo " can"t create this folder!pls check out!"     fi mount -t cifs -o username=swen02,password=autozhao01! //172.16.11.20/LAMP-all-software /mnt/sharefi 
echo "step two: create mysql installation path" 
if [ -d /project/class2 ]then echo "find it, don"t need to create it."else    mkdir -p /project/class2/ if [[ $? = 0 ]]      then       echo "create it successfully!"      else        echo " can"t create this floder!pls check out!"     fifi 
echo "step three: copy packages to the folder" 
cp /mnt/share/cmake-2.8.10.1.tar.gz  /project/class2/cp /mnt/share/bison-3.0.tar.gz  /project/class2/cp /mnt/share/zlib-1.2.7.tar.gz  /project/class2/cp /mnt/share/mysql-5.5.40.tar.gz /project/class2/cp /mnt/share/my.cnf  /project/class2/ 
echo "step four: install base packages" 
yum -y install  gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* 
cd /project/class2tar -xzvf  cmake-2.8.10.1.tar.gzcd cmake-2.8.10.1./bootstrapmake && make installif [[ $? = 0 ]]then echo "good job!"else echo "sorry, pls check out!" exit 1ficd ..tar -zxvf bison-3.0.tar.gzcd bison-3.0./configuremake && make installif [[ $? = 0 ]]then echo "good job!"else echo "sorry, pls check out!" exit 1ficd ..tar -zxvf zlib-1.2.7.tar.gzcd zlib-1.2.7./configuremake && make installcd ..if [[ $? = 0 ]]then echo "good job!"else echo "sorry, pls check out!" exit 1fi   echo "step five:configure system referenc" 
FLAGS="-O3 -g -fno-exceptions -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"CXX=g++CXXFLAGS="-O3 -g -fno-exceptions -fno-rtti -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing"export CFLAGS CXX CXXFLAGS 
echo "step six: begin to install mysql" 
groupadd mysqluseradd -r -g mysql mysqltar -zxvf mysql-5.5.40.tar.gzcd mysql-5.5.40cmake -DCMAKE_INSTALL_PREFIX=/project/class2/mysqlmakemake installif [[ $? = 0 ]]then echo "good job!"else echo "sorry, pls check out!" exit 1ficd .. 
#create folder and initial new dbmkdir ./mysql/runmkdir ./mysql/logchown -R mysql.mysql /project/class2/mysqlrm -rf /project/class2/mysql/data/*./mysql/scripts/mysql_install_db --datadir=/project/class2/mysql/data --user=mysql --basedir=/project/class2/mysql 
#modify my.cnf and copy new one 
sed "s/default-character-set=gbk/default-character-set=utf8/" my.cnf | sed "s/skip-ssl/#skip-ssl/" >./mysql/my.cnfchown -R mysql.mysql /project/class2/mysql/my.cnf 
#creat ln 
ln -s /project/class2/mysql/run/mysql.sock /tmp/mysql.sock 
mv /root/.bash_profile /root/.bash_profile.bak 
/bin/sed "/export PATH/iexport PATH="$PATH":/project/class2/mysql/bin/" /root/.bash_profile.bak >/root/.bash_profile 
#start mysql service./mysql/bin/mysqld_safe --defaults-file=/project/class2/mysql/my.cnf & 
#waitting for service to be startedsignal=0while [[ "$signal" = 0 ]]do if [ -z " `grep "Source distribution"  /project/class2/mysql/log/alert.log`" ]then echo "not found it" sleep 30else    echo "found it"  let signal+=1fidone 
#logout and relogin, new PATH will be  take effect.kill -9 $PPID--------------------------------------分割线 --------------------------------------Ubuntu 14.04下安装MySQL http://www.linuxidc.com/Linux/2014-05/102366.htm《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF http://www.linuxidc.com/Linux/2014-03/98821.htmUbuntu 14.04 LTS 安装 LNMP NginxPHP5 (PHP-FPM)MySQL http://www.linuxidc.com/Linux/2014-05/102351.htmUbuntu 14.04下搭建MySQL主从服务器 http://www.linuxidc.com/Linux/2014-05/101599.htmUbuntu 12.04 LTS 构建高可用分布式 MySQL 集群 http://www.linuxidc.com/Linux/2013-11/93019.htmUbuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb http://www.linuxidc.com/Linux/2013-08/89270.htmMySQL-5.5.38通用二进制安装 http://www.linuxidc.com/Linux/2014-07/104509.htm--------------------------------------分割线 --------------------------------------本文永久更新链接地址