Wo sind die Agents und ihre Jobs?

Photogregor

Neuer Benutzer
Beiträge
4
Hallo Forum,

habe auf einem SBS 2003 eine Fehlermeldung im Anwendungs-Protokoll (gekürzt):

Quelle: SQLServerAgent
Ereigniskennung: 208

SQL-Server Scheduled Job "epo_hip_installation" - Status: Faild -Invoked on ...
The job failed.
The job was invoked by Schedule 9 (epo_installation).
In diversen Foren heißt es dazu häufig, man solle sich im Server Manager unter "Verwaltung" die Jobs der "SQL Server Agents" anschauen. Mein Problem ist aber, dass auf dem Server lediglich ein Tool namens "Microsoft SQL Server Management Studio Express" installiert ist. Dieses Tool meldet nach dem Start eine SQL-Serverversion "8.0.760" und bietet unterhalb der Struktur "Verwaltung" keine "SQL Server Agents".

Es war mal eine Software mit dem Namen "EPO" (McAfee) auf dem Server installiert, bei der Deinstallation wurden offensichtlich Ruinen hinterlassen. Wie komme ich denn jetzt an diese Jobkonfiguration um diesen Job namens "epo_hip_installation" zu canceln?

Bin völliger SQL-Laie - wer kann helfen?

Besten Dank und Gruß,
Patrice
 
Werbung:

Ritschi

Aktiver Benutzer
Beiträge
41
AW: Wo sind die Agents und ihre Jobs?

Hi,
Das der Agent und die Jobs nicht angezeigt werden liegt an der Express Version vom Management Studio.
Entweder Du besorgst Dir eine Vollversion, eigentlich beim SQL Server dabei, ich weiss aber nicht wie der SQL Server in den SBS intergriert ist.



Dann geht das Ganze auch noch über die Kommandozeile auf dem Server.
  • Dos-Box öffnen
  • sqlcmd - S <SERVERNAME> -U <BENUTZER> -P <PASSWORT>
  • use msdb
  • Go
  • IF EXISTS (SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = N'Replication agents checkup')
    EXEC msdb.dbo.sp_update_job @enabled = 1, @job_name=N'Replication agents checkup'
  • Go
Damit ist der Job Inaktiv.
HTH
 

Photogregor

Neuer Benutzer
Beiträge
4
AW: Wo sind die Agents und ihre Jobs?

Hallo Ritschi,

super, vielen Dank für deine Antwort. Da ich weder weiß, von welcher Datenbank bzw. Instanz diese Meldung erzeugt wird noch wie der "Job_name" ist (oder ist das eine von beiden im Ereignisprotokoll genannten Kennungen: epo_hip_installation bzw. epo_installation?) - gibt es einen Befehl, mit dem ich mir Instanzen / Agenten / Jobnamen auf der Kommandozeile auflisten kann?

Beste Grüße,
Patrice
 

Ritschi

Aktiver Benutzer
Beiträge
41
AW: Wo sind die Agents und ihre Jobs?

Hi,
Aber mit dem Management Studio kannst Du Dich mit der Instanz verbinden?
Dann mach einfach den Ordner "Systemdatenbanken" auf und nach einem rechten Mausklick auf "msdb" wählst Du "Neue Abfrage".
In dem Editorfenster gibst Du dann folgendes ein:
SELECT * FROM dbo.sysschedules
Dann siehst Du alle Zeitpläne.
Da wird dann auch mit der schedule_id 9 die epo_installation auftauchen.
Dann kannst einfach den ganzen Zeitplan deaktivieren.
EXEC dbo.sp_update_schedule
@schedule_id = 9,
@enabled = 0
Das kannst Du dann nochmal mit
SELECT * FROM dbo.sysschedules
überprüfen.
Ich hab' das mal ein bischen in dem angehängten Screenshot nachgestellt.
 

Anhänge

  • schedule.jpg
    schedule.jpg
    20,1 KB · Aufrufe: 3

Photogregor

Neuer Benutzer
Beiträge
4
AW: Wo sind die Agents und ihre Jobs?

Hallo Ritschi,

im Prinzip genial! :) Woher weiß man eigentlich sowas???

Ich habe also das SMSE gestartet und mich der Reihe nach mit den verschiedenen Instanzen verbunden, die dort angeboten werden: ServerKoeln, ServerKoeln\BKUPEXEC und ServerKoeln\MICROSOFT##SSEE. Bei jeder Instanz habe ich "MSDB" ausgewählt und deine Abrage gestartet. Bei den ersten beiden Instanzen gibt es eine Fehlermeldung (invalid object name dbo.sysschedules), bei der letzten wird kein Treffer angezeigt.

Mir scheint, es spukt auf diesem Server irgendwo ein SQL-Job herum, dessen Instanz (bzw. Datenbank) gar nicht mehr existiert!?

Noch eine Idee?

Vielen Dank und viele Grüße,
Patrice
 

Ritschi

Aktiver Benutzer
Beiträge
41
AW: Wo sind die Agents und ihre Jobs?

Hi,

Also um alle Instanzen zu sehen, gehst mal auf dem Server in die Windows Diensteverwaltung und schaust da nach was Du unter Dienste und Anwendungen / SQL Server´-Konfigurationsmanager findest.
Da findest Du auch den Agent und sonstige SQL Server Dienste. Der Name der Instanz ist in Klammern hinter dem Dienst angegeben. Die Defaultinstanz, die installiert wird heisst z. B.
SQL Server (MSSQLSERVER)
Dann siehst Du, ob Du wirklich alle Instanzen geprüft hast.
Die Fehlermeldung ist seltsam. War auch sicher die msdb Deine aktuelle Umgebung? Wenn Du den Namen der DB mit angibst funktioniert es von jeder DB aus.
SELECT * FROM msdb.dbo.sysjobschedules

:)
Dranbleiben.
 

Photogregor

Neuer Benutzer
Beiträge
4
AW: Wo sind die Agents und ihre Jobs?

Hallo Ritschi,

SELECT * FROM msdb.dbo.sysjobschedules

wirft in der Tat ein Ergebnis aus. Und siehe da: der Job "epo_installation" ist dabei! :)

Code:
8	896F2DCE-3637-4FD5-AE18-8031DBAEE1EA	epo_jobsched_update_eventdayres
9	B124C369-56AE-4F2C-9B50-9F6C07FE737B	epo_installation
10	780CF501-F368-4425-A87E-F9636376EF2C	Scp_upgrade_sched

Aber der anschließende Befehl

Code:
exec sp_update_schedule

geht schief. Er wirft aus: "Could not find stored procedure sp_update_schedule" (egal ob ich der SP dbo. oder msdb.dbo. voransetze oder nicht). Was hingegen funktioniert ist


Code:
exec sp_delete_job
@job_id = "896F2DCE-3637-4FD5-AE18-8031DBAEE1EA"

Ich habe beide epo_Jobs gelöscht, nur dieser scp_upgrade_Job (was immer der auch tut) ist noch vorhanden.

Ich denke, die Ereignis-Meldungen sind nun Geschichte.

Vielen Dank für deine Bemühungen!!

Beste Grüße,
Patrice
 
Werbung:

Ritschi

Aktiver Benutzer
Beiträge
41
AW: Wo sind die Agents und ihre Jobs?

Hi,

Sorry, mein Fehler. Mit
EXEC msdb.dbo.sp_update_jobschedule
würde es funktionieren.
Aber cool das Du das mit der anderen sp geregelt hast.
Mit
SELECT * from msdb.dbo.sysjobs_view
Kannst Du dann alle Jobs sehen, dann wird vielleicht klar was der scp_upgrade_Job tut.
Was es alles an Verwaltungsinstrumenten gibt (Stored Procedures um Eigenschaften zu ändern und Views um die aktuellen Werte zu sehen) findest Du mit
SELECT * FROM msdb.sys.all_objects
Mit
SELECT * FROM msdb.sys.all_objects WHERE name LIKE '%job%' AND type_desc ='View'
findest Du zu den Sichten, die mit Jobs zu tun haben.
Diese Sichten und Prozeduren sind die Kronjuwelen des Servers, da verwaltet er sich selber, also nichts löschen bitte.
 
Oben