Lewati ke konten utama

Backup dan Restore di PostgreSQL

Pendahuluan

Backup dan restore adalah proses penting dalam manajemen database PostgreSQL. Backup digunakan untuk menyimpan salinan data sebagai langkah pencegahan, sedangkan restore digunakan untuk mengembalikan data dari backup jika terjadi kegagalan sistem atau kehilangan data.

Metode Backup

PostgreSQL menyediakan beberapa metode untuk melakukan backup:

  1. SQL Dump – Menggunakan pg_dump untuk mengekspor database dalam format SQL atau lainnya.
  2. File System Level Backup – Menyalin langsung file database PostgreSQL.
  3. Continuous Archiving dan Point-in-Time Recovery (PITR) – Menggunakan WAL (Write-Ahead Logging) untuk backup yang lebih kompleks.

Melakukan Backup

1. Backup Menggunakan pg_dump

Backup ini menghasilkan file SQL yang dapat digunakan untuk memulihkan database.

pg_dump -U nama_user -d nama_database -F c -f backup.sql
  • -U nama_user : Nama pengguna PostgreSQL.
  • -d nama_database : Nama database yang akan dibackup.
  • -F c : Format backup dalam bentuk custom.
  • -f backup.sql : Nama file hasil backup.

2. Backup Seluruh Database

Untuk membackup semua database dalam PostgreSQL, gunakan pg_dumpall:

pg_dumpall -U nama_user -f backup_all.sql

Melakukan Restore

1. Restore Menggunakan pg_restore

Jika backup dibuat menggunakan pg_dump dalam format custom, gunakan perintah berikut untuk merestorenya:

pg_restore -U nama_user -d nama_database -F c backup.sql

2. Restore Menggunakan psql

Jika backup dibuat dalam format SQL biasa, gunakan psql untuk merestorenya:

psql -U nama_user -d nama_database -f backup.sql

3. Restore Seluruh Database

Jika menggunakan pg_dumpall, restore dilakukan dengan perintah berikut:

psql -U nama_user -f backup_all.sql

Kesimpulan

Backup dan restore adalah bagian penting dalam administrasi PostgreSQL untuk menjaga integritas dan keamanan data. Memilih metode yang tepat bergantung pada kebutuhan dan skala sistem yang digunakan.