Hai
Saya akan terus menjelaskan Snapshot Database di SQL Server di artikel ini.
Baca artikel sebelumnya sebelum posting ini.
Cuplikan Basis Data SQL Server -1
Cuplikan Basis Data SQL Server -2
Cuplikan Basis Data SQL Server -3
Kesalahan ini sangat menakutkan dan kerugian finansial untuk basis data Produksi.
Kami akan menggunakan database Snapshot untuk kembali dari kesalahan ini. Kami menggunakan tabel AWBuildVersion dari database Snapshot untuk membuat tabel AWBuildVersion di database AdventureWorks. Kami akan menggunakan Select * ke dalam perintah untuk ini. Tangkapan layar setelah menjalankan skrip adalah sebagai berikut. Seperti yang ditunjukkan oleh garis merah, Dropped Table dikembalikan ke database Source dengan datanya.
Mari kita lakukan contoh serupa lainnya agar lebih mudah dipahami. Mari hapus data tabel apa pun dan kembalikan dari database Snapshot lagi. Sebagaimana diuraikan dalam Gambar 1.1 di bawah, tabel BillOfMaterials di bagian bawah database ProductionWorks sedang dihapus dari database AdventureWorks. Ketika kita memilih Select count pada saat yang sama, record 0 akan ditanyakan seperti yang ditunjukkan pada gambar di bawah ini.
Kami menggunakan database Snapshot lagi untuk kembali dari kesalahan ini. Seperti pada 2.1 di atas, kita melakukan penyisipan skema dan tabel yang sama dari database Snapshot ke tabel yang sesuai di database sumber. Dengan cara yang sama, jumlah baris record yang sama disisipkan seperti yang ditunjukkan pada gambar 2.2 saat kita menanyakan Select Count.
Terakhir, mari kita membuat kesalahan administrator dari database Snapshot, dan kali ini kita akan Mengembalikan database Sumber dari database Snaphot. Dengan demikian, snapshot database AdventureWorks kembali ke keadaan awal. Saya menghapus data tabel BillOfMaterials dari Skema Produksi dan pada saat yang sama saya menghapus tabel SalesOrderDetail di bawah skema Penjualan. Tangkapan layarnya adalah sebagai berikut. Karena data tabel BillOfMaterials di bagian bawah Skema Produksi telah dihapus, tabel SalesOrderDetail tidak muncul karena dihapus.
Kami membuat banyak perubahan dalam database sumber, kami telah mengatakan bahwa perubahan ini selalu ditulis ke File Jarang. Gambar berikut menunjukkan versi final dari file Sparse. Sementara ukuran asli 1 tidak berubah, file Sparse asli nomor 2 telah meningkat. Alasan untuk ini, seperti yang saya katakan, adalah karena semua perubahan yang dibuat dalam database Sumber ditulis di sini. Jadi ketika pengguna membaca data yang diubah, ia membaca dari File Jarang. Jika pengguna meminta data yang tidak diubah, itu akan dibaca dari database sumber.
Sekarang mari kembali ke Snapshot.
SQL Server 2017 Database Snaphot Restore coderestore
database
AdventureWorks
from
database_snapshot=
'AdventureWorksSnaphot'
Kami dapat menanyakan semua tabel yang dijatuhkan dan dihapus setelah memulihkan Snapshot seperti yang ditunjukkan gambar di atas.