Sao lưu toàn bộ ổ đĩa có thể được sử dụng thay vì sao lưu cơ sở dữ liệu MSSQL không?


7

Tôi có máy chủ MSSQL Express đang chạy trên VM. Nhà cung cấp dịch vụ lưu trữ mà tôi sử dụng có một tùy chọn để tạo ảnh chụp nhanh ổ đĩa. Máy chủ đang chạy mọi lúc và không bị dừng trong quá trình sao lưu ổ đĩa. Sao lưu không có chức năng đặc biệt liên quan đến MSSQL. Nếu tôi giữ các tệp dữ liệu của mình trên ổ đĩa đó và sử dụng ảnh chụp nhanh trong trường hợp khắc phục thảm họa, có bất kỳ rủi ro nào mà cơ sở dữ liệu có thể không được khôi phục không?


2
Bạn đã xả và tạm dừng tất cả các bộ đệm I / O trước?
Michael Kutz

3
@ Vérace cho rằng máy chủ đang chạy, tôi cho rằng không an toàn khi dựa vào các bản sao lưu ổ đĩa và nên sử dụng các bản sao lưu DB thông thường.
Justinas Simanavicius

Ảnh chụp nhanh ổ đĩa về cơ bản có mô hình nhất quán giống như phần mềm khôi phục sự cố và phần mềm lưu trữ dữ liệu sẽ có thể khôi phục sau sự cố. Nó có thể yêu cầu khôi phục sự cố nhưng nó sẽ có thể (không có lỗi) được khôi phục vào thời gian chụp nhanh này.
eckes

Câu trả lời:


11

Sao lưu không có chức năng đặc biệt liên quan đến MSSQL.

Thông thường các chương trình sao lưu máy chủ sẽ phối hợp với SQL Server thông qua Dịch vụ sao chép khối lượng Windows (VSS) để đảm bảo rằng SQL Server đặt các tệp cơ sở dữ liệu ở trạng thái nhất quán trước khi chụp ảnh nhanh khối lượng. Tại một chương trình sao lưu tối thiểu nên tạo các bản sao lưu phù hợp trên cơ sở mỗi khối lượng.

Tuy nhiên, ngay cả trong môi trường doanh nghiệp nơi bạn có các chuyên gia đáng tin cậy thực hiện sao lưu máy chủ bằng cách sử dụng cấu hình bạn có thể xác minh, rất ít DBA thực sự sẽ dựa vào sao lưu máy chủ. Hãy nhớ sao lưu một mình là không liên quan. Phục hồi là những gì bạn thực sự quan tâm.

Vì vậy, làm thế nào bạn sẽ thực hiện khôi phục nếu bạn dựa vào sao lưu máy chủ? Không dễ dàng, đó là điều chắc chắn.

Vì vậy, hãy sao lưu. Sau đó tải xuống chúng thường xuyên từ hoster của bạn hoặc tải chúng lên nhà cung cấp lưu trữ đám mây, ví dụ:

  • Đăng ký tài khoản Azure
  • Cung cấp tài khoản lưu trữ (LRS + Tầng mặc định mát mẻ)
  • Sử dụng tính năng Sao lưu vào URL của SQL Server để sao lưu cơ sở dữ liệu trực tiếp vào tài khoản lưu trữ của bạn.

3

Mặc dù bạn chắc chắn nên lưu ý những điểm mà David Browne đưa ra, tôi đã sử dụng phương pháp chụp nhanh ổ đĩa để sao lưu và đã khôi phục thành công cơ sở dữ liệu SQL nhỏ từ chúng. Nhưng hãy xem những lời cảnh báo ở cuối câu trả lời của tôi - tôi sẽ rất cảnh giác khi thử điều này trên một cơ sở dữ liệu lớn.

Hầu hết các phần mềm sao lưu loại này sẽ cho phép bạn gắn bản sao lưu dưới dạng ổ đĩa ảo. Sau khi gắn kết, bạn có thể sao chép lại tập tin MDF. Bạn có thể chỉ cần dừng dịch vụ máy chủ SQL, thay thế (các) tệp gốc sau đó khởi động lại hoặc đính kèm tệp MDF dưới dạng cơ sở dữ liệu mới và sao chép lại dữ liệu đã chọn từ nó.

Nhưng:

Tôi chỉ từng sử dụng điều này cho các cơ sở dữ liệu nhỏ được thiết lập để ghi nhật ký đơn giản. Trong bối cảnh nhỏ này có nghĩa là loại kích thước hỗ trợ SQLE े vì vậy điều này sẽ áp dụng cho hệ thống của bạn. Khi tôi sử dụng loại sao lưu này, tôi sử dụng ghi nhật ký đơn giản vì phần mềm sao lưu mà chúng tôi sử dụng sẽ chụp nhanh sau mỗi 15 phút để nó mang lại cho tôi độ chi tiết khá tốt mà không cần phải ghi nhật ký đầy đủ.

Tôi sử dụng phương pháp này chủ yếu cho các loại cơ sở dữ liệu SQL nhỏ được sử dụng bởi các ứng dụng. Rất nhiều ứng dụng người dùng cuối sử dụng SQLE Express làm kho lưu trữ dữ liệu của họ ngày nay, giống như vài năm trước, rất nhiều ứng dụng đã sử dụng tệp MDB truy cập và trong những trường hợp này, tôi có xu hướng xem cơ sở dữ liệu giống như cách tôi xem bất kỳ tệp dữ liệu nào khác. Bạn không nói cơ sở dữ liệu của bạn được sử dụng để làm gì vì vậy tôi không thể tư vấn cho bạn về việc nó sẽ hoạt động tốt như thế nào cho bạn. Lời khuyên thông thường cho các bản sao lưu được áp dụng: kiểm tra các bản sao lưu của bạn thường xuyên để đảm bảo bạn có thể khôi phục từ chúng.


Chúng tôi đã sử dụng thành công snapshot như một phương pháp sao lưu và DR với chuyển đổi dự phòng dễ dàng trên nhiều cơ sở dữ liệu nhiều terabyte (không phải SQL Server). Di chuyển ra khỏi mô hình đó ngay bây giờ, nhưng miễn là bạn có đủ bộ dụng cụ và một ống lớn giữa hai bộ đĩa đĩa, đó là một giải pháp khả thi, mặc dù khó thiết lập.
Bến

2

Tôi đồng ý với tất cả các điểm được đề cập ở trên của David Browne và muốn thêm một điểm thích hợp ở đây. Vì bạn chưa chỉ định mô hình khôi phục cơ sở dữ liệu, tôi giả sử rằng đó là chế độ khôi phục hoàn toàn. Điều đó có nghĩa là với mỗi kích thước nhật ký giao dịch sẽ tiếp tục phát triển cho đến khi nó chiếm toàn bộ đĩa (trừ khi bạn đã giới hạn kích thước của mức tăng tự động Nhật ký).

Khi bạn thực hiện sao lưu nhật ký, các điều sau sẽ xảy ra:

Một bản sao lưu nhật ký giao dịch cho phép bạn sao lưu phần hoạt động của nhật ký giao dịch. Vì vậy, sau khi bạn phát hành bản sao lưu "Đầy đủ" hoặc "Khác biệt", bản sao lưu nhật ký giao dịch sẽ có bất kỳ giao dịch nào được tạo sau khi các bản sao lưu khác hoàn thành. Sau khi sao lưu nhật ký giao dịch được phát hành, không gian trong nhật ký giao dịch có thể được sử dụng lại cho các quy trình khác. Nếu một bản sao lưu nhật ký giao dịch không được thực hiện, nhật ký giao dịch sẽ tiếp tục phát triển.

Chụp ảnh đĩa sẽ không bao giờ xóa nhật ký bên trong máy chủ SQL và hơn nữa, bạn cũng có tính năng sao lưu nén, có thể hữu ích để giữ kích thước sao lưu thực sự nhỏ. Trong trường hợp thảm họa, sử dụng Sao lưu toàn bộ, vi sai và sao lưu, bạn có thể đạt được điểm khôi phục kịp thời.

Thêm một điều nữa để thêm vào đây - Nói chung các DBA tiếp tục sao lưu trên các bộ lưu trữ khác nhau và không trên cùng một bộ lưu trữ nơi lưu trữ dữ liệu hoặc tệp nhật ký. Vì vậy, trong trường hợp đĩa dữ liệu hoặc tệp nhật ký của bạn gặp sự cố, bạn vẫn an toàn vì bạn có bản sao lưu có sẵn trên một số bộ lưu trữ khác.

Tôi hy vọng ở trên giúp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.