PostgreSQL adalah sistem database relasional objek open source yang canggih yang menggunakan dan memperluas bahasa SQL yang dikombinasikan dengan banyak fitur yang menyimpan dan menskalakan beban kerja data yang paling rumit dengan aman.
API pencadangan PostgreSQL yang digunakan oleh Pencadangan dan DR
Pencadangan tingkat volume (pelacakan blok perubahan Linux dan snapshot LVM): Pencadangan dan DR menggunakan perintah
pg_start_backup(label)
danpg_stop_backup()
PostgreSQL saat melakukan pencadangan dengan pelacakan blok perubahan Linux dan snapshot LVM.Pencadangan Full+Incremental (tradisional berbasis file): Pencadangan dan DR menggunakan perintah pencadangan berbasis file
pg_dump
PostgreSQL. Perintahpg_dump
tidak memiliki opsi untuk merekam perubahan inkremental database, sehingga setiap pencadangan adalah pencadangan dump database penuh.Pemulihan database akan memulihkan database dengan menimpa area data secara fisik.
Pencadangan log PostgreSQL: Selama pencadangan log, Pencadangan dan DR secara fisik menyalin semua WAL PostgreSQL (
WriteAheadLog
). Untuk menghapus log, Pencadangan dan DR menggunakan perintah tingkat OS.
Cara kerjanya: Pencadangan berbasis volume Backup and DR dengan CBT Linux
Hanya blok yang diubah yang dilacak dalam bitmap: tidak ada operasi salin-saat-tulis, tidak ada operasi yang intensif I/O.
Langkah-langkah berikut menjelaskan proses pencadangan dan pemulihan data:
Agen Pencadangan dan DR memiliki CBT untuk melacak blok yang diubah di area data database.
Agen memanggil API database untuk membekukan atau menjeda database untuk pencadangan data.
Agen membuat snapshot LVM dari area data database dan menyintesis bitmap.
Panggilan agen ke API database untuk mencairkan database.
Agen menyalin blok yang diubah ke perangkat pencadangan/pemulihan, yang kemudian menghapus snapshot dan membuat katalog pencadangan.
Appliance ini mengeluarkan snapshot internal dan menyintesis pencadangan penuh virtual point-in-time.
Untuk pemulihan data, Pencadangan dan DR langsung memasang disk staging yang dapat ditulis ulang dan mengaktifkan database secara online.
Perintah quiesce atau unquiesce dijalankan di utama untuk tugas snapshot level volume:
select pg_start_backup(<label>);
select pg_stop_backup();
Perintah quiesce dan unquiesce dijalankan di node standby untuk tugas snapshot tingkat volume:
Jika versi PostgreSQL adalah 10.x atau yang lebih baru:
select pg_wal_replay_pause();
select pg_wal_replay_resume();
Jika versi PostgreSQL adalah 9.x:
select pg_xlog_replay_pause();
select pg_xlog_replay_resume();
Cara kerjanya: pencadangan berbasis file
Langkah-langkah berikut menjelaskan proses cara melakukan pencadangan dan pemulihan data dengan image cadangan berbasis file:
Agen Pencadangan dan DR di-deploy di server database.
Pasang disk staging di server database.
Panggil pencadangan penuh menggunakan perintah pencadangan dump, yang menulis pencadangan ke disk yang terpasang.
Backup and DR mengambil snapshot internal. Pencadangan log dilakukan dengan cara yang serupa langsung dari sistem file pada jadwal apa pun yang Anda konfigurasikan.
Untuk pemulihan data, Pencadangan dan DR langsung memasang disk staging ke server database dan memulai operasi pemulihan database. Log dapat diputar ke titik waktu mana pun setelah database dipulihkan.
Langkah selanjutnya
Menyiapkan database untuk Cadangan dan DR
Dokumentasi lainnya untuk Pencadangan dan DR untuk PostgreSQL
- Cadangan dan DR untuk PostgreSQL
- Menyiapkan database untuk Cadangan dan DR
- Menambahkan host database PostgreSQL dan menemukan database
- Menentukan template kebijakan dan profil resource
- Menetapkan detail dan setelan aplikasi
- Memeriksa format disk staging dan metode pencadangan
- Melindungi database PostgreSQL dan log-nya
- Memasang database PostgreSQL
- Memulihkan Pencadangan PostgreSQL
- Membuat Alur Kerja Cadangan dan DR PostgreSQL