#!/bin/sh #User : bobo365 #Date : 20160127 MAKE(){ if [ `echo $?` -eq 0 ] ;then make else exit fi } MAKE_INS(){ if [ `echo $?` -eq 0 ] ;then make install else exit fi } USER=`whoami` if [ "$USER" != ‘root‘ ] ;then echo "This is not root user。" exit fi if [ -d ‘/usr/local/mysql‘ ] ;then echo "Mysql data directory has been created." else mkdir -p /usr/local/mysql/data fi MYSQL_USER=`egrep -i mysql /etc/passwd` if [ -z "$MYSQL_USER" ] ;then useradd -s /sbin/nologin -M mysql else echo "The mysql user was added" fi yum install -y screen gcc gcc-c++ autoconf automake ncurses-devel sysstat man bash-completion expect bzip2 bzip2-devel wget -O /usr/local/src/cmake-3.3.2.tar.gz https://cmake.org/files/v3.3/cmake-3.3.2.tar.gz tar -zxf /usr/local/src/cmake-3.3.2.tar.gz -C /usr/local/src/ cd /usr/local/src/cmake-3.3.2/ && ./bootstrap MAKE && MAKE_INS wget -O /usr/local/src/mysql-5.6.26.tar.gz http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.6/mysql-5.6.26.tar.gz tar -zxf /usr/local/src/mysql-5.6.26.tar.gz -C /usr/local/src/ cd ../mysql-5.6.26 && cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysql/data -DSYSCONFDIR=/usr/local/mysql/ -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 MAKE && MAKE_INS /usr/local/mysql/scripts/mysql_install_db --datadir=/usr/local/mysql/data --user=mysql --basedir=/usr/local/mysql/ mv /etc/my.cnf /etc/my.cnf_bak cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod 755 /etc/init.d/mysqld sed -i ‘s/^# basedir = ...../basedir = \/usr\/local\/mysql/g‘ /etc/my.cnf sed -i ‘s/^# datadir = ...../datadir = \/usr\/local\/mysql\/data/‘ /etc/my.cnf sed -i ‘s/^# port = ...../port = 3306/‘ /etc/my.cnf sed -i ‘s/^# socket = ...../socket = \/tmp\/mysql.sock/‘ /etc/my.cnf /etc/init.d/mysqld start chkconfig --add mysqld && chkconfig mysqld on echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile . /etc/profile PROC=`ps aux|grep mysql |grep -v grep -c` PORT=`netstat -lnp|grep 3306` if [ ! -z "$PORT" ] && [ "$PROC" -ne 0 ] ;then echo "Mysql install and started secussefull" fi
时间: 2024-10-29 00:08:20