Files
piaowu/doc/piaowudbbak.sh
T

35 lines
1.1 KiB
Bash
Raw Normal View History

2026-06-12 11:48:17 +08:00
#!/bin/bash
#ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'P0i8a1o9@#';
#ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'P0i8a1o9@#';
#FLUSH PRIVILEGES;
#chmod +x /mydata/docker/piaowu/mysql/piaowudbbak.sh
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR="/mydata/docker/piaowu/mysql/bak"
MYSQL_USER="root"
MYSQL_PASSWORD="P2i0a2o6w@u"
DATABASE_NAME="piaowu"
CONTAINER_NAME="piaowumysql" # 替换为你的MySQL容器名或ID
# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR
# 在MySQL容器内部执行 mysqldump 命令
docker exec $CONTAINER_NAME \
sh -c "exec mysqldump -u$MYSQL_USER -p'$MYSQL_PASSWORD' $DATABASE_NAME" > "$BACKUP_DIR/piaoruo_bak_$DATE.sql"
# 检查是否成功导出
if [ $? -eq 0 ]; then
echo "✅ 数据库备份成功: $BACKUP_DIR/piaowu_bak_$DATE.sql"
else
echo "❌ 数据库备份失败"
exit 1
fi
# 删除超过30天的旧备份
find $BACKUP_DIR -type f -name "*.sql" -mtime +30 -exec rm {} \;
#定时执行备份任务 cron
#0 1 * * * /mydata/docker/piaowu/mysql/piaowudbbak.sh >> /mydata/docker/piaowu/mysql/bak.log 2>&1