バイナリmariadbインストールスクリプト
3963 ワード
#!/bin/bash
func () {
release7=`cat /etc/centos-release | grep -o "7\."`
}
PWD=`pwd`
mkdir /app &> /dev/null
useradd -d /app/mysqldb -r -m -s /sbin/nologin mysql &>/dev/null
echo -e "\t mysql (#-#)"
echo -e "\t$1 ……"
tar xvf $1 -C /usr/local/ &> /dev/null
echo -e "\t$1 !"
cd /usr/local/
ln -s mariadb* mysql &> /dev/null
cd /usr/local/mysql
mkdir /etc/mysql/ &> /dev/null
\cp -f support-files/my-huge.cnf /etc/mysql/my.cnf
sed -i '/^\[mysqld\]/a\datadir = /app/mysqldb
innodb_file_per_table = on
skip_name_resolve = on' /etc/mysql/my.cnf
scripts/mysql_install_db --user=mysql --datadir=/app/mysqldb &>/dev/null
if [ $? != 0 ];then
yum install libaio -y &> /dev/null
scripts/mysql_install_db --user=mysql --datadir=/app/mysqldb &>/dev/null
if [ $? != 0 ];then
echo -e "\tscripts/mysql_install_db !"
exit 1
fi
fi
\cp -f support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld &> /dev/null
func
if [ -n "$release7" ];then
mkdir /var/log/mariadb/ &>/dev/null
chown mysql /var/log/mariadb/
touch /var/log/mariadb/mariadb.log &> /dev/null
chown mysql /var/log/mariadb/mariadb.log
else
mkdir -p /var/log/mysql.log
chown mysql /var/log/mysql.log
touch /var/log/mysqld.log
chown mysql:mysql /var/log/mysqld.log
fi
service mysqld start &> /dev/null
if [ $? == 0 ];then
echo -e "\tmysql (#-#)"
fi
echo "PATH=/usr/local/mysql/bin:$PATH" >/etc/profile.d/mysql.sh
echo -e "\t . /etc/profile.d/mysql.sh ‘/usr/local/mysql/bin’ PATH !"
echo -e "\t mysql_secure_installation! mariadb(#-#)"
cd $PWD
: , , 。