SQL Server cung cấp cho chúng tôi một số giải pháp phục hồi sau thảm họa và tính sẵn sàng cao giúp cung cấp dữ liệu phục vụ các hệ thống quan trọng trong thời gian dài nhất có thể với thời gian chết ít nhất có thể. Các giải pháp khắc phục sự cố và tính khả dụng cao này do Microsoft SQL Server cung cấp được thảo luận trong bài viết về Nhật ký giao dịch SQL Server và các giải pháp về giải pháp khả dụng cao.
Trong bài viết này, chúng tôi sẽ trình bày cách thiết lập và cấu hình trang Nhóm sẵn sàng và cấu hình nó để đáp ứng các yêu cầu của công ty. Nhưng chúng ta hãy bắt đầu với tổng quan ngắn gọn về tính năng Nhóm luôn sẵn sàng để làm quen với nó.
Tổng quan
Nhóm sẵn sàng luôn bật của SQL Server, được giới thiệu trong phiên bản SQL Server 2012, là một giải pháp khôi phục sự cố và tính khả dụng cao cấp doanh nghiệp được xây dựng dựa trên tính năng Phân cụm chuyển đổi dự phòng của Windows Server, trong đó một hoặc nhiều cơ sở dữ liệu có thể hoạt động như một nhóm khả dụng và không thành công với tư cách là một đơn vị duy nhất.
Nhóm Khả dụng là vùng chứa cho một tập hợp cơ sở dữ liệu được lưu trữ trong một bản sao chính, chứa bản sao đọc-ghi của cơ sở dữ liệu và được đồng bộ hóa với tối đa tám bản sao thứ cấp, chứa bản sao chỉ đọc của các cơ sở dữ liệu này.
Để thay thế cho tính năng phản chiếu cơ sở dữ liệu, Nhóm Luôn sẵn sàng có thể được sử dụng để giảm tải trên phiên bản chính bằng cách định cấu hình các bản sao thứ cấp để xử lý khối lượng công việc chỉ đọc và các hoạt động sao lưu. Theo cách này, Nhóm luôn sẵn sàng có thể được sử dụng để cải thiện tính khả dụng của cơ sở dữ liệu và nâng cao việc sử dụng tài nguyên SQL Server cho tất cả các bản sao.
Quá trình đồng bộ hóa giữa các bản sao của Nhóm khả dụng có thể được thực hiện ở một trong hai chế độ khả dụng được hỗ trợ:
- Chế độ cam kết đồng bộ :Trong chế độ khả dụng này, bản sao chính sẽ đợi các bản sao thứ cấp, tối đa hai bản sao thứ cấp đồng bộ, để xác nhận việc ghi nhật ký vào tệp nhật ký giao dịch cơ sở dữ liệu của chúng, trước khi thực hiện nó ở bản sao chính. Chế độ khả dụng này làm tăng mức độ khả dụng của dữ liệu so với giá độ trễ của giao dịch.
- Chế độ cam kết không đồng bộ :Chế độ khả dụng này được sử dụng chủ yếu để đồng bộ hóa với các bản sao phục hồi sau thảm họa, được phân phối qua các trung tâm dữ liệu ở xa, nơi bản sao chính sẽ không đợi các bản sao thứ cấp, để xác nhận việc làm cứng nhật ký để thực hiện giao dịch ở phía chính, cung cấp ít dữ liệu hơn mức độ khả dụng và độ trễ giao dịch ít hơn.
Quá trình chuyển đổi dự phòng Nhóm luôn sẵn sàng, trong đó vai trò chính sẽ được thay đổi giữa các bản sao, có thể được quản trị viên cơ sở dữ liệu thực hiện theo cách thủ công hoặc tự động bởi chính SQL Server trong trường hợp có bất kỳ lỗi nào ở cấp máy chủ, lưu ý rằng điều này chuyển đổi dự phòng sẽ không xảy ra trong trường hợp có bất kỳ sự cố cấp cơ sở dữ liệu nào như hỏng cơ sở dữ liệu.
Đối với mỗi Nhóm khả dụng, tên Máy chủ có thể được tạo để cung cấp cho máy khách khả năng kết nối trực tiếp với bản sao Chính hoặc bản sao chỉ đọc mà không cần gọi lại tên và vai trò của phiên bản SQL Server bên trong nhóm khả dụng. Tên máy chủ này được gọi là Trình xử lý nhóm khả dụng .
Kịch bản trình diễn
Sau khi cung cấp phần giới thiệu ngắn gọn về tính năng Nhóm luôn sẵn sàng, chúng tôi đã sẵn sàng thiết lập Nhóm sẵn sàng và định cấu hình nó đúng cách. Trong bản trình diễn này, chúng tôi sẽ tạo một Nhóm sẵn sàng để sao chép cơ sở dữ liệu AdventureWorks2017 giữa hai phiên bản SQL Server; SQL1 và SQL2, với SQL Server 2017 đã được cài đặt trên các máy chủ này.
Đối với mục đích thử nghiệm và trình diễn, Dịch vụ SQL Server trong cả hai phiên bản SQL1 và SQL2 đang chạy trong tài khoản dịch vụ ay \ sqladmin, có quyền thích hợp trên các phiên bản SQL Server này.
Bắt đầu
Như đã đề cập trong phần tổng quan của bài viết này, tính năng Nhóm luôn sẵn sàng được xây dựng dựa trên tính năng Cụm chuyển đổi dự phòng của Windows Server. Vì vậy, chúng tôi cần tạo một trang web phân cụm chuyển đổi dự phòng mà qua đó chúng tôi sẽ xác định trang web Nhóm khả dụng.
Tạo một cụm chuyển đổi dự phòng
Trước hết, chúng ta cần đảm bảo rằng tính năng Phân cụm chuyển đổi dự phòng được cài đặt trên tất cả các bản sao sẽ tham gia vào trang web Nhóm khả dụng. Điều này có thể được thực hiện bằng cách mở trang tổng quan Trình quản lý máy chủ trên mỗi bản sao và chọn tùy chọn Thêm vai trò và tính năng từ trình đơn Quản lý, sau đó kiểm tra và cài đặt Phân cụm chuyển đổi dự phòng tính năng từ trình hướng dẫn đó, như được hiển thị bên dưới:
Sau khi cài đặt tính năng Cụm chuyển đổi dự phòng, hãy mở Trình quản lý cụm chuyển đổi dự phòng trong một trong các bản sao, sử dụng tài khoản quản trị viên cục bộ được ủy quyền với các đặc quyền của Quản trị viên miền cho phép nó tạo tên cụm đó trong thư mục hoạt động và nhấp vào Tạo cụm tùy chọn, như bên dưới:
Từ Trình hướng dẫn tạo cụm đã mở , hãy kiểm tra các hướng dẫn được cung cấp trong phần Trước khi bạn bắt đầu và nhấp vào Tiếp theo để tiếp tục:
Trong trang tiếp theo, hãy cung cấp tên hoặc IP của các bản sao sẽ tham gia vào Nhóm sẵn có, sau đó nhấp vào tiếp theo để tiếp tục:
Sau đó, bạn cần chỉ định có nên chạy kiểm tra xác thực cụm hay không, để xác thực rằng các tài nguyên có sẵn trên các máy chủ này có tương thích với tính năng Cụm chuyển đổi dự phòng hay không trước khi tạo Cụm chuyển đổi dự phòng hay không. Bạn luôn nên thực hiện kiểm tra xác thực ở bước đó trước khi cố gắng tạo trang web Cụm chuyển đổi dự phòng.
Thao tác này sẽ hướng bạn đến Xác thực trình hướng dẫn cấu hình . Trong trang đầu tiên của trình hướng dẫn xác thực, hãy kiểm tra hướng dẫn của trình hướng dẫn và nhấp vào Tiếp theo để tiếp tục:
Sau đó, bạn cần chỉ định có chạy tất cả xác thực Cụm chuyển đổi dự phòng hay không, đây là tùy chọn được khuyến nghị hoặc chọn các bài kiểm tra nhanh hơn cụ thể. Trong bản trình diễn này, chúng tôi sẽ sử dụng tùy chọn được khuyến nghị của Microsoft và thực hiện tất cả các thử nghiệm xác thực, sau đó nhấp vào Tiếp theo để tiếp tục:
Và bạn có thể xem lại các bài kiểm tra xác thực sẽ được thực hiện trong trình hướng dẫn xác thực này và xác nhận để tiếp tục bằng cách nhấp vào Tiếp theo , như sau:
Khi quá trình xác thực hoàn tất, bạn có thể nhấp vào nút Xem Báo cáo để xem lại kết quả kiểm tra xác thực hoặc xuất nó cho một kỹ sư khác để khắc phục bất kỳ vấn đề nào gặp phải hoặc nhấp vào Hoàn tất trực tiếp để bắt đầu quá trình tạo cụm, như bên dưới:
Hiện tại, chúng tôi đã kiểm tra xem máy chủ của mình có tương thích với các yêu cầu về tính năng Cụm chuyển đổi dự phòng hay không và chúng tôi có thể tiếp tục tạo trang web Phân cụm chuyển đổi dự phòng. Trong Điểm truy cập để quản trị cụm , cung cấp tên và địa chỉ IP duy nhất cho Cụm chuyển đổi dự phòng, sau đó nhấp vào Tiếp theo để tiếp tục:
Sau đó, hãy xem lại cài đặt tạo cụm mà bạn cung cấp và đảm bảo xóa dấu kiểm bên cạnh Thêm tất cả bộ nhớ đủ điều kiện vào cụm , vì tính năng Nhóm luôn sẵn sàng hoạt động bằng cách sử dụng bộ nhớ dành riêng cho từng máy chủ và KHÔNG bộ nhớ dùng chung. Nếu bạn ổn với cài đặt, hãy nhấp vào Tiếp theo để tiếp tục:
Khi trang web Phân cụm chuyển đổi dự phòng được tạo thành công, trình hướng dẫn sẽ thông báo cho bạn bằng một thông báo rằng trang web Phân cụm chuyển đổi dự phòng đã được tạo hoàn chỉnh, như sau:
Bạn có thể xác minh rằng trang web Cụm chuyển đổi dự phòng được tạo thành công, bằng cách mở Trình quản lý cụm chuyển đổi dự phòng, sẽ hiển thị cho bạn trang web cụm đã tạo và tất cả các thành phần của cụm đó như được hiển thị bên dưới:
Để giữ cho trang web Cụm chuyển đổi dự phòng ở chế độ khả dụng tốt nhất, bạn cần định cấu hình Số lượng cụm kiểm soát thời điểm giữ Cụm chuyển đổi dự phòng trực tuyến hoặc chuyển nó ngoại tuyến dựa trên các nút và phiếu bầu tài nguyên. Để định cấu hình nhóm túc số, hãy nhấp chuột phải vào tên nhóm, trong trình quản lý Nhóm chuyển đổi dự phòng và chọn Định cấu hình cài đặt nhóm túc số từ tùy chọn Tác vụ khác trình đơn, như bên dưới. Để biết thông tin chi tiết về cài đặt túc số phù hợp với tính năng Nhóm luôn sẵn sàng, hãy kiểm tra Chế độ túc số cụm chuyển đổi dự phòng của Windows trong Nhóm luôn sẵn sàng của SQL Server:
Bật Tính năng Nhóm Luôn sẵn sàng
Sau khi tạo Cụm chuyển đổi dự phòng, trong đó Nhóm khả dụng sẽ được tạo, chúng ta cần bật tính năng Nhóm khả dụng luôn bật và kết nối nó với trang web Cụm chuyển đổi dự phòng sẽ được sử dụng.
Để bật tính năng Nhóm luôn sẵn sàng, hãy mở Trình quản lý cấu hình SQL Server -> Dịch vụ SQL Server, sau đó nhấp chuột phải vào dịch vụ SQL Server và chọn tùy chọn Thuộc tính. Từ cửa sổ thuộc tính Dịch vụ SQL Server, chuyển đến Tính khả dụng luôn bật và kiểm tra “ Bật nhóm Luôn sẵn sàng ”, Bên dưới tên Cụm chuyển đổi dự phòng được phát hiện tự động, như được hiển thị bên dưới:
Hãy lưu ý rằng, thay đổi này nên được thực hiện trên tất cả các bản sao sẽ tham gia vào nhóm khả dụng và sẽ có hiệu lực sau khi khởi động lại dịch vụ SQL Server, như sau:
Tạo nhóm luôn sẵn sàng mới
Sau khi bật tính năng Nhóm luôn sẵn sàng, chúng tôi sẽ bắt đầu tạo Nhóm sẵn sàng mới bằng cách mở rộng nút Luôn bật Tính sẵn sàng cao, trong Trình khám phá đối tượng SSMS, sau đó nhấp chuột phải vào nút Nhóm sẵn sàng và chọn nút Mới Trình hướng dẫn nhóm khả dụng , như hình dưới đây:
Trang đầu tiên trong trình hướng dẫn Nhóm sẵn có mới là trang Giới thiệu, trong đó bạn có thể tìm thấy mô tả ngắn gọn về các bước sẽ được thực hiện trong trình hướng dẫn này để tạo Nhóm khả dụng mới. Xem lại bản tóm tắt đã cung cấp, sau đó nhấp vào Tiếp theo để tiếp tục:
Trong Chỉ định tùy chọn nhóm khả dụng cửa sổ, bạn cần chỉ định tên của Nhóm khả dụng, loại cụm, dựa trên phiên bản SQL Server và Hệ điều hành được sử dụng trên các bản sao, nơi bạn có thể chọn từ Cụm chuyển đổi dự phòng Windows Server , không phải Windows BÊN NGOÀI cụm hoặc KHÔNG CÓ nếu không có cụm nào được sử dụng.
Trang này cũng cho phép bạn bật Phát hiện tình trạng cấp cơ sở dữ liệu tùy chọn kiểm tra khi cơ sở dữ liệu không còn ở trạng thái trực tuyến và thực hiện chuyển đổi dự phòng tự động của nhóm khả dụng và cho phép các giao dịch được phân phối trong các nhóm khả dụng trên mỗi cơ sở dữ liệu, như được hiển thị bên dưới:
Sau đó, bạn cần chọn (các) cơ sở dữ liệu sẽ tham gia vào Nhóm sẵn sàng đó. Trình hướng dẫn sẽ kiểm tra các yêu cầu trước cho cơ sở dữ liệu để được thêm vào nhóm Tính khả dụng, bao gồm cả Mô hình khôi phục đầy đủ của cơ sở dữ liệu và một bản sao lưu đầy đủ được lấy từ cơ sở dữ liệu đó trước khi thêm nó. Sau khi đáp ứng các yêu cầu đối với (các) cơ sở dữ liệu, hãy làm mới danh sách cơ sở dữ liệu, kiểm tra cơ sở dữ liệu rồi nhấp vào Tiếp theo để tiếp tục:
Trên trang tiếp theo, trong Bản sao , bạn cần thêm tất cả các bản sao SQL Server sẽ tham gia vào Nhóm Tính khả dụng này và lưu trữ một bản sao từ cơ sở dữ liệu được bao gồm. Sau khi thêm các bản sao, bạn có thể chọn tối đa ba bản sao được định cấu hình với chế độ khả dụng cam kết đồng bộ và cho phép Chuyển đổi dự phòng tự động giữa các bản sao này và phần còn lại của các bản sao sẽ được định cấu hình với chế độ cam kết Không đồng bộ. Bạn cũng có thể quyết định định cấu hình từng bản sao là thứ cấp có thể đọc được cho các kết nối chỉ đọc hay bản sao có thể đọc được có mục đích đọc để xử lý khối lượng công việc chỉ đọc được hướng dẫn tự động bởi trình nghe, như được hiển thị bên dưới:
Trong tab Điểm cuối, hãy kiểm tra cài đặt của điểm cuối kết nối sẽ được sử dụng để giao tiếp giữa các bản sao, nơi bạn cần đảm bảo rằng cổng TCP đã sử dụng được bật trong quy tắc tường lửa của tất cả các bản sao và tài khoản dịch vụ được cung cấp có Kết nối quyền trên điểm cuối của bản sao, như sau:
Trong tab Tùy chọn sao lưu, bạn cần chỉ định vị trí nơi các công việc sao lưu sẽ được thực hiện trong nhóm khả dụng. Nó cho phép bạn thực hiện sao lưu tự động từ bản sao thứ cấp như một tùy chọn ưu tiên, bản sao thứ cấp là bắt buộc, bản sao chính là bắt buộc hoặc tại bất kỳ bản sao nào. Dựa trên tùy chọn này, bạn có thể tạo kế hoạch bảo trì để sao lưu từ các cơ sở dữ liệu tham gia vào nhóm khả dụng, như sau:
Từ cùng một cửa sổ, bạn cũng có thể xác định cài đặt trình nghe nhóm khả dụng, trong trang Trình xử lý hoặc tiếp tục mà không tạo trình nghe ngay bây giờ và thực hiện tạo sau. Trong bản trình diễn này, chúng tôi sẽ định cấu hình trình nghe sau khi tạo nhóm khả dụng, như được hiển thị bên dưới:
Ngoài ra, bạn có thể sử dụng trang Định tuyến chỉ đọc để xác định danh sách định tuyến chỉ đọc, được sử dụng để kiểm soát khối lượng công việc chỉ đọc trong phần phụ. Để biết thêm thông tin, hãy kiểm tra Cách định cấu hình định tuyến chỉ đọc cho nhóm khả dụng trong SQL Server 2016:
Trên trang tiếp theo, bạn cần chỉ định cơ chế sẽ được sử dụng cho quá trình đồng bộ hóa dữ liệu ban đầu giữa các bản sao chính và phụ, với khả năng thực hiện đồng bộ hóa tự động hoặc thủ công bằng cách tham gia thứ cấp vào nhóm khả dụng và đồng bộ hóa cơ sở dữ liệu sau đó theo cách thủ công.
Có hai phương pháp đồng bộ hóa tự động có sẵn trong trình hướng dẫn đó, phương pháp đầu tiên là chỉ định một thư mục được chia sẻ để sao chép tạm thời các bản sao lưu nhật ký giao dịch và đầy đủ và thực hiện khôi phục tự động, mà chúng tôi sẽ sử dụng ở đây trong bản trình diễn này hoặc sử dụng phương pháp Chèn trực tiếp mà không có sao lưu, như được mô tả trong Nhóm luôn sẵn sàng của SQL Server 2016 với tính năng gieo trực tiếp:
Để sử dụng Toàn bộ cơ sở dữ liệu và sao lưu nhật ký , chúng tôi cần tạo một thư mục chia sẻ và cung cấp tài khoản dịch vụ SQL Server cho các quyền đọc và ghi bản sao trên thư mục đó, như được hiển thị bên dưới:
Sau đó, trình hướng dẫn Nhóm khả dụng mới sẽ thực hiện kiểm tra xác thực cho tất cả cấu hình trước khi tiếp tục quá trình tạo nhóm khả dụng. Nếu có bất kỳ lỗi nào, bạn có thể khắc phục trực tiếp sau đó làm mới trang và nhấp vào Tiếp theo để tiếp tục:
Ở giai đoạn cuối cùng, trình hướng dẫn sẽ cung cấp cho bạn bản tóm tắt cho tất cả các cấu hình trình hướng dẫn để bạn xem lại rồi nhấp vào Hoàn tất để bắt đầu tạo nhóm khả dụng, như sau:
Khi trình hướng dẫn hoàn thành, nó sẽ hiển thị cho bạn kết quả của từng bước và nếu có bất kỳ lỗi nào gặp phải. Nếu không, nó sẽ hiển thị thông báo rằng Nhóm sẵn sàng được tạo thành công mà không có vấn đề gì, như được hiển thị bên dưới:
Bạn cũng có thể xác nhận rằng Nhóm luôn sẵn sàng được tạo và định cấu hình thành công bằng Trình khám phá đối tượng SSMS, bằng cách kiểm tra xem (các) cơ sở dữ liệu tham gia ở trạng thái Đồng bộ hóa trong tất cả các bản sao và các bản sao và cơ sở dữ liệu có trực tuyến trong Luôn bật Nút Tính sẵn sàng cao, như được hiển thị bên dưới:
Bạn cũng có thể kết nối với bản sao Chính, với từ Chính bên cạnh tên nhóm khả dụng và kiểm tra trang thuộc tính Nhóm khả dụng, với khả năng thực hiện các tác vụ tương tự mà chúng tôi đã thực hiện trong Trình hướng dẫn nhóm khả dụng mới, chẳng hạn như thêm bản sao mới , thêm cơ sở dữ liệu mới, thay đổi từng cấu hình bản sao, thay đổi tùy chọn sao lưu và xác định danh sách định tuyến chỉ đọc, như được hiển thị bên dưới:
Tạo trình nghe nhóm luôn sẵn sàng
Bước cuối cùng trong việc định cấu hình Nhóm khả dụng là tạo trình nghe nhóm khả dụng sẽ được sử dụng khi kết nối với các bản sao chính và phụ mà không chỉ định tên bản sao.
Để tạo trình xử lý nhóm khả dụng, hãy nhấp chuột phải vào nút Trình xử lý nhóm khả dụng bên dưới nút nhóm khả dụng đã tạo và chọn Thêm trình xử lý lựa chọn. Từ Trình nghe nhóm khả dụng mới đã mở cửa sổ, cung cấp tên của trình nghe đó, cổng TCP sẽ được sử dụng để kết nối với trình nghe đó và địa chỉ IP tĩnh sẽ được chỉ định cho trình nghe đó, sau đó nhấp vào OK để tạo ra nó. Khi trình nghe được tạo thành công, cửa sổ sẽ tự động đóng lại và tên trình xử lý sẽ được hiển thị dưới nút Trình xử lý, như được hiển thị bên dưới:
Để kết nối với Nhóm khả dụng bằng cách sử dụng tên người nghe, hãy cung cấp tên hoặc IP của người nghe cùng với số cổng TCP trong Kết nối với máy chủ và nó sẽ kết nối trực tiếp với nút chính, như được hiển thị bên dưới:
Quá trình chuyển đổi dự phòng thử nghiệm
Sau khi kiểm tra kết nối với trình nghe Nhóm khả dụng và các bản sao, chúng tôi cần thực hiện một thử nghiệm quan trọng cho quá trình chuyển đổi dự phòng, để đảm bảo rằng vai trò chính sẽ được di chuyển giữa các bản sao mà không gặp bất kỳ sự cố nào và rằng cơ sở dữ liệu sẽ có thể truy cập được và trong trạng thái được đồng bộ hóa sau khi chuyển đổi dự phòng.
Để thực hiện chuyển đổi dự phòng thủ công, hãy nhấp chuột phải vào tên nhóm khả dụng và chọn Chuyển đổi dự phòng tùy chọn, như bên dưới:
Trang đầu tiên trong Nhóm khả dụng chuyển đổi dự phòng wizard là trang Giới thiệu, cung cấp bản tóm tắt các thao tác có thể được thực hiện trong trình hướng dẫn đó. Xem lại phần giới thiệu và nhấp vào Tiếp theo để tiếp tục:
Trong trang tiếp theo, hãy chọn nút nào sẽ hoạt động như bản sao Chính mới, đảm bảo rằng không có mất mát dữ liệu nào xảy ra khi hoạt động chuyển đổi dự phòng được thực hiện, sau đó nhấp vào Tiếp theo để tiếp tục:
Sau đó, bạn nên kết nối với bản sao Chính mới mà bạn chọn để đảm bảo rằng bản sao này trực tuyến và có thể truy cập được, như được hiển thị bên dưới:
Sau đó, xem lại các lựa chọn của bạn trong trình hướng dẫn Chuyển đổi dự phòng trong trang tóm tắt và nhấp vào Kết thúc để bắt đầu quá trình Chuyển đổi dự phòng:
Khi quá trình chuyển đổi dự phòng hoàn tất, hãy xem lại trang kết quả để đảm bảo rằng không có vấn đề nào gặp phải trong quá trình chuyển đổi dự phòng, như bên dưới:
Từ Trình khám phá đối tượng SSMS, vai trò của bản sao SQL1 sẽ được thay đổi trực tiếp thành Phụ, như được hiển thị bên dưới:
Trong bài viết này, chúng tôi đã mô tả chi tiết, các bước cần được thực hiện để chuẩn bị cho việc tạo trang Nhóm sẵn sàng và cách tạo và cấu hình trang web Nhóm luôn sẵn sàng. Trong bài viết tiếp theo, chúng ta sẽ xem cách khắc phục các sự cố mà bạn có thể gặp phải với trang web Nhóm khả dụng hiện có. Hãy theo dõi.