1. 程式人生 > >mysql資料庫匯入、mysqldump備份指令碼

mysql資料庫匯入、mysqldump備份指令碼

1,MySQL的資料庫批量匯入資料庫

#!/bin/bash

#msyql客戶端工具安裝

mysl_client=$(which mysql  |wc -l)
if [ $mysql_client != 1 ];then
        yum install mysql -y
fi

#列表顯示資料庫

databases_list =`mysql -uusername -ppassword -h ip_address -P 3306 -Bse'show databases'| grep -vE'(mysql | information_schema | performance_schema)'`

#批量匯入資料庫

for i in $
databases_list
do
mysql -uusername -ppassword -h ip_address -P 3306 --default-character-set = utf8mb4 $ {i} </ data / mysql_back / $ {i} .sql

done

註釋:/ data / mysql_back /存放自己匯入的sql檔案,要與資料建立的庫名一致。

2,MySQL資料庫mysqldump的備份資料庫

#!/bin/bash
#判斷msyql客戶端工具是否安裝
mysl_client=$(which mysql  |wc -l)
if [ $mysql_client != 1 ];then
        yum install mysql -y
fi
#備份時間


b=$(date +%Y_%m_%d_%H:%M)
#MySQL備份路徑
mkdir -p /data/mysql_bak/$b
#MySQL保留15天備份記錄
find /data/mysql_bak/ -type d -mtime +15 -exec rm -rf {} \; >/dev/null 2>&1

databases_list =`mysql -uusername -ppassword -h ip_address -P 3306-Bse'show databases'| grep -vE'(mysql | information_schema | performance_schema)'`
#遠端備份資料庫

for i in $databases_list
do

mysqldump-uusername -ppassword -h ip_address -P 3306--default-character-set = utf8mb4 --skip-lock-tables $ {i} |gzip> /data/mysql_bak/$b/${i}.sql.gz

done