linux 一键安装mysql SHELL

#!/bin/bash
#----------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------
#   Author: luo
#   Time: 2016-03-16
#   Description: 在当前主机中安装mysql
#----------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------
#mysql安装包的文件名,方便统一替换
mysql_server_package_name=/home/mysql/MySQL-server-5.6.36-1.el6.x86_64.rpm
mysql_client_package_name=/home/mysql/MySQL-client-5.6.36-1.el6.x86_64.rpm
#----------------------------------------------------------------------------------------------------
#第一步:卸载已安装的mysql
#----------------------------------------------------------------------------------------------------
mysql_arr=(`rpm -qa|grep -i mysql`)
if [ -n "$mysql_arr" ]; then
    service mysql stop
fi
for mysql in ${mysql_arr[*]}
do
    echo "卸载$mysql"
    rpm -e $mysql --nodeps
done
#删除残留配置文件
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql
#----------------------------------------------------------------------------------------------------
#第二步:安装mysql服务端
#----------------------------------------------------------------------------------------------------
echo "安装MySQL服务端"
rpm -ih $mysql_server_package_name
#查看mysql自动生成的密码
mysql_password=`grep password /root/.mysql_secret | tail -1 | awk -F":" '{print $4}' | sed 's/ //g'`
#----------------------------------------------------------------------------------------------------
#第三步:安装mysql客户端
#----------------------------------------------------------------------------------------------------
echo "安装MySQL客户端"
rpm -ih $mysql_client_package_name
#----------------------------------------------------------------------------------------------------
#第四步:修改mysql的root登录密码
#----------------------------------------------------------------------------------------------------
echo "修改mysql的root登录密码"
#service mysql start
#mysql -uroot -p$mysql_password -e "set password=password('123456');"这种方式不起作用
service mysql stop
rm -rf /var/lib/mysql/*
mysql_install_db 1>/dev/null
chown -R mysql:mysql /var/lib/mysql/
service mysql start
mysqladmin password 12356 1>/dev/null
#----------------------------------------------------------------------------------------------------
#第五步:设置mysql可远程连接
#----------------------------------------------------------------------------------------------------
echo "设置mysql可以被远程连接"
mysql -uroot -p12356 -e "grant all privileges on *.* to 'root'@'%' identified by '12356' with grant option;" 1>/dev/null
mysql -uroot -p12356 -e "flush privileges;" 1>/dev/null

你可能感兴趣的:(实用工具)