先確認路徑
# find / -name mysqldump
/usr/lib/mysql-workbench/mysqldump
nano backup_db.sh
#!/bin/sh
#DUMP=/usr/lib/mysql-workbench/mysqldump
OUT_DIR=/web/bak
HOST=localhost
LINUX_USER=leeyc
DB_NAME=phpbb3
DB_USER=leeyc
DB_PASS=leeycpwd
DATE=phpbb3_$(date +%Y%m%d_%H%M).sql
TAR=phpbb3_$(date +%Y%m%d_%H%M).tar.gz
OUT_SQL=$OUT_DIR/$DATE
#$DUMP -h$HOST -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables > $OUT_SQL
docker exec -i mysql55 mysqldump -u$DB_USER -p$DB_PASS $DB_NAME > $OUT_SQL
cd /web/bak
tar zcvf $TAR $DATE
chown $LINUX_USER:$LINUX_USER $TAR
rm -rf $DATE
用root權限設定
# crontab -e
# m h dom mon dow command
10 12 * * * /web/backup_db.sh
DB 轉入
# docker exec -i mysql55 mysql -uroot -prootpasswd centerdb < centerdb20201005.sql
bak_endia_sql.sh
#!/bin/sh
OUT_DIR=/web/ww1/bak
LINUX_USER=leeyc
DB_NAME=endia
DB_USER=leeyc
DB_PASS=leeycpwd
DATE=endia_$(date +%Y%m%d_%H%M).sql
TAR=endia_$(date +%Y%m%d_%H%M).tar.gz
OUT_SQL=$OUT_DIR/$DATE
docker exec -i mysql55 mysqldump -u$DB_USER -p$DB_PASS $DB_NAME > $OUT_SQL
cd /web/ww1/bak
tar zcvf $TAR $DATE
chown $LINUX_USER:$LINUX_USER $TAR
rm -rf $DATE
find /web/ww3/bak -type f -name "*.gz" -mtime +20 -exec rm -rf {} \;