KB4581882 - KHẮC PHỤC: Khôi phục cơ sở dữ liệu không thực hiện được do hết thời gian chờ lệnh sao lưu trong SQL Server 2019

Áp dụng cho
SQL Server 2019 on Linux

Triệu chứng

Trong Microsoft SQL Server 2019, bạn cố gắng khôi phục cơ sở dữ liệu lớn bằng cách chạy lệnh sau:

SỬ DỤNG [trang chủ]

KHÔI PHỤC CƠ SỞ DỮ LIỆU [Tên_cơ sở dữ liệu]

FROM DISK = N'/var/opt/mssql/data/FileName'

VỚI TỆP = 1, DI CHUYỂN N'Archive_HR' ĐẾN N'/var/opt/mssql/data/FileName', DI CHUYỂN N'DatabaseName' TO N'/var/opt/mssql/data/FileName', NOUNLOAD, STATS = 5

Lệnh này trả về thông báo lỗi sau:

Đã bắt đầu thực hiện truy vấn tại Line LineNumber

Thông báo 42019, Mức 16, Trạng thái 4, Số Dòng

Khôi phục cơ sở dữ liệu được quản lý Thao tác không thành công. Lỗi dịch vụ nội bộ.

Thông báo 3013, Mức 16, Trạng thái 1, Số Dòng

KHÔI PHỤC CƠ SỞ DỮ LIỆU đang chấm dứt bất thường.

Tổng thời gian thực hiện: 00:01:51.093

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".

Giải pháp

Sự cố này đã được khắc phục trong bản cập nhật tích lũy sau đây dành cho SQL Server:

Giới thiệu về các bản cập nhật tích lũy cho SQL Server:

Mỗi bản cập nhật tích lũy mới dành cho SQL Server chứa tất cả các bản sửa lỗi nóng và bản sửa lỗi bảo mật được tích hợp 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:

Giải pháp thay thế

Để khắc phục sự cố này, bạn có thể sử dụng IP từ dịch vụ Kubernetes được tạo bên dưới và kết nối với phiên bản SQL Server:

      

Hiển thị cổng 1533:

kubectl -n <namespaceName> hiển thị pod <podName> --port=1533 --name=<serviceName> --type=NodePort

      

Và sau đó bạn có thể chạy bốn câu lệnh sau theo cách thủ công:

  1. khôi phục cơ sở dữ liệu
  2. ALTER DATABASE databaseName <> SET RECOVERY FULL
  3. SAO LƯU CƠ SỞ DỮ LIỆU <DATABASEName> TO DISK='NUL'
  4. ALTER AVAILABILITY GROUP containedag ADD DATABASE <databaseName>

Tham khảo

Tìm hiểu về thuật ngữ mà Microsoft dùng để mô tả các bản cập nhật phần mềm.