Ich habe ein verwirrendes Problem, nachdem ich den Computernamen eines Remote-Servers geändert habe, auf dem sich eine lokale SQL Server-Instanz befindet.
Grundsätzlich wurde ein Remote-Server von einem Standort auf einen anderen verschoben. Um dies zu vereinfachen, habe ich die alte Datenbank gesichert und unter einem neuen Datenbanknamen wiederhergestellt, wobei die Daten gelöscht wurden, damit sie als neue Datenbank für die Client-Software verwendet werden können. Ich habe auch den Computernamen geändert, da wir dies immer tun, um jeden Server anhand seiner Standortnummer zu identifizieren.
Die Datenbank kann von der Client-Software problemlos verbunden werden, und ich kann mich direkt bei SQL Server anmelden. Einer meiner SQL Server Agent-Jobs schlägt jedoch mit einem Fehler im Ereignisprotokoll fehl:
Geplanter SQL Server-Job 'Nächtliches Zurücksetzen' (0x4F76FDFFF6DFFE4EA0DE4A70252AD3BD) - Status: Fehlgeschlagen - Aufgerufen am: 2012-02-07 08:10:05 - Meldung: Der Job ist fehlgeschlagen. Es kann nicht festgestellt werden, ob der Eigentümer (Site-19 \ Admin) des Jobs Nightly Reset Serverzugriff hat (Grund: Es konnten keine Informationen zur Windows NT-Gruppe / zum Benutzer 'Site-19 \ Admin', Fehlercode 0x534, abgerufen werden. [SQLSTATE 42000] ( Fehler 15404)).
Jetzt ist 'Site-19' der alte Computername, der geändert und der Server zurückgesetzt wurde. Ich verbinde mich manuell mit 'Site-28', der neuen Site-Nummer, und es wird angezeigt, dass ich mit Site-28 \ Admin mit dem SQL Server verbunden bin. Wenn ich mir jedoch die Eigenschaften des Agent-Jobs ansehe, wird der Eigentümer als Site-19 \ Admin angezeigt, und wenn ich versuche, nach Benutzern zu suchen, um ihn zu ändern, wird Site-28 \ Admin nicht als Option angezeigt , nur Site-19 \ Admin. Wenn ich einen neuen Job aus diesem herausschreibe und den Eigentümer manuell in "Site-28 \ Admin" ändere, wird der neue Job mit dem Eigentümer "Site-19 \ Admin" erstellt.
In sys.servers (oder über sp_helpserver) habe ich nur einen Eintrag: den aktuellen Computernamen. SELECT @@ SERVERNAME gibt jedoch den ursprünglichen Namen der Entwicklungsmaschine zurück (vor zwei Namensänderungen).
Kurz gesagt, ich kann diesen wichtigen SQL Server-Agent-Job nicht ausführen, da er einem Benutzer gehört, der nicht mehr vorhanden ist, und ich kann nicht herausfinden, wie er geändert oder als der richtige Benutzer erstellt werden kann.