前提条件:

1.  CentOS 6.4

2.  手动下载mysql-5.5.30.tar.gz,并放置在/soft目录下

3. 安装成后,需手动执行 source /etc/bashrc


#!/bin/bash
#   vflong  2014-4-4
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
# Check if user is root
if [ $(id -u) != "0" ]; then
    printf "Error: You must be root to run this script!\n"
    exit 1
fi
#set mysql root password
echo "==========================="
mysqlpwd="mysql"
echo "Please input the root password of mysql:"
read -p "(Default password: mysql):" mysqlpwd
if [ "$mysqlpwd" = "" ]; then
mysqlpwd="mysql"
fi
echo "==========================="
echo "MySQL root password:$mysqlpwd"
echo "==========================="
function InitInstall()
{
    cat /etc/issue
    uname -a
    MemTotal=`free -m | grep Mem | awk '{print  $2}'` 
    echo -e "\n Memory is: ${MemTotal} MB "
rpm -qa|grep mysql
rpm -e mysql
yum -y remove mysql-server mysql
for packages in make cmake gcc gcc-c++ ncurses ncurses-devel bison;
do
yum install -y $packages;
done
}
function CheckFiles()
{
echo "============================check files=================================="
cd /soft
if [ -s mysql-5.5.30.tar.gz ]; then
      echo "mysql-5.5.30.tar.gz [found]"
      else
      echo "Error: mysql-5.5.30.tar.gz not found!!!exit..."
      exit 1
fi
echo "============================check files=================================="
}
function InstallMySQL()
{
echo "============================Install MySQL 5.5.30=================================="
rm -f /etc/my.cnf
rm -f /etc/init.d/mysqld
cd /soft
tar xvf mysql-5.5.30.tar.gz
cd mysql-5.5.30
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/dbdata \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock \
-DWITH_SSL=yes
make && make install
groupadd mysql
useradd -s /sbin/nologin -M -g mysql mysql
mkdir -p /data/dbdata
chown mysql.mysql /usr/local/mysql -R
chown mysql.mysql /data/dbdata -R
cp /soft/mysql-5.5.30/support-files/my-large.cnf /etc/my.cnf
cp /soft/mysql-5.5.30/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/dbdata/
/etc/init.d/mysqld start
cat >>/etc/bashrc<<EOF
PATH=$PATH:/usr/local/mysql/bin
export PATH
EOF
source /etc/bashrc
export PATH
mysqladmin -u root password $mysqlpwd
/etc/init.d/mysqld restart
echo "============================MySQL 5.5.30 install completed========================="
}
InitInstall
CheckFiles
InstallMySQL
mysql -uroot -p$mysqlpwd -e 'select version()'


参考脚本出处:

http://www.lnmp.org