Pencadangan dan Pemulihan Basis Data PostgreSQL
Perlindungan data dimulai dengan solusi hosting yang andal, terutama untuk mengelola database PostgreSQL yang penting. Server Khusus AlexHost menyediakan lingkungan yang ideal untuk hosting PostgreSQL, menawarkan kinerja yang kuat, akses root penuh, dan fitur keamanan tingkat lanjut untuk memastikan data Anda aman dan selalu dapat diakses. Dengan AlexHost, Anda dapat dengan mudah mengintegrasikan strategi pencadangan seperti dump SQL, pencadangan format khusus, dan pemulihan point-in-time untuk menjaga integritas basis data dan meminimalkan waktu henti.
Mencadangkan dan memulihkan basis data PostgreSQL sangat penting untuk memastikan integritas data dan meminimalkan waktu henti jika terjadi kehilangan data. Panduan ini akan memandu Anda melalui langkah-langkah untuk mencadangkan dan memulihkan database PostgreSQL menggunakan berbagai metode.
1. Memahami Opsi Pencadangan PostgreSQL
PostgreSQL menyediakan beberapa metode untuk mencadangkan data, termasuk:
- Pembuangan SQL (SQL Dump): Metode ini membuat skrip SQL teks biasa dari basis data, yang dapat digunakan untuk membuat ulang basis data.
- Dump Format Khusus: Metode ini membuat file biner yang dapat dikompresi dan cocok untuk database yang besar.
- Pencadangan Tingkat Sistem File: Metode ini melibatkan pengambilan snapshot dari file database pada disk, cocok untuk database yang besar namun membutuhkan keahlian lebih.
- Pengarsipan Berkelanjutan dan Pemulihan Titik Waktu (PITR): Metode ini memungkinkan Anda memulihkan database ke titik waktu tertentu.
2. Mempersiapkan Pencadangan
Sebelum melakukan pencadangan, pastikan Anda memiliki hak akses yang diperlukan. Anda harus menjadi pengguna super atau pemilik basis data yang ingin dicadangkan.
3. Mencadangkan Basis Data PostgreSQL
Metode 1: Menggunakan pg_dump
Utilitas pg_dump memungkinkan Anda untuk membuat cadangan basis data Anda.
Langkah 1: Buka Terminal
Akses server Anda melalui SSH atau secara langsung pada mesin.
Langkah 2: Jalankan Perintah pg_dump
Untuk membuat dump SQL dari basis data, gunakan perintah berikut:
pg_dump -U username -W -F p database_name > backup_file.sql
- -U nama pengguna: Tentukan nama pengguna PostgreSQL.
- -W: Meminta kata sandi.
- -F p: Tentukan format (skrip SQL biasa).
- database_name: Nama basis data yang ingin Anda cadangkan.
- backup_file.sql: Nama file keluaran untuk pencadangan.
Contoh:
pg_dump -U postgres -W -F p my_database > my_database_backup.sql
Metode 2: Menggunakan pg_dumpall
Jika Anda ingin mencadangkan semua basis data dalam instans PostgreSQL, Anda dapat menggunakan pg_dumpall:
pg_dumpall -U username -W > all_databases_backup.sql
4. Mencadangkan Menggunakan Format Khusus
Untuk membuat cadangan format khusus, gunakan opsi -F c dengan pg_dump:
pg_dump -U username -W -F c database_name > backup_file.dump
Format ini memungkinkan pemulihan dan kompresi yang lebih mudah.
5. Memulihkan Basis Data PostgreSQL
Metode 1: Memulihkan dari SQL Dump
Untuk memulihkan basis data dari dump SQL, gunakan perintah psql:
psql -U username -d database_name -f backup_file.sql
- -d database_name: Nama database tempat Anda ingin memulihkan data.
- backup_file.sql: Jalur ke file dump SQL.
Metode 2: Memulihkan dari Format Khusus
Untuk dump format khusus, gunakan perintah pg_restore:
pg_restore -U username -d database_name backup_file.dump
- Anda dapat menggunakan opsi -C untuk membuat basis data sebelum memulihkan jika tidak ada.
6. Menggunakan Pengarsipan Berkelanjutan dan Pemulihan Point-in-Time (PITR)
Untuk pengguna tingkat lanjut, PostgreSQL memungkinkan pengarsipan berkelanjutan, yang memerlukan konfigurasi WAL (Write-Ahead Logging). Metode ini melibatkan:
- Menyiapkan Pengarsipan WAL: Modifikasi file postgresql.conf untuk mengaktifkan pengarsipan WAL:
archive_mode = on archive_command = 'cp %p /path/to/archive/%f'
- Melakukan Pencadangan Dasar: Gunakan pg_basebackup untuk membuat cadangan penuh dari basis data.
- Memulihkan dari Arsip WAL: Anda dapat memulihkan basis data ke titik waktu tertentu menggunakan cadangan dasar dan file WAL yang diarsipkan.
7. Kesimpulan
Mencadangkan basis data PostgreSQL secara teratur sangat penting untuk perlindungan dan pemulihan data. Dengan mengikuti metode yang diuraikan dalam panduan ini, Anda bisa membuat cadangan secara efisien dan memulihkan basis data Anda saat dibutuhkan. Menerapkan strategi pencadangan yang solid akan memastikan integritas data Anda dan meminimalkan waktu henti jika terjadi kehilangan data.