Otrzymałem zadanie rozwiązania następującego błędu, który pojawia się w naszych dziennikach SQL co kilka minut.
Logowanie użytkownika „domain \ workflowxxx-svc” nie powiodło się. Przyczyna: „Nie udało się otworzyć jawnie określonej bazy danych„ DB_Name ”. [Klient: adres IP WFE Serwer] Błąd: 18456, poziom ważności 14, stan 38.
Wyszukałem w Google błąd, ale wszystkie rozwiązania wydają się wymagać ode mnie przesłuchania bazy danych za pomocą SQL lub uczyń go członkiem grupy administratorów farmy.
To jest SharePoint SQL Server i jestem prawie pewien, że nie jest to zalecane i jeśli spróbujesz, mogę pozostawić cię bez wsparcia.
Dodanie go do grupy Farm Administrators wydaje mi się przesadą.
Sprawdziłem, czy konto ma uprawnienia do SQL Server i myślę, że tak, ale nie jestem ekspertem w dziedzinie uprawnień SQL.
Czy istnieje sposób, aby określić, co jest tego przyczyną, bez konieczności uruchamiania zapytań SQL w bazie danych?
Komentarze
- jakie ' s aktualne uprawnienia konta na serwerze SQL i na farmie?
- jaki jest cel tego konta domain \ workflowxxx-svc? czy działa jakaś usługa w SharePoint? Do której bazy danych próbuje uzyskać dostęp, zawartość, usługę lub konfigurację? czy sprawdziłeś uprawnienia konta usługi w tej bazie danych, jaki ma poziom uprawnień?
Odpowiedź
Jeśli konto próbuje uzyskać dostęp do bazy danych zawartości, należy przypisać uprawnienia za pośrednictwem programu PowerShell:
$db = Get-SPContentDatabase DbName $db.GrantOwnerAccessToDatabaseAccount("domain\workflowxxx-svc")
W przypadku baz danych aplikacji usług należy po prostu przypisać uprawnienia za pośrednictwem pliku centralnego Administrator -> Zarządzaj aplikacjami usługowymi w określonej aplikacji usługowej.
Komentarze
- Dziękuję wszystkim – wszystkie Twoje odpowiedzi wskazały mi właściwy kierunek. Zamiast sprawdzanie, czy baza danych pozwoli na połączenie z kontem. Sprawdziłem, czy konto ma dostęp – Lo i okazało się, że nie ' t.