Tôi đã thực hiện rất nhiều nghiên cứu về điều này.SQL RESTORE WITH RECOVERY; Treo tại 100%
Tôi đang cố khôi phục cơ sở dữ liệu với SQL Server 2014 và tiếp tục treo ở mức 100%.
Rất nhiều người cho rằng giải pháp là chỉ cần đảm bảo rằng bạn khôi phục bằng tùy chọn THU HỒI.
Tôi đã thử điều đó và nó vẫn bị treo ở mức 100%. Tôi đã thử qua SSMS Khôi phục hộp thoại và tôi đã cố gắng chạy các câu lệnh SQL sau:
USE [master]
RESTORE DATABASE [MyDB]
FROM DISK = N'C:\MyDB_backup_2015_05_05_010004_1506557.bak'
WITH
FILE = 1,
MOVE N'MyDB_Data' TO N'F:\MSSQL\DATA\MyDB.mdf',
MOVE N'MyDB_Log' TO N'F:\MSSQL\DATA\MyDB_1.ldf',
NOUNLOAD,
REPLACE,
RECOVERY,
STATS = 2
GO
Khi tôi kiểm tra tình trạng của lệnh qua:
SELECT r.status, r.command, r.wait_type, r.percent_complete
FROM sys.dm_exec_requests r
WHERE r.command like '%restore%' or r.command like '%backup%'
tôi nhận được:
status: suspended
command: RESTORE DATABASE
wait_type: BACKUPTHREAD
percent_complete: 100
Từ đọc sách của tôi ngụ ý rằng RESTORE đang đợi BACKUP hoàn tất, nhưng không có lệnh BACKUP nào được trả về từ truy vấn của tôi tới sys.dm_exec_requests
EDIT: Sau khi thử lại lần nữa và chạy truy vấn ở trên để xem tiến trình của RESTORE ngay từ đầu, tôi có thể thấy rằng giá trị 'percent_complete' đang tăng đều đặn, mặc dù thực tế là 'trạng thái' vẫn giữ nguyên 'bị tạm ngưng' và 'wait_type' vẫn là 'BACKUPTHREAD'.
Vì vậy, mặc dù nó bị 'tạm ngưng' nhưng thực tế nó vẫn đang thực hiện RESTORE.
Vì vậy, tôi đang thua lỗ ...
Bất kỳ ai có ý tưởng gì về cách chẩn đoán sự cố?
Chúc mừng!
Có thể kiểm tra 'sp_who' và' sp_who2' để biết db nào có bản sao lưu đang chờ xử lý không? – Jaxedin
Không có hàng nào từ sp_who hoặc sp_who2 có chứa cmd 'BACKUP' – JTech
Bạn đã chờ bao lâu? Tệp nhật ký của bạn lớn đến mức nào? Có bao nhiêu VLFs? Trạng thái của cơ sở dữ liệu tại thời điểm sao lưu được thực hiện là gì? Bạn đã thử với cờ theo dõi 3004 và 3014 chưa? (Xem [bài đăng này] (http://www.rdx.com/Blog/dba_tips/2011/03/undocumented-trace-flags-inside-the-restore-process/).) –