Cơ sở dữ liệu nhóm khả dụng bị kẹt trong chế độ Chờ không đồng bộ hóa / khôi phục


12

Trong khi nâng cấp lưu trữ trong phiên bản SQL Server 2014 SP1 (12.0.4422.0), chúng tôi đã gặp phải sự cố trong đó hai trong số các cơ sở dữ liệu sẽ không khởi động trên phụ sau khi khởi động lại SQL Server. Máy chủ đã ngoại tuyến trong vài giờ trong khi chúng tôi cài đặt ổ SSD mới (lớn hơn) và sao chép các tệp dữ liệu sang ổ đĩa mới. Khi chúng tôi khởi động lại SQL Server, tất cả hai cơ sở dữ liệu bắt đầu đồng bộ hóa lại. Hai cái còn lại được hiển thị trong SSMS là Không đồng bộ hóa / Đang chờ khôi phục .

SSMS Không đồng bộ hóa / Đang chờ khôi phục

Trước đây đã gặp sự cố Không đồng bộ hóa / Phục hồi tương tự , tôi đã kiểm tra trạng thái trong phần Nhóm khả dụng -> Cơ sở dữ liệu sẵn có nhưng chúng hiển thị X màu đỏ:

Nhóm khả dụng, cơ sở dữ liệu sẵn có

và thậm chí cố gắng đình chỉ chuyển động dữ liệu đã tạo ra một thông báo lỗi:

Không thể tạm dừng chuyển động dữ liệu trong cơ sở dữ liệu 'StackExchange.Byc đua.Meta', nằm trên bản sao khả dụng 'ny-sql03' trong nhóm khả dụng 'SENetwork_AG'. (Microsoft.SqlServer.Smo)

Thông tin bổ sung: Một ngoại lệ xảy ra trong khi thực hiện một câu lệnh hoặc lô transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

Cơ sở dữ liệu 'StackExchange.Byc đua.Meta' không thể được mở do các tệp không thể truy cập hoặc không đủ bộ nhớ hoặc dung lượng đĩa. Xem nhật ký lỗi SQL Server để biết chi tiết. (Máy chủ Microsoft Sql, Lỗi: 945)

Tôi đã kiểm tra và các tập tin tồn tại và không có bất kỳ vấn đề cho phép. Tôi cũng đã kiểm tra nhật ký Máy chủ SQL trong SSMS trong Quản lý, nhưng không thấy gì về việc khôi phục đang chờ xử lý hoặc bất kỳ vấn đề nào với hai cơ sở dữ liệu.

Tìm kiếm sự giúp đỡ Tôi tìm thấy hai bài báo khác nhau cho biết cơ sở dữ liệu sẽ cần phải được khôi phục.

Có cách nào để tiếp tục sao chép dữ liệu trên một thứ cấp khi cơ sở dữ liệu bị kẹt trong Đang chờ khôi phục không?

Câu trả lời:


15

Vì máy chủ đã ngoại tuyến trong một thời gian, chúng tôi nghĩ rằng nó có thể đã đi ra ngoài cửa sổ khôi phục của chính. Chúng tôi đã quyết định thử áp dụng nhật ký giao dịch mới nhất trên cơ sở dữ liệu để xem liệu điều đó có khởi động quá trình khôi phục hay không:

-- Remove database from Availability Group:    
Alter Database [StackExchange.Bicycles.Meta] SET HADR OFF;

-- Apply t-logs to catch up. This can be done manually in SSMS or via:
RESTORE LOG [StackExchange.Bicycles.Meta] FROM DISK = '\\ny-back01\backups\SQL\_Trans\SENetwork_AG\StackExchange.Bicycles.Meta\StackExchange.Bicycles.Meta_LOG_20160217_033201.trn' WITH NORECOVERY;

-- Re-join database to availability group
ALTER DATABASE [StackExchange.Bicycles.Meta] SET HADR AVAILABILITY GROUP = [SENetwork_AG];
ALTER DATABASE [StackExchange.Bicycles.Meta] SET HADR RESUME;

Giúp chạy trên máy chủ thứ cấp cho cả hai cơ sở dữ liệu, họ có thể bắt đầu đồng bộ hóa lại.

CẬP NHẬT: Chúng tôi đã gặp sự cố tương tự khi sau khi AG AG chuyển đổi thủ công, một trong các cơ sở dữ liệu trên bản sao chính mới bị kẹt trong chế độ Không đồng bộ hóa (chuyển sang Không đồng bộ hóa / Đang chờ khôi phục sau khi khởi động lại SQL Server) và các bước trên đã hoạt động để giải quyết điều đó vấn đề là tốt.


-2

Lần tới, hãy thử thất bại qua mục chính thành 'không đồng bộ hóa' và quay lại lần nữa. Các thứ cấp nên được đồng bộ hóa.


2
Đây là một đề nghị khủng khiếp .
Arcain
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.