Trước hết, bạn không nên chỉ định quyền trực tiếp cho tempdb. Vì những lý do rõ ràng mà nó được tạo lại sau mỗi lần khởi động lại.
Điều này thực sự đặt ra một câu hỏi:tại sao bạn vẫn cần phải có quyền trực tiếp đối với cơ sở dữ liệu này?
Bạn không cần bất kỳ quyền nào ngoài khả năng kết nối với máy chủ sql để tạo bảng tạm thời. Tuy nhiên, nếu bạn đang tạo các bảng thực trong tempdb, thì tôi thực sự khuyên bạn nên thay đổi điều này để sử dụng cơ sở dữ liệu chuyên dụng cho mục đích này.
CẬP NHẬT
Dựa trên nhận xét của Martin, tất cả những gì tôi có thể nói là tuyệt vời. Tôi thậm chí sẽ không bao giờ nghĩ rằng đây sẽ là một lựa chọn.
Được rồi, bây giờ tôi đã bình phục sau cú sốc.
Tạo một công việc mới trong máy chủ sql thực hiện theo lịch trình. Lịch trình phải được đặt thành "Bắt đầu tự động bất cứ khi nào tác nhân SQL Server bắt đầu". Công việc sẽ tạo lại các quyền tempdb cần thiết của bạn.
Tóm lại, khi máy chủ được khởi động lại, SQL Server Agent sẽ được khởi động lại (miễn là dịch vụ được đặt theo cách đó). Khi khởi động lại, nó sẽ bắt đầu công việc này, sau đó sẽ sửa các quyền của bạn. Tôi hy vọng trang web sẽ ngừng hoạt động chỉ vài giây nữa so với thời gian cần thiết để máy chủ SQL khởi động lại hoàn toàn.