Friday, January 30, 2026

export import mysql di podman ubuntu server

 

1. Skrip Export (export_volume.sh)

Gunakan ini di server asal untuk membungkus folder data.

Bash
#!/bin/bash
CONTAINER_NAME="psmysql"
DB_DATA_DIR="$HOME/mysql"
BACKUP_DIR="$HOME/volume_backup"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)

# Buat folder backup jika belum ada
[[ ! -d "$BACKUP_DIR" ]] && mkdir -p "$BACKUP_DIR"

echo "📦 Archiving volume dari $DB_DATA_DIR..."
podman unshare tar -czf "$BACKUP_DIR/psmysql_$TIMESTAMP.tar.gz" -C "$DB_DATA_DIR" .

echo "✅ Selesai: $BACKUP_DIR/psmysql_$TIMESTAMP.tar.gz"

2. Skrip Import (import_volume.sh)

Gunakan ini di server tujuan untuk mengekstrak data.

Bash
#!/bin/bash
DB_DATA_DIR="$HOME/mysql"
BACKUP_DIR="$HOME/volume_backup"

# Cari file terbaru
LATEST_BACKUP=$(ls -t $BACKUP_DIR/*.tar.gz 2>/dev/null | head -1)

if [[ -z "$LATEST_BACKUP" ]]; then
    echo "❌ File backup tidak ditemukan di $BACKUP_DIR"; exit 1
fi

echo "📦 Import file: $(basename $LATEST_BACKUP)"
read -p "Lanjutkan? (y/n): " CONFIRM
[[ $CONFIRM != "y" ]] && exit 0

# Eksekusi
rm -rf "$DB_DATA_DIR" && mkdir -p "$DB_DATA_DIR"
podman unshare tar -xzvf "$LATEST_BACKUP" -C "$DB_DATA_DIR"
podman unshare chown -R 1001:1001 "$DB_DATA_DIR"

echo "✅ Import selesai. Silakan jalankan startmysql.sh"

No comments:

Post a Comment