Shell多執行緒備份資料庫的指令碼
本指令碼來自有學習阿銘的博文學習:
我的每天要做的工作就要備份資料庫,需要涉及到Percona Xtrabackup,mysql資料庫中最良心的公司,解決了很多mysql資料庫的bug。廢話多說,開始指令碼
提示:本文中的S全部都$符
#!/bin/bash
#用途:Shell多執行緒備份資料庫的指令碼。
#作者:Caron maktini
#日期:2019年1月5日
#版本:v0.1
##假設100個資料庫的庫名、host、port以及配置檔案路徑儲存到了一個檔案下,檔案為/tmp/database.list
##格式:db1 10.1.1.2 3308 /data/mysql/db1/my.cnf
##備份資料庫使用的軟體是Percona Xtrabackup
exex &> /tmp/mysql_bak.log
if ! which innobackupex &> /dev/null
then
echo "安裝Xtrabackup工具 "
rpm -ivh xtrabackup.tar
yum install -y percona-xtrabackup-24
if [ $? -ne 0 ]
then
echo "安裝Xtrabackup工具,出現錯誤"
exit 1
fi
fi
bakdir=/data/backup/mysql
bakuser=admin
bakpass=administrator
function bak_data {
db_name=$1
db_host=$2
db_port=$3
cnf=$4
[ -d Sbakdir/Sdb_name ] || mkdir -p Sbakdir/$db_name
innobackupex --defaults-file=S4 --host=S2 --port = S3
--user=Sbakuser --password=Sbakpass Sbakdir
if [ $? -ne 0 ]
then
echo `備份資料庫$1出現問題`
fi
}
fifofile=/tmp/$$
mkfifo $fifofile
exec 1000<> $fifofile
thread=10
for (( i=0;i<$thread; i++))
do
echo >&1000
done
cat /tmp/databases.Iist | while read line
do
read -u1000
{
bak_data ` echo $line`
echo >&1000
}&
done
wait
exec 1000>&-
rm -f $fifofile
相關文章
- 11. shell多執行緒備份資料庫執行緒資料庫
- MySQL資料庫備份的shell指令碼MySql資料庫指令碼
- python使用多執行緒備份資料庫Python執行緒資料庫
- Liunx備份mysql資料庫的shell指令碼MySql資料庫指令碼
- 使用shell 指令碼備份資料指令碼
- 自動定時備份 mysql 資料庫 的 shell 指令碼MySql資料庫指令碼
- 資料庫備份指令碼資料庫指令碼
- 資料庫全備份指令碼資料庫指令碼
- Rman備份的shell指令碼指令碼
- 簡單的備份資料庫指令碼資料庫指令碼
- 《mysql資料庫備份小指令碼》MySql資料庫指令碼
- shell 多執行緒執行緒
- Oracle用指令碼執行備份Oracle指令碼
- 【博文推薦】用shell指令碼自動化備份資料庫指令碼資料庫
- oracle資料庫資料備份成文字的指令碼Oracle資料庫指令碼
- Mysql資料庫的簡單備份指令碼MySql資料庫指令碼
- 資料庫連結的備份指令碼(轉)資料庫指令碼
- rman備份的shell指令碼(例子)指令碼
- oracle資料庫使用rman備份指令碼Oracle資料庫指令碼
- Oracle多例項資料庫備份指令碼Oracle資料庫指令碼
- 《mysql資料庫備份小指令碼》(轉)MySql資料庫指令碼
- mysqldump來備份MYSQL資料庫(指令碼)MySql資料庫指令碼
- [shell進階]——shell多執行緒執行緒
- 執行shell指令碼指令碼
- 【Oracle指令碼】-很不錯的Windows下資料庫備份EXP指令碼Oracle指令碼Windows資料庫
- 恢復目錄資料庫備份指令碼資料庫指令碼
- mysql定時備份shell指令碼MySql指令碼
- ORACLE自動備份shell指令碼Oracle指令碼
- 執行Shell指令碼的方式指令碼
- shell模擬“多執行緒”執行緒
- Oracle用指令碼定時執行備份Oracle指令碼
- crontab執行shell指令碼指令碼
- Shell指令碼中執行sql語句操作MySQL資料庫的幾個方法指令碼MySql資料庫
- 案例:通過shell指令碼實現mysql資料備份與清理指令碼MySql
- Linux 平臺下 Oracle 資料泵備份(expdp) SHELL 指令碼LinuxOracle指令碼
- 同步寫兩個資料庫--多執行緒資料庫執行緒
- mysql多執行緒備份與還原工具mydumperMySql執行緒
- 課時7-備份與恢復----資料庫備份策略指令碼資料庫指令碼