mysql脚本简书,mysql一键安装脚本
#!/bin/bash
#MySQL一鍵安裝腳本
#腳本運行前請確認本機沒有安裝其他版本的MySQL
#運行腳本前請詳細閱讀my.cnf文件
PASSWORD=`cat my.cnf | grep password | awk -F '=' '{print $2}'` #數據庫root用戶密碼(在my.cnf文件中修改)
MYSQL_FILE='mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz' #二進制安裝包名
MYSQL_SIGN=`echo ${MYSQL_FILE} | sed 's/.......$//'` #解壓后安裝包名
INSTALL_DIR='/usr/local' #安裝路徑
DATA_DIR=`cat my.cnf | grep datadir | awk -F '=' '{print $2}'` #數據庫文件存放路徑(在my.cnf文件中修改)
if [ -e ${INSTALL_DIR}/mysql ];then echo -e "\033[31m錯誤:${INSTALL_DIR}/mysql已存在,無法安裝\033[0m" ; exit 1 ; fi
if [ -e ${DATA_DIR} ];then echo -e "\033[31m錯誤:${DATA_DIR}已存在,無法安裝\033[0m" ; exit 2 ; fi
INSTALL(){
yum -y install libaio >/dev/null 2>&1
LIBAIO=`yum list installed | grep libaio | wc -l`
if [ ${LIBAIO} -eq 0 ];then echo -e "\033[31m錯誤: libaio 擴展庫安裝失敗\033[0m" ; exit 3 ; fi
tar zxf ${MYSQL_FILE}
mv ${MYSQL_SIGN} ${INSTALL_DIR}/${MYSQL_SIGN}
ln -s ${INSTALL_DIR}/${MYSQL_SIGN} ${INSTALL_DIR}/mysql
}
INSTALL
#安裝
CREATE_GRANT(){
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
mkdir ${INSTALL_DIR}/${MYSQL_SIGN}/mysql-files
chmod 750 ${INSTALL_DIR}/${MYSQL_SIGN}/mysql-files
chown mysql:mysql -R ${INSTALL_DIR}/${MYSQL_SIGN}
mkdir ${DATA_DIR}
chown mysql:mysql -R ${DATA_DIR}
cp my.cnf /etc/my.cnf
}
CREATE_GRANT
#創建數據文件夾與mysql-file文件夾并授予權限
INITIALIZE(){
${INSTALL_DIR}/mysql/bin/mysqld --initialize --user=mysql
${INSTALL_DIR}/mysql/bin/mysql_ssl_rsa_setup >/dev/null 2>&1
${INSTALL_DIR}/mysql/bin/mysqld_safe --user=mysql &
for i in `seq 10`
do
sleep 5
PORT=`netstat -anptu | grep 3306 | wc -l`
if [ ${PORT} -ne 0 ];then break ;fi
done
}
INITIALIZE
#初始化mysql并開啟ssl文件傳輸
UPDATA_PASS(){
AUTO_PASSWORD=`cat ${DATA_DIR}/error.log | grep password | awk '{print $NF}' | head -1`
${INSTALL_DIR}/mysql/bin/mysqladmin -uroot -p"${AUTO_PASSWORD}" password ${PASSWORD}
}
UPDATA_PASS
#修改自動生成密碼,修改后密碼在配置文件password項設置
CONTROL(){
cp ${INSTALL_DIR}/mysql/support-files/mysql.server /etc/init.d/mysql.server
}
#CONTROL
#mysql控制命令 可以直接啟動/重啟/停止mysql服務
總結
以上是生活随笔為你收集整理的mysql脚本简书,mysql一键安装脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 普通sql流程控制,【mys
- 下一篇: swoole client php,Sw