Langkah 1: Identifikasi Container PostgreSQL
Gunakan perintah docker ps untuk menemukan container PostgreSQL:
docker ps
Catat CONTAINER ID atau NAMES dari container PostgreSQL.
Langkah 2: Backup Semua Database
Gunakan docker exec untuk menjalankan pg_dumpall di dalam container:
docker exec -t <CONTAINER_ID_OR_NAME> pg_dumpall -U <username> > backup_all_databases_$(date +%Y%m%d_%H%M%S).sql
Di sini, <CONTAINER_ID_OR_NAME> adalah ID atau nama container PostgreSQL Anda, dan <username> adalah nama pengguna untuk PostgreSQL.
Langkah 3: Menyimpan Backup di Lokasi yang Aman
Simpan backup di lokasi di luar container untuk keamanan, contoh:
docker exec -t <CONTAINER_ID_OR_NAME> pg_dumpall -U <username> > /path/ke/backup/di/host/backup_all_databases_$(date +%Y%m%d_%H%M%S).sql
/path/ke/backup/di/host adalah lokasi di host di mana Anda ingin menyimpan file backup.
Langkah 4: Verifikasi Backup
Setelah backup dibuat, Anda bisa menguji restore-nya dengan membuat container baru atau menggunakan container yang ada untuk restore semua database:
cat backup_all_databases_20241209_080000.sql | docker exec -i <CONTAINER_ID_OR_NAME> psql -U <username> postgres
postgres di sini adalah database default tempat psql akan menjalankan query. Ini akan menginisiasi restore semua database dari file backup.
Catatan: Pastikan pengguna yang Anda gunakan (<username>) memiliki izin yang cukup untuk mengakses semua database yang akan di-backup. Juga, file backup bisa sangat besar jika Anda memiliki banyak database atau data dalam jumlah besar.
Tidak ada komentar:
Posting Komentar