shanghaipc 发表于 2018-8-26 13:32:40

Shell脚本源码编译安装MySQL5.1.73

  #!/bin/bash
  #DESCRIPTION 源码安装mysql5.1.73
  #NOTICE 安装前需要将源码包放在和脚本同样的路径
  ## env setting
  BASEDIR=/home/mysql
  DATADIR=/home/data/mysql
  PIDFILE=/home/mysql/mysql.pid
  ## mysql base env install
  yum install gcc gcc-c++ cmake ncurses-devel -y
  yum groupinstall base "Development Tools" -y
  ## create user
  groupadd mysql
  useradd -r -g mysql mysql
  ## source package unzip
  ` -d mysql ` || mkdir mysql && rm -rf mysql && mkdir mysql
  tar zxvf mysql-5.1.73.tar.gz -C mysql
  mv ./mysql/mysql-5.1.73/* ./mysql/
  cd mysql
  ## mysql install
  ./configure --prefix=$BASEDIR --datadir=$DATADIR --with-mysqld-user=mysql --with- --with-extra-charsets=all
  make
  make install
  mkdir -p $DATADIR
  chown -R mysql:mysql $BASEDIR
  chown -R mysql:mysql $DATADIR
  ## mysql initial
  ./scripts/mysql_install_db --datadir=$DATADIR --user=mysql
  cp ./support-files/mysql.server /etc/init.d/mysqld
  rm -f /etc/my.cnf
  cp support-files/my-large.cnf /etc/my.cnf
  chmod 755 /etc/init.d/mysqld
  sed -inr "s#^basedir=#basedir=$BASEDIR#g" /etc/init.d/mysqld
  sed -inr "s#^datadir=#datadir=$DATADIR#g" /etc/init.d/mysqld
  sed -inr "s#^pid_file=#pid_file=$PIDFILE#g" /etc/init.d/mysqld
  sed -i "/\/abasedir=$BASEDIR" /etc/my.cnf
  sed -i "/\/adatadir=$DATADIR" /etc/my.cnf
  sed -i "/\/apid_file=$PIDFILE" /etc/my.cnf
  ## mysql environment variable
  export PATH=$PATH:/home/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
  source /etc/profile
  ## service start and enanble
  chkconfig mysqld on
  /etc/init.d/mysqld start

页: [1]
查看完整版本: Shell脚本源码编译安装MySQL5.1.73