Bagikan melalui


Fungsi JetBackupInstance

Berlaku untuk: Windows | Windows Server

Fungsi JetBackupInstance

Fungsi JetBackupInstance melakukan pencadangan streaming instans, termasuk semua database terlampir, ke direktori. Dengan beberapa metode pencadangan yang didukung oleh mesin, ini adalah fungsi yang paling sederhana dan paling terenkapsulasi.

Windows XP: JetBackupInstance diperkenalkan di Windows XP.

    JET_ERR JET_API JetBackupInstance(
      __in          JET_INSTANCE instance,
      __in          JET_PCSTR szBackupPath,
      __in          JET_GRBIT grbit,
      __in          JET_PFNSTATUS pfnStatus
    );

Parameter

Sebagai contoh

Instans database yang akan dicadangkan.

szBackupPath

Direktori tempat cadangan disimpan. Jika jalur cadangan NULL untuk menggunakan fungsi akan memotong log, jika memungkinkan.

grbit

Sekelompok bit yang menentukan nol atau lebih dari opsi berikut.

Value

Makna

JET_bitBackupAtomic

Membuat cadangan lengkap database. Ini memungkinkan pelestarian cadangan yang ada di direktori yang sama jika pencadangan baru gagal.

JET_bitBackupIncremental

Membuat cadangan inkremental dibandingkan dengan pencadangan penuh. Ini berarti bahwa hanya file log yang dibuat sejak pencadangan penuh atau bertahap terakhir yang akan dicadangkan.

JET_bitBackupSnapshot

Disiapkan untuk penggunaan masa mendatang.

pfnStatus

Penunjuk ke fungsi panggilan balik JET_PFNSTATUS , yang menyediakan informasi pemberitahuan tentang kemajuan operasi pencadangan.

Tampilkan Nilai

Fungsi ini mengembalikan jenis data JET_ERR dengan salah satu kode pengembalian berikut. Untuk informasi selengkapnya tentang kemungkinan kesalahan ESE, lihat Kesalahan Mesin Penyimpanan yang Dapat Diperluas dan Parameter Penanganan Kesalahan.

Mengembalikan kode

Deskripsi

JET_errSuccess

Operasi berhasil diselesaikan.

JET_errBackupInProgress

Pencadangan sudah berlangsung untuk instans yang sama. Beberapa cadangan tidak diperbolehkan secara bersamaan.

JET_errBackupNotAllowedYet

Instans belum siap untuk pencadangan karena sedang diinisialisasi.

JET_errClientRequestToStopJetService

Operasi tidak dapat diselesaikan karena semua aktivitas pada instans yang terkait dengan sesi telah berhenti sebagai akibat dari panggilan ke JetStopServiceInstance.

JET_errInstanceUnavailable

Operasi tidak dapat diselesaikan karena instans yang terkait dengan sesi mengalami kesalahan fatal yang mengharuskan akses ke semua data dicabut untuk melindungi integritas data tersebut.

Windows XP: Nilai pengembalian ini diperkenalkan di Windows XP.

JET_errInvalidBackup

Pencadangan inkremental tidak diperbolehkan jika pengelogan melingkar aktif.

JET_errInvalidGrbit

Opsi yang ditentukan tidak valid.

JET_errInvalidParameter

Parameter yang tidak valid diteruskan ke API.

JET_errInvalidPath

Jalur tujuan tidak ada.

JET_errLoggingDisabled

Instans berjalan tanpa pengelogan. Tidak ada cadangan yang diperbolehkan.

JET_errLogReadVerifyFailure

Terjadi kesalahan verifikasi checksum pada file log.

JET_errLogWriteFail

Pengelogan untuk instans bersifat sementara atau dinonaktifkan secara permanen karena kesalahan yang tidak terduga.

JET_errNotInitialized

Operasi tidak dapat diselesaikan karena instans yang terkait dengan sesi belum diinisialisasi.

JET_errReadVerifyFailure

Terjadi kesalahan verifikasi checksum pada halaman database.

JET_errRestoreInProgress

Operasi tidak dapat diselesaikan karena operasi pemulihan sedang berlangsung pada instans yang terkait dengan sesi.

JET_errSessionSharingViolation

Sesi yang sama tidak dapat digunakan untuk lebih dari satu utas secara bersamaan.

Windows XP: Nilai pengembalian ini diperkenalkan di Windows XP.

JET_errTermInProgress

Operasi tidak dapat diselesaikan karena instans yang terkait dengan sesi sedang dimatikan.

Setelah fungsi mengembalikan keberhasilan, di direktori cadangan semua file yang diperlukan untuk pemulihan hingga saat cadangan akan ada. Jika ini adalah cadangan penuh, file akan menjadi file database dan file log yang diperlukan untuk membawa database ke status yang konsisten. Jika ini adalah cadangan inkremental, hanya file log yang akan ditambahkan ke direktori tetapi file yang sudah ada (database dan file log) bersama dengan file log baru akan dapat dipulihkan dan membawa database kembali ke status pada saat pencadangan.

Sebagai efek samping dari cadangan, file log yang tidak lagi diperlukan akan dipotong.

Pada saat yang sama, header database akan diperbarui dengan informasi ketika pencadangan terakhir terjadi.

Jika gagal, tidak akan ada file apa pun di tujuan direktori cadangan sehingga tidak ada pemulihan yang dimungkinkan. Pada saat yang sama, file log saat ini tidak akan dipotong.

Keterangan

Langkah-langkah cadangan yang berbeda akan memiliki entri Log Peristiwa yang dihasilkan termasuk nama file, pemotongan log, dan hasil akhir cadangan.

Pencadangan bertahap dimungkinkan hanya setelah pencadangan penuh diambil. Selain itu, pencadangan bertahap hanya dimungkinkan jika pengelogan melingkar dimatikan. Disarankan agar direktori cadangan tidak boleh berisi file lain kemudian yang terlibat dalam cadangan atau ditambahkan oleh cadangan yang berhasil sebelumnya.

Direktori cadangan harus ada kecuali parameter JET_paramCreatePathIfNotExist diatur untuk instans. Untuk informasi, lihat Parameter Sistem.

Cadangan akan melakukan verifikasi checksum pada semua halaman database yang digunakan dan dimulai dengan Windows Server 2003, pada file log juga. Ini memberikan kesempatan untuk memperkirakan kesehatan database bahkan untuk halaman yang tidak dibaca selama operasi normal. Jika terjadi kerusakan seperti itu, pencadangan akan gagal.

Selama pencadangan, file log saat ini akan selesai dan kami akan memulai pembuatan log baru. Ini akan memungkinkan penyalinan file log yang diperlukan karena yang terakhir diperlukan tidak akan digunakan lagi.

Sangat disarankan agar cadangan tidak boleh digunakan untuk tujuan lain selain cadangan dan dipulihkan di tingkat mesin. Ini akan meminimalkan perubahan mendapatkan kesalahan selama operasi pencadangan dan pemulihan.

Persyaratan

Persyaratan Value

Klien

Memerlukan Windows Vista atau Windows XP.

Server

Memerlukan Windows Server 2008 atau Windows Server 2003.

Header

Dinyatakan dalam Esent.h.

Pustaka

Gunakan ESENT.lib.

DLL

Memerlukan ESENT.dll.

Unicode

Diimplementasikan sebagai JetBackupInstanceW (Unicode) dan JetBackupInstanceA (ANSI).

Lihat Juga

JET_ERR
JET_GRBIT
JET_INSTANCE
JET_PFNSTATUS
JetRestore
JetRestore2
JetRestoreInstance
JetStopServiceInstance
Parameter Sistem