Sau khi bạn áp dụng hotfix này, bạn phải cho phép cờ theo dõi 1800 như là một tham số khởi động trên tất cả các máy chủ hoặc bản sao có kích thước 512 byte vật lý cung cấp và khởi động lại chúng, để làm cho hotfix này làm việc một cách chính xác.
Triệu chứng
Hãy xem xét tình huống sau:
-
Bạn bật tính năng Nhóm Sẵn sàng AlwaysOn hoặc Logshipping trong Microsoft SQL Server.
-
Các đĩa lưu trữ các tập tin đăng nhập của bản sao chính và phụ trong một AlwaysOn availability Group (AG) có kích thước ngành khác nhau. Hoặc trong môi trường Logshipping, các đĩa lưu trữ các tập tin đăng nhập cho Logshipping máy chủ chính và Logshipping máy chủ thứ cấp có kích thước ngành khác nhau. Ví dụ:
-
Tệp nhật ký bản sao chính nằm trên một đĩa có kích thước ngành 512 byte. Tuy nhiên, các tệp bản sao thứ cấp đăng nhập nằm trên một đĩa có kích thước ngành 4 kilobyte (KB).
-
Tệp nhật ký bản sao chính nằm trên một hệ thống cục bộ tại chỗ có kích thước ngành 512 byte. Tuy nhiên, bản sao thứ cấp nằm trên một đĩa Windows Azure lưu trữ có kích thước ngành 4 kilobyte (KB).
-
Trong trường hợp này, thông báo lỗi sau đây được ghi nhật ký SQL Server nhật ký lỗi. Thông báo lỗi có thể tiếp tục trong một thời gian sau khi khởi động lại nếu đã có nhật ký không được áp dụng cho thứ cấp trước khi khởi động lại máy chủ.
Đã có X sai lệch đăng nhập IOs yêu cầu trở lại IO đồng bộ. IO hiện tại là trên tập tin ....
Ngoài ra, đồng bộ hóa AG hoặc Logshipping chạy rất chậm do I/HĐH đồng bộ. Nếu bản sao phụ nằm trong Windows Azure Storage, sẽ mất nhiều thời gian hơn dự kiến để hoàn tất quá trình đồng bộ hóa.
Lưu ý Sự cố này xảy ra khi bạn sử dụng cả hai ổ đĩa mới có kích thước cung 4 KB và ổ đĩa cũ có kích thước cung 512 byte. Để biết thêm thông tin về các ổ đĩa mới, hãy xem SQL Server - Ổ đĩa mới Sử dụng kích thước cung 4K và kích thước cung SQL Server-Dung lượng lưu trữ/VHDx và kích thước cung 4K.
Giải pháp
Sự cố này đã được khắc phục lần đầu trong bản cập nhật tích lũy sau đây của SQL Server.
Bản cập nhật tích lũy 5 cho SQL Server 2014 /en-us/help/3011055
Bản cập nhật tích lũy 3 cho SQL Server 2012 SP2 /en-us/help/3002049
Bản cập nhật tích lũy 13 cho SQL Server 2012 SP1 /en-us/help/3002044
Sau khi bạn áp dụng các hotfix và cho phép cờ theo dõi 1800 như là một tham số khởi động trên tất cả các máy chủ sao chép chạy trên một đĩa có kích thước ngành 512 byte, bạn nhận thấy một sự gia tăng nhỏ trong kích thước của các tập tin sau đây:
-
Tệp nhật ký giao dịch
-
Bản sao lưu nhật ký
Ngoài ra, bạn nhận thấy rằng các thông báo sau đây được ghi vào SQL Server nhật ký lỗi của máy chủ chính:
The tail of the log for database '<database name>' is being rewritten to match the new sector size of 4096 byte
Đây là thông báo thông tin có thể được bỏ qua một cách an toàn.
Mỗi bản cập nhật tích lũy mới dành cho SQL Server sẽ chứa tất cả các bản cập nhật nóng và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất cho SQL Server:
Cách giải quyết
Để khắc phục sự cố này, hãy di chuyển tệp nhật ký giao dịch tại đích đến ổ đĩa có Byte trên mỗi lĩnh vực vật lý được đặt là 512 byte.
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Thông tin Bổ sung
Là một thực hành tốt nhất, cố gắng để đảm bảo rằng tất cả các đĩa trên tất cả các bản sao (ít nhất là tất cả các đĩa mà tập tin nhật ký máy chủ) có cùng kích thước ngành. Trong môi trường hỗn hợp, nơi thứ cấp có một lĩnh vực vật lý của 512 byte và chính có kích thước ngành 4 KB, TF 1800 nên được sử dụng như một cờ khởi động trên tất cả các máy chủ hoặc bản sao có kích thước vật lý 512 byte và khởi động lại. Điều này đảm bảo rằng các định dạng liên tục đăng nhập sử dụng một kích thước 4-KB cung.
Để biết thêm thông tin về cách SQL Server hoạt động với quy mô ngành lớn hơn, hãy xem bài đăng sau trên blog hỗ trợ:
SQL Server-Không gian lưu trữ/VHDx và kích thước cung 4K
Bạn có thể sử dụng tiện ích nhắc lệnh Fsutil để xác định byte cho mỗi giá trị vật lý lĩnh vực. Nếu tham số này không hiển thị trong đầu ra, bạn phải áp dụng hotfix được chỉ định trong bài viết KB982018 .
Để xác minh loại ổ đĩa mà bạn có, hãy làm theo các bước sau:
-
Chạy lệnh sau tại lời nhắc chỉ lệnh mức cao:
Fsutil fsinfo ntfsinfo x: Lưu ý Chỗ dành sẵn x đại diện cho ổ đĩa mà bạn đang kiểm tra.
-
Sử dụng các giá trị cho Bytes mỗi ngànhvà Byte cho mỗi lĩnh vực vật lý để xác định loại ổ đĩa mà bạn có. Để thực hiện điều này, hãy sử dụng bảng sau đây:
Giá trị "Byte trên Mỗi Chặng"
Giá trị "Byte cho mỗi lĩnh vực vật lý"
Loại ổ đĩa
4096
4096
Bản địa 4K
512
4096
Định dạng Nâng cao (còn được gọi là 512E)
512
512
512-byte bản địa