Yerinde geri yükleme

Bu sayfada, yedekteki verilerin, yedeğin kaynak veritabanasıyla aynı ada sahip bir veritabanına nasıl geri yükleneceği açıklanmaktadır. Bu sayfayı okumadan önce Verileri yedekleme ve geri yükleme hakkında bilgi sahibi olmanız gerekir.

Yerinde geri yükleme

Yerinde geri yükleme, bir veritabanını yedekten, yedeği oluşturan kaynak veritabanına geri yüklemenize olanak tanır. Bu işlem sırasında orijinal veritabanı varlığını sürdürür. Yerinde geri yükleme, trafiği yeniden yönlendirmekten veya farklı bir ada sahip veritabanı oluşturmaktan kaçınmanıza yardımcı olur.

Geri yükleme işleminde, henüz mevcut olmayan bir hedef veritabanı kullanılmalıdır. Ancak kaynak veritabanını silip yedekten geri yükleyerek kaynak veritabanasıyla aynı ada sahip yeni bir veritabanı oluşturarak yerinde geri yükleme işlemini simüle edebilirsiniz.

Yerinde geri yükleme gerçekleştirme

Yerinde geri yükleme işlemi gerçekleştirmek için aşağıdaki adımları uygulayın:

  1. Geri yükleme işleminde kullanılacak yedeği belirleyin.
  2. Mevcut veritabanını silin.
  3. Geri yükleme işlemini tamamlamak için yedeği ve silinen veritabanının veritabanı kimliğini kullanın.

Başlamadan önce

Yerinde geri yükleme işlemine başlamadan önce aşağıdaki adımları tamamlamanızı öneririz:

  1. Sileceğiniz veritabanındaki verileri dışa aktarın.

    Silinen veritabanını kurtarmanız gerekiyorsa dışa aktarma işleminden verileri içe aktarın. Silinen veritabanını aynı veritabanı kimliğiyle kurtarmak için çalışan geri yükleme işlemlerinin tamamlanmasını bekleyip şunları yapmanız gerekir:

    1. Veritabanı kimliğiyle mevcut veritabanını silin ve en az 5 dakika bekleyin.
    2. Veritabanı kimliğiyle yeni bir veritabanı oluşturun.
    3. İçe aktarma işlemi başlatma
  2. Veritabanınızın dizin yapılandırmasını alın ve kopyalayın. Dışa aktarma işlemleri dizin tanımlarını yakalamaz. Yerinde geri yükleme işlemini tamamladıktan sonra dizinleri yeniden oluşturmak için dizin yapılandırmasını kullanın. Veritabanınızın dizin yapılandırmasını almak için aşağıdaki komutları kullanın:

    • Birleşik dizinlerin listesini almak için gcloud firestore indexes composite list kullanın:

      gcloud firestore indexes composite list --database=DATABASE_ID
      

      DATABASE_ID yerine veritabanınızın kimliğini yazın.

    • Tek alanlı (yerleşik) dizin muafiyetlerinin listesini almak için gcloud firestore indexes fields list kullanın.

      gcloud firestore indexes fields list --database=DATABASE_ID
      

Yerinde geri yükleme gerçekleştirme

Yerinde geri yükleme işlemi gerçekleştirmek için aşağıdaki adımları tamamlayın. Bu işlem, veritabanını sildiğiniz an ile geri yükleme işleminin tamamlandığı an arasında kapalı kalma süresi gerektirir.

Geri yükleme işlemi başladıktan sonra işlemi iptal edemezsiniz ve işlemin tamamlanmasını beklemeniz gerekir. Geri yükleme işlemi, işlemde kullanılan veritabanı kimliğini hemen kullanmaya başlar.

  1. Geri yükleme işleminde kullanılacak yedeği belirlemek için gcloud alpha firestore backups list komutunu kullanın ve kaynak adını not edin. Kaynak adı aşağıdaki biçimi kullanır:

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. Mevcut veritabanını silmek için gcloud firestore databases delete komutunu kullanın:

        gcloud firestore databases delete --database='DATABASE_ID'
    

    DATABASE_ID yerine veritabanı kimliğini yazın.

  3. Veritabanını sildikten sonra veritabanı kimliğinin tekrar kullanılabilir hâle gelmesi için en az 5 dakika bekleyin. gcloud alpha firestore databases restore komutunu kullanarak geri yükleme işlemi başlatın:

    gcloud alpha firestore databases restore \
    --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \
    --destination-database='DATABASE_ID'
    

    DATABASE_ID yerine veritabanı kimliğini yazın.

Sırada ne var?