mmdbcn 发表于 2018-8-23 12:51:28

shell之安装MySQL-10886311

#!/bin/bash  
#by LC
  
TOOLSDIR=/application/tools
  
INSTALLDIR=/application
  
CMAKEFILE=$TOOLSDIR/cmake-3.2.2
  
CMAKETAR=$TOOLSDIR/cmake-3.2.2.tar.gz
  
MYSQLFILE=$TOOLSDIR/mysql-5.5.32
  
MYSQLTAR=$TOOLSDIR/mysql-5.5.32.tar.gz
  
INSTALLMYSQL=$INSTALLDIR/mysql-5.5.32
  
DATADIR=/application/mysql-5.5.32/data
  
SOCKDIR=/application/mysql-5.5.32/tmp/mysql.sock
  
. /etc/init.d/functions
  
panduan (){
  
if [ $? -eq 0 ]
  
then
  
      action " $1 " /bin/true
  
    else
  
      action " $1 " /bin/false
  
    exit 1
  
fi
  
}
  
function checkMySQLDir(){
  
[ ! -d $TOOLSDIR ] && mkdir -p $TOOLSDIR
  

  
}
  
function checkMySQLtar(){
  
if [ -n $MYSQLTAR ]
  
then
  
    echo '#########################################################################'
  
    echo ' PLEASE DO THIS "Download MySQL in this directory---/application/tools/"'
  
    echo '#########################################################################'
  
    exit 1
  
fi
  
#http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.44.tar.gz
  
#http://mirror.yandex.ru/mirrors/ftp.mysql.com/Downloads/MySQL-5.5/mysql-5.5.44.tar.gz
  
#http://files.directadmin.com/services/all/mysql/mysql-5.5.44.tar.gz
  
#https://downloads.mariadb.com/archives/mysql-5.5/mysql-5.5.44-linux2.6-x86_64.tar.gz
  
#http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-5.5/mysql-5.5.44.tar.gz
  
if [ -n $CMAKETAR ]
  
then
  
    echo '#########################################################################'
  
    echo ' PLEASE DO THIS "Download cmake in this directory---/application/tools/"'
  
    echo '#########################################################################'
  
   exit 1
  
fi
  
#wget http://www.cmake.org/files/v3.3/cmake-3.3.0.tar.gz
  
}
  
function checkMySQLUser(){
  
if [ `cat /etc/passwd|grep mysql|wc -l` -eq 0 ]
  
then
  
   useradd mysql -s /sbin/nologin -M
  
fi
  
}
  
function InstallMySQL(){
  
    cd $TOOLSDIR &&\
  
      yum install ncurses-devel libaio-devel -y &&\
  
      tar xf $CMAKETAR &&\
  
      cd $CMAKEFILE &&\
  
      ./configure&&\
  
      gmake &&\
  
      gmake install &&\
  
      cd ../ &&\
  
      tar xf $MYSQLTAR &&\
  
      cd $MYSQLFILE &&\
  
      cmake . -DCMAKE_INSTALL_PREFIX=$INSTALLMYSQL \
  
      -DMYSQL_DATADIR=$DATADIR \
  
      -DMYSQL_UNIX_ADDR=$SOCKDIR \
  
      -DDEFAULT_CHARSET=utf8 \
  
      -DDEFAULT_COLLATION=utf8_general_ci \
  
      -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
  
      -DENABLED_LOCAL_INFILE=ON \
  
      -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  
      -DWITH_FEDERATED_STORAGE_ENGINE=1 \
  
      -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  
      -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
  
      -DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
  
      -DWITH_FAST_MUTEXES=1 \
  
      -DWITH_ZLIB=bundled \
  
      -DENABLED_LOCAL_INFILE=1 \
  
      -DWITH_READLINE=1 \
  
      -DWITH_EMBEDDED_SERVER=1 \
  
      -DWITH_DEBUG=0
  
panduan BIANYI
  
      make &&\
  
      make install &&\
  
      #ln -s /application/mysql-5.5.32/ /application/mysql &&\
  
      sed -i '40 a pathmunge /application/mysql/bin' /etc/profile &&\
  
      source /etc/profile
  
      chown -R mysql.mysql $INSTALLMYSQL
  
panduan MAKE
  
}
  
function StartMySQL(){
  
/bin/cp $INSTALLMYSQL/support-files/my-small.cnf /etc/my.cnf
  
echo 'PATH=/application/mysql/bin:$PATH' >>/etc/profile
  
source /etc/profile
  
chown -R mysql.mysql $DATADIR
  
chmod -R 1777 /tmp
  
cd $INSTALLMYSQL/scripts/
  
./mysql_install_db--basedir=$INSTALLMYSQL --datadir=$DATADIR/ --user=mysql
  
panduan CHUSHI
  
cd $MYSQLFILE
  
\cp support-files/mysql.server /etc/init.d/mysqld
  
chmod+x /etc/init.d/mysqld
  
/etc/init.d/mysqld start
  
panduan START
  
}
  
main (){
  
checkMySQLDir
  
checkMySQLtar
  
checkMySQLUser
  
TarMySQL
  
StartMySQL
  
}
  
main


页: [1]
查看完整版本: shell之安装MySQL-10886311