Bagikan melalui


Bekerja dengan Lokasi Alternatif selama Pemulihan

Ada banyak alasan mengapa pemohon tidak boleh, atau mungkin tidak, dapat memulihkan file dari media cadangan ke lokasi aslinya. Misalnya, metode atau target pemulihan mungkin memerlukan pemulihan seperti itu, atau lokasi pemulihan saat ini mungkin ditempati dan tidak dapat ditulis.

Untuk menangani kasus tersebut, penulis mungkin telah menentukan pemetaan lokasi alternatif, tujuan pemulihan nonstandar yang akan digunakan untuk keadaan khusus.

Istilah pemetaan lokasi alternatif, seperti yang digunakan dengan VSS, tidak boleh dikacaukan dengan istilah jalur alternatif. Pemetaan lokasi alternatif hanya digunakan selama operasi pemulihan, dan merujuk ke tujuan alternatif untuk operasi pemulihan. Jalur alternatif hanya digunakan selama operasi pencadangan, dan merujuk ke sumber alternatif untuk mencadangkan.

Untuk menggunakan pemetaan lokasi alternatif selama pemulihan, pemohon akan melakukan hal berikut (biasanya mengikuti pembuatan peristiwa PreRestore ):

  1. Menggunakan instans antarmuka IVssExamineWriterMetadata yang diperoleh dengan mengambil penulis tersimpan, pemohon menggunakan metode IVssExamineWriterMetadata::GetAlternateLocationMapping untuk mendapatkan pemetaan lokasi alternatif penulis sebagai instans antarmuka IVssWMFiledesc .

    Catatan

    Pemohon menggunakan IVssExamineWriterMetadata::GetAlternateLocationMapping, bukan IVssComponent::GetAlternateLocationMapping. Yang pertama mengembalikan pemetaan lokasi alternatif yang tersedia untuk digunakan oleh pemohon. Yang terakhir digunakan untuk menunjukkan pemetaan lokasi alternatif yang benar-benar digunakan oleh pemohon.

     

  2. Panggilan ke IVssExamineWriterMetadata::GetAlternateLocationMapping mengembalikan instans antarmuka IVssWMFiledesc . Instans ini berisi informasi set file—jalur yang ditentukan oleh IVssWMFiledesc::GetPath, spesifikasi file yang dikembalikan melalui IVssWMFiledesc::GetFilespec, dan bendera rekursi yang diperoleh dari IVssWMFiledesc::GetRecursive—cocok dengan salah satu set file yang ditambahkan (menggunakan IVssCreateWriterMetadata::AddDatabaseFiles, IVssCreateWriterMetadata::AddDatabaseLogFiles, atau IVssCreateWriterMetadata::AddFilesToFileGroup ) ke salah satu komponen yang dikelola oleh penulis.

    Nilai yang dikembalikan oleh IVssWMFiledesc::GetAlternateLocation adalah pemetaan lokasi alternatif untuk kumpulan file ini.

  3. Pemetaan lokasi alternatif tidak berisi informasi komponen, sehingga perlu untuk membandingkan informasi set file (jalur, spesifikasi file, dan bendera rekursi) yang diperoleh dengan memanggil IVssExamineWriterMetadata::GetAlternateLocationMapping dengan yang dimuat oleh komponen penulis.

    Informasi ini dapat ditemukan dengan melakukan iterasi atas komponen penulis dan memanggil IVssExamineWriterMetadata::GetComponent untuk mendapatkan instans antarmuka IVssWMComponent dan menggunakan IVssWMComponent::GetFile untuk mendapatkan instans IVssWMFiledesc yang berisi informasi kumpulan file komponen.

    Ketika informasi kumpulan file yang dikembalikan oleh instans IVssWMFiledesc yang diperoleh dari IVssExamineWriterMetadata::GetComponent dan IVssWMComponent::GetFile cocok dengan instans IVssWMFiledesc yang berasal dari IVssWMFiledesc::GetAlternateLocation, komponen yang mengelola file dengan pemetaan lokasi alternatif tertentu telah ditemukan.

  4. Setelah menemukan komponen, pemohon dapat menentukan kondisi di mana pemetaan lokasi alternatif harus digunakan dengan melakukan hal berikut:

  5. Dengan informasi ini, pemohon dapat menentukan berdasarkan komponen demi komponen jika perlu memulihkan kumpulan file tertentu dari komponen tertentu ke tujuan yang ditentukan oleh pemetaan lokasi alternatif.

  6. Saat menggunakan pemetaan lokasi alternatif, pemohon menghormati deskriptor file set file dan bendera rekursif dan menggunakan jalur yang disediakan oleh pemetaan lokasi alternatif.

    Pemohon menunjukkan bahwa pemetaan lokasi alternatif telah digunakan selama operasi pemulihan dengan memanggil IVssBackupComponents::AddAlternativeLocationMapping dengan informasi lokasi default kumpulan file, tujuan pemulihan alternatif yang digunakan, dan nama komponen.

    Jika kumpulan file dikelola oleh komponen yang secara eksplisit disertakan dalam cadangan, nama komponen tersebut akan digunakan. Jika kumpulan file dikelola oleh komponen yang secara implisit disertakan dalam cadangan, maka nama yang digunakan adalah komponen yang menentukan kumpulan komponen yang komponennya mengelola kumpulan file adalah subkomponen.

Penulis memverifikasi apakah kumpulan file dari salah satu komponennya dipulihkan ke pemetaan lokasi alternatif dengan memanggil IVssComponent::GetAlternateLocationMapping.