KB4057087 - KHẮC PHỤC: Không thể khôi phục cơ sở dữ liệu bằng cách sử dụng tùy chọn REPLACE nếu đường dẫn tệp chứa dấu tách đường dẫn dư thừa trong SQL Server 2017

Áp dụng cho
SQL Server 2017 Developer SQL Server 2017 Enterprise SQL Server 2017 Enterprise Core

Triệu chứng

Giả sử rằng bạn đang cố gắng khôi phục cơ sở dữ liệu bằng cách sử dụng tùy chọn REPLACE trong SQL Server 2017. Nếu đường dẫn tệp chứa dấu tách đường dẫn dư thừa trong CREATE DATABASE, bạn có thể nhận được thông báo lỗi giống như sau:

Lưu ý

  • Thông báo 3634, Mức 16, Trạng thái 1, Số Dòng
  • Hệ điều hành trả về lỗi '32(Quy trình không thể truy nhập tệp vì nó đang được sử dụng bởi một quy trình khác.)' trong khi cố gắng 'RestoreContainer::ValidateTargetForCreation' trên 'FilePath\FileName.mdf'.
  • Thông báo 3156, Mức 16, Trạng thái 8, Số Dòng
  • Không thể khôi phục tệp 'FileName' thành 'FilePath\FileName.mdf'. Dùng WITH MOVE để xác định vị trí hợp lệ cho tệp.
  • Thông báo 3634, Mức 16, Trạng thái 1, Số Dòng
  • Hệ điều hành trả về lỗi '32(Quy trình không thể truy nhập tệp vì nó đang được sử dụng bởi một quy trình khác.)' trong khi đang cố gắng 'RestoreContainer::ValidateTargetForCreation' trên 'FilePath\FileName.ldf'.
  • Thông báo 3156, Mức 16, Trạng thái 8, Số Dòng
  • Không thể khôi phục tệp 'Tên Tệp' về 'FilePath\FileName.ldf'. Dùng WITH MOVE để xác định vị trí hợp lệ cho tệp.
  • Thông báo 3119, Mức 16, Trạng thái 1, Số Dòng
  • Các sự cố đã được xác định trong khi lập kế hoạch cho câu lệnh KHÔI PHỤC. Các tin nhắn trước cung cấp chi tiết.
  • 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.

Giải pháp thay thế

Bạn gặp lỗi này khi đang cố gắng khôi phục bằng tùy chọn THAY THẾ. Bạn có thể xóa cơ sở dữ liệu hiện có và thực hiện khôi phục như một giải pháp thay thế.

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:

Bản cập nhật tích lũy 4 cho SQL Server 2017

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:

Bản cập nhật tích lũy mới nhất cho SQL Server 2017

Thông tin khác

Về đường dẫn, đây không phải là đường dẫn đến vị trí sao lưu mà là đường dẫn của tệp trong tiêu đề sao lưu mà chỉ có thể xem bằng tiêu đề khôi phục. Để biết thêm thông tin, hãy xem mục Câu lệnh RESTORE - HEADERONLY (Transact-SQL). Ví dụ:


RESTORE HEADERONLY

FROM DISK = N'FilePath\FileName.bak'

WITH NOUNLOAD;

GO

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".

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.