Po pierwsze, nie należy bezpośrednio przypisywać uprawnień do bazy danych tempdb. Z oczywistych powodów, że jest on odtwarzany przy każdym ponownym uruchomieniu.
Co właściwie rodzi pytanie:dlaczego i tak musisz mieć bezpośrednie uprawnienia do tej bazy danych?
Nie potrzebujesz żadnych uprawnień poza możliwością łączenia się z serwerem sql w celu tworzenia tabel tymczasowych. Jeśli jednak tworzysz prawdziwe tabele w tempdb, gorąco sugeruję, abyś to zmienił, aby użyć do tego celu dedykowanej bazy danych.
AKTUALIZUJ
Na podstawie komentarza Martina wszystko, co mogę powiedzieć, to wow. Nigdy bym nie pomyślał, że to byłaby opcja.
Dobra, teraz, kiedy otrząsnąłem się z szoku.
Utwórz nowe zadanie na serwerze sql, które jest wykonywane zgodnie z harmonogramem. Harmonogram powinien być ustawiony na „Uruchom automatycznie po uruchomieniu agenta programu SQL Server”. Zadanie powinno odtworzyć niezbędne uprawnienia tempdb.
Krótko mówiąc, po ponownym uruchomieniu serwera SQL Server Agent zostanie ponownie uruchomiony (pod warunkiem, że usługa jest ustawiona w ten sposób). Po ponownym uruchomieniu uruchomi to zadanie, które następnie naprawi twoje uprawnienia. Spodziewam się, że witryna pozostanie niedostępna tylko przez kilka sekund dłużej niż całkowite ponowne uruchomienie serwera SQL.