Vor einigen Monaten haben wir SQL Server 2012 in Windows 2008 R2 unter dem virtuellen Konto " NT Service \ MSSQLSERVER " installiert .
Vor einigen Tagen hat einer der Administratoren der IT-Abteilung die Volltextsuchkomponente auf dem SQL Server 2012 installiert (das Problem ist, dass er sich nicht erinnern konnte, welche Einstellungen er während des Setups genau gewählt hat), und danach treten einige Probleme auf ::
A. Wir haben die Windows-Protokolle überprüft. In der Anwendung stellen wir fest, dass MSSQLServer viele anormale Protokolle enthält, z.
Die SQL Server-Netzwerkschnittstellenbibliothek konnte den Dienstprinzipalnamen (SPN) [MSSQLSvc / FooComputer.FooDomain.com: 1433] für den SQL Server-Dienst nicht registrieren. Windows-Rückkehrcode: 0xffffffff, Status: 63. Wenn ein SPN nicht registriert wird, kann die integrierte Authentifizierung NTLM anstelle von Kerberos verwenden. Dies ist eine Informationsnachricht. Weitere Maßnahmen sind nur erforderlich, wenn die Kerberos-Authentifizierung gemäß den Authentifizierungsrichtlinien erforderlich ist und der SPN nicht manuell registriert wurde.
Es scheint die Ursache zu sein, aber keine Ahnung, warum und wie man es löst.
B. SQL-Jobs mit Eigentümern, die Domänenbenutzer wie "MyDomain \ FooUser" sind, schlagen mit der folgenden Meldung fehl:
Der Job ist fehlgeschlagen. Es kann nicht festgestellt werden, ob der Eigentümer (MyDomain \ FooUser) des Jobs JOBNAME Serverzugriff hat (Grund: Es konnten keine Informationen über die Windows NT-Gruppe / den Benutzer 'MyDomain \ FooUser', Fehlercode 0x6e. [SQLSTATE 42000] (Fehler 15404) abgerufen werden.)
Wir haben intensiv gesucht und schließlich den Besitzer durch "sa" ersetzt und das Problem gelöst, obwohl es nicht so anständig ist. Trotzdem möchten wir herausfinden, warum.
C. Sie können nicht auf Netzwerkressourcen wie einen Ordner auf anderen Computern zugreifen. Die folgende SQL gibt beispielsweise "Zugriff verweigert" zurück:
DECLARE @CopyCommand nvarchar(1000)
set @CopyCommand = 'dir ' + Char(34) + '\\FooComputer\FooFolder\' + Char(34)
EXEC master..xp_cmdshell @CopyCommand
Für Problem C haben wir laut MSDN ( http://technet.microsoft.com/en-us/library/ms143504.aspx ) versucht, dem Ordner den vollständigen Kontrollzugriff für das Konto "MyDomain \ SQLServerComputerName $" zu gewähren Ergebnis.
quelle
Als wir auf dieses Problem stießen, bestand unsere Lösung darin, den Ordner zu suchen und die Berechtigungen hinzuzufügen, die für das virtuelle Konto erforderlich sind, das dies benötigt. Nachdem wir das Konto einfach durch Eingabe hinzugefügt hatten, überwachten wir die Protokolldateien und stellten fest, dass wir das Problem mit diesem Ordner / dieser Datei nicht mehr hatten.
quelle
Alte Frage, scheint aber keine richtige Antwort zu haben. NT Service \ MSSQLSERVER ist ein lokales virtuelles Konto und greift als Computerkonto auf das Netzwerk zu. Und solange das Computerkonto Zugriff auf Freigaben und Dateisysteme hat, sollten Sie beispielsweise in der Lage sein, auf UNC-Pfaden im Netzwerk zu sichern. Siehe Konfigurieren von Windows-Dienstkonten und -Berechtigungen .
quelle