Triệu chứng
Khi bạn thiết lập một bản sao giao dịch và khởi tạo một thuê bao giao dịch từ bản sao lưu trong Microsoft SQL Server 2012 hoặc SQL Server 2014. Trong quá trình đồng bộ hóa ban đầu, đại diện phân phối không thành công và bạn nhận được các lỗi sau đây:
Kết nối với người đăng ký Initializingkhông có các giao dịch được nhân rộng sẵn dùng. 42000 không thể tìm thấy thủ tục được lưu trữ ' sp_MSins_ '. 281242000 không thể tìm thấy thủ tục được lưu trữ ' sp_MSins_ '. 2812
Nguyên nhân
Vấn đề này gây ra bởi sự khác biệt trong thời gian giữa đại diện bộ đọc Nhật ký và thực hiện ban đầu của đại diện phân phối. Nếu có nhiều thay đổi về giao tác diễn ra tại nhà phát hành có một sự chậm trễ trong việc tạo tác nhân trình đọc Nhật ký và thêm các tập lệnh thủ tục được lưu trữ tùy chỉnh vào MSRepl_commands trong cơ sở dữ liệu phân phối. Nếu đại diện phân phối bắt đầu và đã thực hiện một roundtrip đến cơ sở dữ liệu phân bố trước khi các lệnh này được thêm vào, nó sẽ di chuyển tem thời gian giao dịch phía trước và sẽ báo cáo ' không có các giao dịch có thể phát hiện '. Những nỗ lực đồng bộ sau này do đại diện phân phối không thể phát hiện các lệnh tạo thủ tục được lưu trữ tùy chỉnh và sẽ không thành công với các lỗi được đề cập trong phần "các triệu chứng".
Giải pháp
Vấn đề lần đầu tiên được khắc phục trong bản Cập Nhật tích lũy SQL Server sau đây.
Cập Nhật tích lũy 1 cho SQL Server 2014 /en-us/help/2931693
Bản Cập Nhật tích lũy 9 cho SQL Server 2012 SP1 /en-us/help/2931078
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Kiểm tra các bản Cập Nhật tích lũy mới nhất cho SQL Server:
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".