Memulihkan cluster AlloyDB Omni menggunakan Barman

Pilih versi dokumentasi:

Halaman ini menunjukkan cara memulihkan cluster AlloyDB Omni menggunakan cadangan yang dibuat dengan Barman, server pencadangan database open source.

Karena AlloyDB Omni kompatibel dengan PostgreSQL, perintah dan teknik pemulihan data yang dijelaskan dalam manual Barman juga berlaku untuk AlloyDB Omni. Halaman ini menunjukkan pilihan tugas pemulihan umum, dengan contoh perintah yang relevan.

Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi Barman agar dapat digunakan dengan AlloyDB Omni, lihat Menyiapkan Barman untuk AlloyDB Omni.

Sebelum memulai

Sebelum memulihkan data AlloyDB Omni, Anda memerlukan hal berikut:

  • Server database target, yang menjalankan versi utama AlloyDB Omni yang sama dengan server database sumber. Untuk mengetahui informasi selengkapnya tentang cara menginstal AlloyDB Omni, lihat Menginstal AlloyDB Omni.

  • Utilitas rsync, yang diinstal di server target.

  • Server cadangan Barman, dengan minimal satu cadangan Barman yang valid dari database AlloyDB Omni sumber di dalamnya.

  • Konektivitas SSH antara server cadangan Barman dan server target.

  • Kunci SSH disiapkan untuk mengizinkan pengguna barman di server Barman mengautentikasi dengan server target sebagai pengguna postgres tanpa sandi.

  • Ruang disk kosong yang cukup di server target untuk menyimpan database yang dipulihkan.

Memulihkan menggunakan cadangan tertentu

  1. Di server target, hentikan AlloyDB Omni:

       sudo systemctl stop alloydbomni18
  2. Di server Barman, pilih cadangan yang akan dipulihkan. Untuk melihat cadangan yang tersedia, jalankan perintah barman list-backups. Untuk melihat detail tentang cadangan tertentu, jalankan perintah barman show-backup.

  3. Untuk memulihkan cadangan yang dipilih ke server AlloyDB Omni target, jalankan perintah barman recover.

    Saat menjalankan perintah, sertakan hal berikut:

    Perintah berikut menunjukkan contoh penggunaan barman recover dengan AlloyDB Omni:

    barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID DATA_PATH

    Ganti kode berikut:

    • TARGET_IP: alamat IP server target.

    • TARGET_LABEL: label yang Anda tetapkan ke server dalam file konfigurasi Barman.

    • BACKUP_ID: ID cadangan yang akan dipulihkan, yang diidentifikasi pada langkah sebelumnya—misalnya, 20230810T210200.

    • DATA_PATH: jalur ke subdirektori data dari direktori data server target—misalnya, /home/your-username/alloydb-data/data/18.

  1. Di server database target AlloyDB Omni, mulai layanan:

    sudo systemctl start alloydbomni18

Setelah layanan dimulai ulang, hubungkan ke server AlloyDB Omni Anda. Anda akan melihat database dan data yang dipulihkan.

Memulihkan ke titik waktu tertentu

Untuk melakukan pemulihan point-in-time, ikuti langkah-langkah yang sama yang tercantum di bagian sebelumnya, dengan satu modifikasi. Saat menjalankan perintah barman recover, Anda juga harus menentukan salah satu opsi pemulihan point-in-time Barman.

Perintah berikut menunjukkan contoh penggunaan barman recover dengan AlloyDB Omni dengan opsi pemulihan point-in-time:

barman recover --remote-ssh-command "ssh postgres@TARGET_IP" TARGET_LABEL BACKUP_ID --target-time="TARGET_TIMESTAMP" DATA_PATH

Ganti kode berikut:

  • TARGET_IP: alamat IP server target.

  • TARGET_LABEL: label yang Anda tetapkan ke server dalam file konfigurasi Barman.

  • BACKUP_ID: ID cadangan yang akan dipulihkan, yang diidentifikasi pada langkah sebelumnya—misalnya, 20230810T210200.

  • TARGET_TIMESTAMP: waktu untuk memulihkan, dalam format PostgreSQL timestamp yang menentukan tanggal dan waktu—misalnya, 2024-02-06 00:00:00.

  • DATA_PATH: jalur ke subdirektori data dari direktori data server target—misalnya, /home/your-username/alloydb-data/data/18.