2009-02-08 30 views
23

Theo như tôi biết SQL Server cung cấp 4 kỹ thuật để có tính sẵn sàng tốt hơn.Các kịch bản để sử dụng phản chiếu, đăng nhập, sao chép và phân cụm trong SQL Server

Tôi nghĩ rằng đó là những kịch bản sử dụng tiểu học, trong tóm tắt: -

1) Replication sẽ chủ yếu thích hợp cho trực tuyến ẩn kịch bản đồng bộ hóa dữ liệu (máy tính xách tay, thiết bị di động, các máy chủ từ xa).

2) vận chuyển Log có thể được sử dụng để có một máy chủ chuyển đổi dự phòng với chuyển mạch sử dụng, trong khi

3) Cơ sở dữ liệu Mirroring là một failover kỹ thuật tự động

4) Failover Clustering là một loại tiên tiến của cơ sở dữ liệu phản ánh.

Tôi có đúng không?

Cảm ơn.

+2

Câu trả lời hay. Một điều tôi muốn thêm .. bây giờ là nó gần như năm 2013. Bà khuyên không nên sử dụng phản chiếu. Nó sẽ biến mất cuối cùng. Ngoài ra, phản ánh chỉ giới hạn ở một đối tác. –

Trả lời

24

Chuyển đổi dự phòng là một công nghệ có sẵn cung cấp dự phòng ở cấp phần cứng và được xây dựng trên công nghệ Windows Clustering, tức là nó không dành riêng cho SQL Server.

Ví dụ, bộ vi xử lý thổi lên trên máy chủ A. May mắn thay Máy chủ A là một phần của cụm máy chủ SQL và vì vậy máy chủ B tiếp quản công việc cung cấp dịch vụ SQL Server, chỉ trong vài giây. Tất cả điều này xảy ra tự động và minh bạch đối với người dùng cơ sở dữ liệu và ứng dụng đang được phân phối bởi cụm.

Sự khác biệt chính giữa Cơ sở dữ liệu Mirroring và phân cụm là SQL Clustering cung cấp dự phòng ở cấp cá thể trong khi phản ánh cơ sở dữ liệu cung cấp dự phòng ở cấp cơ sở dữ liệu.

Liên kết sau đây cung cấp sự so sánh giữa hai công nghệ mà bạn có thể sử dụng.

http://msdn.microsoft.com/en-us/library/ms191309(SQL.90).aspx

Vận chuyển nhật ký được coi là công nghệ dự phòng nhiều hơn. Ví dụ:

Ví dụ: nó có thể được sử dụng để cung cấp bản sao đầy đủ của môi trường chính, thường được sử dụng làm chế độ chờ ấm có thể được mang trực tuyến theo cách thủ công. Điều này có thể được sử dụng để cung cấp thêm dự phòng cho chiến lược dự phòng của bạn. Vận chuyển nhật ký cũng có thể được sử dụng để giảm tải báo cáo từ máy chủ chính bằng cách tạo bản sao chỉ đọc của cơ sở dữ liệu sản xuất tại một vị trí/máy chủ thay thế.

Sao chép là một công nghệ khá đa dạng và có thể được sử dụng để phục vụ cho một số trường hợp khác nhau, lựa chọn trong đó sẽ xác định loại bản sao cụ thể được triển khai. Ví dụ:

Ví dụ: sao chép hợp nhất có thể được sử dụng để hỗ trợ xử lý phân tán bằng cách truyền tải khối lượng công việc của một ứng dụng trên một số máy chủ, tức là kiến ​​trúc xử lý được phân phối.

Sao chép hợp nhất thường yêu cầu ứng dụng tương đối ý thức về môi trường của nó. Các kỹ thuật như giải quyết xung đột cũng phải được xem xét để đảm bảo tính thống nhất dữ liệu trên toàn bộ môi trường tích hợp.

Sao chép giao dịch có thể được sử dụng theo cách tương tự để đăng nhập vận chuyển tuy nhiên bạn có thể giới hạn các đối tượng cụ thể được sao chép vào người đăng ký. Điều này có thể hữu ích nếu chỉ có một tập con bảng cần thiết cho mục đích báo cáo.

Tôi hy vọng điều này sẽ xóa mọi thứ cho bạn một chút. Bạn có thể tìm thấy vô số tài liệu liên quan đến từng công nghệ trong sách SQL Server trực tuyến hoặc bằng cách tìm kiếm từng công nghệ trong Google. Điều đó nói rằng nếu bạn có bất kỳ truy vấn cụ thể, tôi sẽ rất vui khi được giúp đỡ để cảm thấy tự do để thả tôi dòng.

Chúc mừng, John

2

Trong SQL 2008 Enterprise cũng có một cái gì đó gọi là Thay đổi dữ liệu Capture (CDC) mà chúng tôi đang sử dụng thành công nơi tôi làm việc.

Chúng tôi có cơ sở dữ liệu quá chuẩn hóa khiến việc lấy thông tin quá khó. Chúng tôi cần thay đổi cấu trúc dữ liệu cùng lúc khi chúng tôi sao chép dữ liệu này sang một máy chủ khác cho các báo cáo và như vậy.

Nó hoạt động rất tốt cho chúng tôi.

+0

Gần đây tôi đã nói chuyện với một người dùng của SQL Server 2005, người cũng nói rằng cơ sở dữ liệu của họ đã quá bình thường và họ sao chép dữ liệu vào một máy chủ báo cáo. Không phải là một cơ sở dữ liệu phải xử lý cả giao dịch và báo cáo? Tại sao tôi phải đầu tư vào 2 máy chủ và nhân rộng? Tôi nghĩ rằng đó là một chi phí. – Chakra

+2

@Chakra không phải là quy tắc, nó chỉ được sử dụng khi máy chủ của bạn không thể hoạt động tốt với cơ sở dữ liệu đang được sử dụng cho khối lượng công việc và báo cáo sản xuất. –

-2

Vận chuyển và sao chép nhật ký AFAIK có thể phù hợp hơn với cách khác.

Vận chuyển nhật ký được đồng bộ hóa theo lịch biểu, để sao chép phù hợp hơn cho chuyển đổi thủ công vì máy chủ sao lưu sẽ được cập nhật vì có thể trừ khi bạn gặp bất kỳ sự cố liên lạc nào (tuy nhiên, vận chuyển nhật ký sẽ giống nhau vấn đề).

dữ liệu ngoại tuyến không nhạy cảm với sự chậm trễ như máy chủ dự phòng, nhưng cá nhân tôi thực sự không thấy cần phải đăng nhập, tôi không thể thấy khi nào nó phù hợp hơn thay thế để nhân rộng (nhưng nó có thể được nhân rộng không được thực hiện trước khi sql2005)

Có lẽ tôi đang bối rối sao chép với phản ánh, và như một lưu ý, phản ánh không cung cấp cho bạn tự động chuyển đổi dự phòng, chỉ HA-cluster cung cấp cho bạn chức năng đó, nghĩa là:

bằng cách sử dụng ít nhất SQL server 2005 standard, Windows Enterprise và bộ nhớ dữ liệu được chia sẻ (như SAN).

+0

bạn đã sai. Mirroring có failover, nhưng nó chỉ tự động nếu bạn sử dụng một instance sql của nhân chứng. Việc phản chiếu hoạt động trên cấp cơ sở dữ liệu và nó gửi các giao dịch tới cá thể sql từ xa, nếu nó ở chế độ an toàn cao, giao dịch chỉ cam kết khi phía từ xa đã chạy giao dịch. Sự khác biệt để nhân rộng giao dịch là nó cho phép thay đổi lược đồ và thêm các bảng vì nó là một bộ máy cơ sở dữ liệu đầy đủ. Nhân rộng là ràng buộc với các đối tượng cơ sở dữ liệu, vì vậy nếu bạn tạo một đối tượng mới trên cơ sở dữ liệu, nó sẽ không được tự động thêm vào. LogShipping có độ trễ đồng bộ hóa cao hơn. –

+0

Điều đó đúng, điều tra thêm đã cho tôi kết luận sau này trước khi câu trả lời này được nhập vào. Tuy nhiên, HA-cluster có lợi thế với sự chuyển đổi đầy đủ giữa hai nút mà phản chiếu không có. Khi không thành công, bạn phải tự thiết lập lại phản chiếu "ngược". – jishi

Các vấn đề liên quan