Xin chào
Trong bài viết này, tôi sẽ giải thích về Ảnh chụp cơ sở dữ liệu trong SQL Server. Ảnh chụp cơ sở dữ liệu là một tính năng đi kèm với SQL Server 2005 và là một tính năng liên tục trong các năm 2008, 2012, 2014, 2016, SQL Server 2017, v.v. Ảnh chụp cơ sở dữ liệu; Định nghĩa đơn giản nhất là bản sao chỉ đọc của Cơ sở dữ liệu hoặc ảnh chụp nhanh của cơ sở dữ liệu tại bất kỳ thời điểm nào.
Khi quá trình chụp nhanh được thực hiện, SQL Server lấy hình ảnh hiện tại của cơ sở dữ liệu đã chọn nhưng không có dữ liệu vật lý hiện tại trên đĩa cho cơ sở dữ liệu Ảnh chụp nhanh.
Có một dữ liệu vật lý duy nhất và nó chỉ dành cho cơ sở dữ liệu Sản xuất. Bỏ gửi các giao dịch quay trở lại trong khi ảnh chụp nhanh đang được thực hiện. Mọi thay đổi được thực hiện đối với cơ sở dữ liệu ảnh chụp nhanh sẽ được ghi vào Tệp thưa thớt cho cơ sở dữ liệu Ảnh chụp nhanh.
Điều này có nghĩa là nếu ai đó đã thay đổi bất kỳ dữ liệu nào trong cơ sở dữ liệu Snapshot khi ai đó truy vấn bất kỳ lựa chọn nào liên quan đến cùng dữ liệu từ Snapshot, thì SQL Server sẽ đọc dữ liệu đã thay đổi từ tệp thưa thớt và đọc dữ liệu chưa được sửa đổi từ cơ sở dữ liệu gốc.
Bức chân dung đẹp nhất tóm tắt kịch bản này là bức ảnh sau đây do MSDN công bố.
Như hình trên, trong trường hợp đầu tiên, 3 trong số 10 trang của Cơ sở dữ liệu sản xuất đang được Cập nhật. Các Cập nhật này cũng được viết trong Tệp thưa như được hiển thị trong trường hợp đầu tiên. trong trường hợp thứ 2, 8 trang từ cơ sở dữ liệu nguồn được cập nhật và 7 trang được ghi vào tệp thưa thớt.
Khi một Báo cáo hoặc Truy vấn được thực thi từ Ảnh chụp nhanh, SQL Server đọc các trang không thay đổi từ Cơ sở dữ liệu nguồn SQL Server và SQL Server đọc các trang đã thay đổi từ tệp thưa thớt.
Mục đích chính của Snapshot là tạo Báo cáo ổn định hoặc cơ sở dữ liệu thử nghiệm cho các nhà phát triển trong một khoảng thời gian nhất định bằng cách tạo bản sao lưu của bất kỳ cơ sở dữ liệu nào và tạo báo cáo thông qua Snapshot. nếu lỗi nhỏ xảy ra trong cơ sở dữ liệu sản xuất, Quản trị viên có thể quay lại trạng thái ban đầu từ Ảnh chụp nhanh.
Tuy nhiên, điều rất quan trọng là cơ sở dữ liệu Snapshot được kết nối 1-1 với cơ sở dữ liệu nguồn của nó. Nếu nó bị xóa hoặc di chuyển thì cơ sở dữ liệu chính không thể được trả về từ cơ sở dữ liệu Snapshot. Đó là lý do tại sao cơ sở dữ liệu Ảnh chụp nhanh không chính xác là Chiến lược sao lưu cho SQL Server. Nó có thể được sử dụng cho cơ sở dữ liệu thử nghiệm.
Tôi sẽ tiếp tục giới thiệu về ảnh chụp nhanh cơ sở dữ liệu SQL Server trong bài đăng tiếp theo.