From 729b7a9cd4c64ffad6c27f501a86580311a7163e Mon Sep 17 00:00:00 2001 From: "zhangkun9038@dingtalk.com" Date: Thu, 11 Jan 2024 12:30:54 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E5=90=AFdocker=20mysql=20=E5=8A=A0?= =?UTF-8?q?=E4=B8=8A=E5=88=A4=E6=96=AD=EF=BC=8C=E9=98=B2=E6=AD=A2docker?= =?UTF-8?q?=E8=BF=98=E6=B2=A1=E8=BF=90=E8=A1=8C=E5=AE=8C=E5=B0=B1=E6=89=A7?= =?UTF-8?q?=E8=A1=8C=E4=B8=8B=E9=9D=A2=E7=9A=84=E8=AF=AD=E5=8F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backUpDB.sh | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/backUpDB.sh b/backUpDB.sh index 4d7685b..32d3d4b 100755 --- a/backUpDB.sh +++ b/backUpDB.sh @@ -11,18 +11,29 @@ hostName=$(echo $HOSTNAME) PATH=PATH:/usr/bin:/usr/sbin:/usr/local/bin +check_port() { + nc -z -w5 $dbHost $dbPort +} cd /tmp -rm ${hostName}_${dbName}.sql_bak3.tar.gz || true -mv ${hostName}_${dbName}.sql_bak2.tar.gz ${dbName}.sql_bak3.tar.gz || true -mv ${hostName}_${dbName}.sql_bak1.tar.gz ${dbName}.sql_bak2.tar.gz || true -mv ${hostName}_${dbName}.sql.tar.gz ${dbName}.sql_bak1.tar.gz || true +rm ${hostName}_${dbName}.sql_bak3.tar.gz -f || true +mv ${hostName}_${dbName}.sql_bak2.tar.gz ${dbName}.sql_bak3.tar.gz -f || true +mv ${hostName}_${dbName}.sql_bak1.tar.gz ${dbName}.sql_bak2.tar.gz -f || true +mv ${hostName}_${dbName}.sql.tar.gz ${dbName}.sql_bak1.tar.gz -f || true sed -i 's/lower_case_table_names=1/lower_case_table_names=0/g' /root/mysql/conf/append.cnf -docker restart maria -/usr/bin/mysqldump -R --opt --protocol=TCP --user=${dbUser} --password=${dbPassword} --host=${dbHost} --port=${dbPort} ${dbName} > ${hostName}_${dbName}.sql +if check_port; then + echo "端口 $dbPort 是活跃的,一切正常。" +else + echo "警告:端口 $dbPort 不活跃,请检查数据库连接。" + docker restart maria + sleep 10 +fi +/usr/bin/mysqldump -R --opt --protocol=TCP --user="${dbUser}" --password="${dbPassword}" --host="${dbHost}" --port=${dbPort} ${dbName} > /tmp/${hostName}_${dbName}.sql sed -i 's/lower_case_table_names=0/lower_case_table_names=1/g' /root/mysql/conf/append.cnf -docker restart maria + + + rm sql -fr || true mkdir sql mv ${hostName}_${dbName}.sql sql @@ -30,4 +41,4 @@ tar -czvf ${hostName}_${dbName}.sql.tar.gz sql cp /tmp/${hostName}_${dbName}.sql.tar.gz ${backUpPath} -f #echo "ossPath: "${ossPath} -#ossutil cp ${dbName}.sql.tar.gz oss://${ossPath}/ -f +#ossutil cp ${dbName}.sql.tar.gz oss://${ossPath}/ -