Aracılığıyla paylaş


PostgreSQL için Azure Veritabanı Esnek yedeklemeleri geri yükleme (önizleme)

Bu makalede, Azure Backup tarafından yedeklenen bir Azure PostgreSQL -flex sunucusunun nasıl geri yükleneceği açıklanmaktadır.

Önkoşullar

  1. PostgreSQL için Azure Veritabanı Esnek sunucu yedeklemelerinden geri yüklemeden önce, geri yükleme işlemi için gerekli izinlere sahip olduğunuzdan emin olun.

  2. Yedekleme verileri, Yedekleme kasasında Microsoft kiracısında bir blob olarak depolanır. Geri yükleme işlemi sırasında yedekleme verileri kiracılar arasında bir depolama hesabından diğerine kopyalanır. Geri yükleme için hedef depolama hesabında AllowCrossTenantReplication özelliğinin true olarak ayarlandığından emin olun.

Azure PostgreSQL-Esnek veritabanını geri yükleme

Şu adımları izleyin:

  1. Yedekleme kasası>Yedekleme Örnekleri'ne gidin. Geri yüklenecek PostgreSQL-Flex sunucusunu ve ardından Geri Yükle'yi seçin.

    Veritabanının nasıl geri yükleneceği gösteren ekran görüntüsü.

    Alternatif olarak Yedekleme merkezi'ne gidip Geri Yükle'yi seçin.

  2. Geri yükleme noktasını seç'i kullanarak geri yüklemek istediğiniz noktayı seçin. Zaman aralığı'nı seçerek tarih aralığını değiştirin.

    Kurtarma noktası seçme işlemini gösteren ekran görüntüsü.

  3. Parametreleri geri yükle sekmesinde hedef depolama hesabını ve kapsayıcıyı seçin. Son gözden geçirme ve geri yükleme işleminden önce geri yükleme parametreleri izinlerini denetlemek için Doğrula'yı seçin.

  4. Doğrulama başarılı olduktan sonra Gözden Geçir + geri yükle'yi seçin. Geri yükleme parametresi işlemini gösteren ekran görüntüsü.

  5. Parametrelerin son gözden geçirilmesinden sonra, hedef depolama hesabında seçili PostgreSQL-Flex sunucu yedeklemesini geri yüklemek için Geri Yükle'yi seçin. gözden geçirme işlemi sayfasını gösteren ekran görüntüsü.

  6. Geri Yükleme işlemini gönderin ve Yedekleme işleri altında tetiklenen işi izleyin. İşlem doğrulama sayfasını gösteren ekran görüntüsü.

  7. İş tamamlandıktan sonra yedeklenen veriler depolama hesabına geri yüklenir. Geri yükleme işleminden sonra depolama hesabınızda kurtarılan dosya kümesi aşağıdadır:

    • İlk dosya, müşteriye yedeklemenin alındığı zamanı veren bir işaretçi veya zaman damgası dosyasıdır. Dosya geri yüklenemez, ancak bir metin düzenleyicisiyle açıldığında müşteriye yedeklemenin alındığı UTC saatini bildirmesi gerekir.

    • İkinci dosya veritabanı , pg_dump kullanılarak alınan tempdata2 adlı veritabanı için tek bir veritabanı yedeklemesidir. Her veritabanının biçiminde ayrı bir dosyası vardır: {backup_name}database{db_name}.sql

    • Üçüncü Dosya _roles. pg_dumpall kullanılarak yedeklenen roller var

    • Dördüncü dosya _schemas. pg_dumpall kullanılarak yedeklendi

    • Beşinci dosya _tablespaces. Tablo alanları pg_dumpall kullanılarak yedeklendi mi?

  8. Hedef depolama hesabına geri yükleme tamamlandıktan sonra, veritabanını ve diğer dosyaları PostgreSQL Esnek sunucusuna geri yüklemek için pg_restore yardımcı programını kullanabilirsiniz. Mevcut postgresql esnek sunucusuna ve mevcut veritabanına bağlanmak için aşağıdaki komutu kullanın

    az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file - | pg_restore -h <postgres-server-url> -p <port> -U <username> -d <database-name> -v -

    • --account-name: Hedef Depolama Hesabının adı.
    • --container-name: Blob kapsayıcısının adı.
    • --blob-name: Blobun adı.
    • --account-key: Depolama Hesabı Anahtarı.
    • -Fd: Dizin biçimi.
    • -j: İş sayısı.
    • -C: Veritabanının kendisini oluşturmak için çıkışı bir komutla başlatın ve sonra yeniden bağlanın.

    Geri yükleneceği birden fazla veritabanınız varsa, her veritabanı için önceki komutu yeniden çalıştırın.

    Ayrıca, birden çok eş zamanlı iş kullanarak -j, çok sanal çekirdekli hedef sunucuda büyük bir veritabanını geri yüklemek için gereken süreyi azaltabilirsiniz. İş sayısı, hedef sunucu için ayrılan vCPU sayısına eşit veya daha az olabilir.

  9. Diğer üç dosyayı (roller, şema ve tablo alanları) geri yüklemek için psql yardımcı programını kullanarak bunları PostgreSQL Esnek sunucusuna geri yükleyin.

    az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file - | psql -h <hostname> -U <username> -d <db name> -f <dump directory> -v -

    Her dosya için yukarıdaki komutu yeniden çalıştırın.

Sonraki adımlar

Azure Backup kullanarak PostgreSQL-Flex veritabanı yedeklemesi için destek matrisi.