diff --git a/scripts/backup/sam-db-backup.sh b/scripts/backup/sam-db-backup.sh index 893e2de..e2b7c3b 100755 --- a/scripts/backup/sam-db-backup.sh +++ b/scripts/backup/sam-db-backup.sh @@ -47,23 +47,37 @@ ensure_dirs() { mkdir -p "$DAILY_DIR" "$WEEKLY_DIR" "$LOG_DIR" } +create_mycnf() { + local tmp_cnf + tmp_cnf=$(mktemp /tmp/.my.cnf.XXXXXX) + chmod 600 "$tmp_cnf" + cat > "$tmp_cnf" <>"$LOG_FILE" | gzip > "$output_file"; then + rm -f "$mycnf" local file_size file_size=$(stat -f%z "$output_file" 2>/dev/null || stat -c%s "$output_file" 2>/dev/null || echo 0) @@ -91,6 +105,7 @@ backup_database() { return 0 else + rm -f "$mycnf" log "ERROR" "mysqldump 실패: ${db_name}" ERRORS+=("${db_name}: mysqldump 실패") DB_RESULTS+=("{\"db\":\"${db_name}\",\"file\":\"\",\"size_bytes\":0,\"status\":\"dump_error\"}")