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資料庫指令碼
- 資料庫備份指令碼資料庫指令碼
- oracle資料庫使用rman備份指令碼Oracle資料庫指令碼
- 執行shell指令碼指令碼
- SQL Server2019資料庫備份與還原指令碼,資料庫可批量備份SQLServer資料庫指令碼
- bash shell多執行緒方案執行緒
- MySQL 官方出品,比 mydumper 更快的多執行緒邏輯備份工具-MySQL Shell Dump & LoadMySql執行緒
- 案例:通過shell指令碼實現mysql資料備份與清理指令碼MySql
- 資料庫單表備份還原shell資料庫
- Linux shell:執行shell指令碼的幾種方式Linux指令碼
- mysql多執行緒備份與還原工具mydumperMySql執行緒
- Mysqldump備份說明及資料庫備份指令碼分享-運維筆記MySql資料庫指令碼運維筆記
- KOSQL Server2019資料庫備份與還原指令碼(批量備份)zrbSQLServer資料庫指令碼
- shell 備份檔案指令碼+自動清理指令碼
- Mysql定時備份資料指令碼MySql指令碼
- 比特幣原始碼分析:多執行緒檢查指令碼比特幣原始碼執行緒指令碼
- MOGDB/openGauss資料庫gs_dump備份指令碼及清理資料庫指令碼
- [SQLServer]NetCore中將SQLServer資料庫備份為Sql指令碼SQLServerNetCore資料庫指令碼
- Mac 終端執行 shell 指令碼Mac指令碼
- mysqldump壓縮備份匯出匯入(含定期備份shell指令碼)MySql指令碼
- springboot配置執行緒池使用多執行緒插入資料Spring Boot執行緒
- DM聯機執行SQL語句進行資料庫備份SQL資料庫
- shell指令碼linux命令連續執行指令碼Linux
- 通過shell指令碼批量操作mysql資料庫指令碼MySql資料庫
- python 建立mysql資料庫腳(執行sql)指令碼程式碼PythonMySql資料庫指令碼
- 備份指令碼指令碼
- MySQL:Windows下分庫備份指令碼MySqlWindows指令碼
- [20231023]生成bbed的執行指令碼(bash shell).txt指令碼
- 基於python的ftp(含資料庫、含多執行緒、含socketserver)PythonFTP資料庫執行緒Server
- 資料庫備份資料庫
- Linux系統配置檔案簡易shell備份指令碼Linux指令碼
- DM7使用離線工具DMRMAN執行資料庫備份資料庫
- shell指令碼執行錯誤 $‘\r‘:command not found指令碼