Rechte für SQL Agent richtig setzen

04/05/2009 - 08:28 von Manuel Kobloch | Report spam
Hallo,

ich habe ein Problem, was wohl an den Zugriffsberechtigungen liegt.
Kann mir jedoch nicht selbst helfen. Deshalb versuche ich hier Hilfe
zu finden. Und zwar:

Wir haben zwei Datenbanken. Ich nenne sie hier mal DatenbankMain und
DatenbankArchiv. Der SQL Agent làuft als Windowsbenutzer "SQLClient",
den ich selbst erstellt habe und aus Sicherheitsgründen auch keine
Adminrechte besitzt. Ich kann mich nur noch schwach daran erinnern,
aber ich glaube wàhrend der Installation konnte man den SQL Agent
direkt mit den Rechten für die DatenbankMain versehen.

Daher hat die DatenbankMain den Benutzer "SQLAgent" mitsamt dem Shema
"SQLAgent" und die DatenbankArchiv nicht, da sie erst spàter
hinzugefügt wurde. Soviel zur Vorgeschichte. Jetzt das Problem. Ich
habe ein SSIS Paket namens "Daten Archivieren" erstellt, welches Teile
von 10 Tabellen aus DatenbankMain nimmt und sie in DatenbankArchiv
schreibt. Das Paket làuft einwandfrei durch, wenn man es aus dem
Visual Studio heraus oder auch aus dem Server Management Studio
startet. Doch sobald ich ein Job erstelle, bricht er mit folgender
Meldung ab:

Meldung
Ausgeführt als Benutzer: ''D171SQL1\SQLClient''. Microsoft (R) SQL
Server-Paketausführungsprogramm Version 10.0.1600.22 for 64-bit
Copyright (C) Microsoft Corp 1984-2005. Alle Rechte vorbehalten.
Gestartet: 15:14:21 Fehler: 2009-04-30 15:14:22.88 Code:
0xC0202009 Quelle: Bericht01 archivieren OLE DB-Quelle [1]
Beschreibung: SSIS-Fehlercode 'DTS_E_OLEDBERROR'. OLE DB-Fehler.
Fehlercode: 0x80040E14. Ein OLE DB-Datensatz ist verfügbar. Quelle:
'Microsoft OLE DB Provider for SQL Server' HRESULT: 0x80040E14
Beschreibung: 'Anweisung(en) konnte(n) nicht vorbereitet werden.'.
Ein OLE DB-Datensatz ist verfügbar. Quelle: 'Microsoft OLE DB Provider
for SQL Server' HRESULT: 0x80040E14 Beschreibung: 'Ungültiger
Objektname 'bericht01'.'. Fehlerende Fehler: 2009-04-30
15:14:22.89 Code: 0xC004706B Quelle: Bericht01 archivieren
SSIS.Pipeline Beschreibung: Fehler beim Überprüfen von 'Komponente
'OLE DB-Quelle' (1)'. Überprüfungsstatus: 'VS_ISBROKEN'. Fehlerende
Fehler: 2009-04-30 15:14:22.89 Code: 0xC004700C Quelle:
Bericht01 archivieren SSIS.Pipeline Beschreibung: Fehler beim
Überprüfen von mindestens einer Komponente. Fehlerende Fehler:
2009-04-30 15:14:22.89 Code: 0xC0024107 Quelle: Bericht01
archivieren Beschreibung: Fehler bei der Tasküberprüfung.
Fehlerende DTExec: Die Paketausführung wurde beendet. DTSER_FAILURE
(1). Gestartet: 15:14:21 Beendet: 15:14:22 Verstrichen: 0.983
Sekunden. Fehler beim Ausführen des Pakets. Fehler bei Schritt.

Andere Jobs, die nur die DatenbankMain betreffen funktionieren
einwandfrei. Daher vermute ich, dass es an den Benutzer "SQLAgent"
liegt, den es nicht auf DatenbankArchiv gibt. Doch mein Versuch
einfach den Benutzer "SQLAgent" für DatenbankArchiv anzulegen brachte
keinen Erfolg. Wobei sich da schon Unterschiede ergaben. Wenn man den
Benutzer SQLAgent auf DatenbankMain bearbeitet, kann man sehen, dass
"Keine Anmeldung" ausgewàhlt wurde. Diese Option ist beim Erstellen
des neuen Benutzers auf DatenbankArchiv grau hinterlegt. Ich muss
zwangslàufig ein Windowsbenutzer angeben.

Kann mir einer genau sagen, wie ich die Rechte wo überall setzen muss,
damit mein SQLAgent auch Rechte hat, um dieses Paket vollstàndig
abarbeiten zu können?

Danke schon mal für die Hilfe.
 

Lesen sie die antworten

#1 Gerald Aichholzer
04/05/2009 - 09:11 | Warnen spam
Hallo Manuel,

Manuel Kobloch wrote:
[...]

Daher hat die DatenbankMain den Benutzer "SQLAgent" mitsamt dem Shema
"SQLAgent" und die DatenbankArchiv nicht, da sie erst spàter
hinzugefügt wurde. Soviel zur Vorgeschichte. Jetzt das Problem. Ich
habe ein SSIS Paket namens "Daten Archivieren" erstellt, welches Teile
von 10 Tabellen aus DatenbankMain nimmt und sie in DatenbankArchiv
schreibt. Das Paket làuft einwandfrei durch, wenn man es aus dem
Visual Studio heraus oder auch aus dem Server Management Studio
startet. Doch sobald ich ein Job erstelle, bricht er mit folgender
Meldung ab:

Meldung
Ausgeführt als Benutzer: ''D171SQL1\SQLClient''. Microsoft (R) SQL
Server-Paketausführungsprogramm Version 10.0.1600.22 for 64-bit
Copyright (C) Microsoft Corp 1984-2005. Alle Rechte vorbehalten.
Gestartet: 15:14:21 Fehler: 2009-04-30 15:14:22.88 Code:
0xC0202009 Quelle: Bericht01 archivieren OLE DB-Quelle [1]
Beschreibung: SSIS-Fehlercode 'DTS_E_OLEDBERROR'. OLE DB-Fehler.
Fehlercode: 0x80040E14. Ein OLE DB-Datensatz ist verfügbar. Quelle:
'Microsoft OLE DB Provider for SQL Server' HRESULT: 0x80040E14
Beschreibung: 'Anweisung(en) konnte(n) nicht vorbereitet werden.'.


[...]

höchstwahrscheinlich trifft folgendes Problem auf dich zu:
http://support.microsoft.com/?scid=...8760&x&y=9

hth,
Gerald

Ähnliche fragen