Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

SQL Server 2005 Sicherung funktioniert nicht, nachdem ein Script eingefügt wurde

Frage Microsoft

Mitglied: sascha.dr

sascha.dr (Level 1) - Jetzt verbinden

22.10.2012 um 10:28 Uhr, 2611 Aufrufe, 5 Kommentare

OS: Windows Server 2008 Standard SP1
SQL: Microsoft SQL Server 2005

Moin,

ich habe mit Powershell ein Script geschrieben, welches die alten SQL Sicherungen löschen und nur die jüngste (wichtig, nicht die vom Vortag) behalten soll. Das Script funktioniert auch super, wenn ich es manuell ausführe. Nun habe ich das Script per SQL-Server Agent eingefügt.

Typ: Betriebssystem (CmdExec)
Ausführen als: SQL Agent Service Account

Der Eintrag lautet: <powershell.exe "& 'C:\Program Files\xxxx\sql_backup_cleanup.ps1'">

Führe ich den Auftrag manuell aus, funktioniert das ebenfalls.
Diesen Auftrag habe ich dann in den vorhandenen Wartungsplan für das DB Backup eingefügt und als ersten Schritt eingestellt.

Das Script ist folgendes:

$pfad="d:\SQLbackup\sicherung"
$vz=dir $pfad
foreach ($element in $vz)
{
dir $pfad\$element -recurse -include "*.bak" | sort -prop LastWriteTime -descending | select -skip 1 | remove-item
}

Nun lief die Sicherung der DB am Wochenende nicht, mit einer mir nichtssagen Meldung im Protokoll (etwas gekürzt):
Weder Script, noch andere Schritte wurden ausgeführt.

Datum 20.10.2012 00:45:00
Protokoll Auftragsverlauf (Vollsicherung-Benutzer-DB)
Schritt-ID 0
Auftragsname Vollsicherung-Benutzer-DB
Schrittname (Auftragsergebnis)
Dauer 00:01:08
SQL-Schweregrad 0
SQL-Meldungs-ID 0

Meldung
Auftragsfehler Der Auftrag wurde von Zeitplan 4 (Vollsicherung-Benutzerdatenbanken) aufgerufen. Zuletzt wurde Schritt 1 (Unterplan) ausgeführt.
____________________________________________________________________
Protokoll Auftragsverlauf (Vollsicherung-Benutzer-DB)
Schritt-ID 1
Auftragsname Vollsicherung-Benutzer-DB
Schrittname Unterplan
Dauer 00:01:08

Meldung
Ausgeführt als Benutzer: 'XXX\SYSTEM'. Fehler beim Ausführen des Pakets. Fehler bei Schritt.
____________________________________________________________________

Der Wartungsplan sieht wie folgt aus:

1. Mein Script -> SQL-Server Authentifizierung
2. DB Backup -> SQL-Server Authentifizierung
3. Index neu organisieren
Mitglied: virtuelleruser
22.10.2012 um 11:37 Uhr
Hallo Sascha.dr,

mit welchem Account und welcher Berechtigung läuft dein "SQL Server Agent"?

Gruß
virtueller user
Bitte warten ..
Mitglied: sascha.dr
22.10.2012 um 11:42 Uhr
Hi,

der läuft als "Lokales Systemkonto".
Der Haken bei "Datenaustausch zwischen Dienst und Desktop zulassen" ist nicht gesetzt.
Was genau meinst du mit Berechtigung?

Gruß
Sascha
Bitte warten ..
Mitglied: virtuelleruser
22.10.2012 um 11:52 Uhr
Der Account mit dem der Server Agent läuft braucht auf jedenfall das Recht in deinem Backup Verzeichnis zu löschen. Wenn deine Jops laufen ist der SQL Agent der initiator bei lese, schreib und lösch-aktionen. Auf File Ebene greifen dann die berechtigungen des Dienste Accounts da er sich damit beim Betriebssystem meldet. Hatte so ein ähnliches Problem. Habe dazu dann einen lokalen Account angelegt der im SQL selbst als Admin angelegt ist und auf Betriebssystemebene dann im Backup Verzeichniss vollzugriff bekam (und nur dort) und schon war das Problem weg.

Datenaustausch zwischen Dienst und Desktop ist bei mir auch nicht gesetzt.
Bitte warten ..
Mitglied: GuentherH
22.10.2012 um 14:57 Uhr
Hallo.

welches die alten SQL Sicherungen löschen und nur die jüngste (wichtig, nicht die vom Vortag) behalten soll

Und warum erstellst du dafür nicht einfach einen Wartungsplan, sonder extra einen Script?

LG Günther
Bitte warten ..
Mitglied: sascha.dr
22.10.2012, aktualisiert um 18:36 Uhr
Hi,

ich habe mal ein Konto erstellt und werde schauen ob das heute Abend klappt.

@Günther:
Ich habe in den Optionen nur die Möglichkeit gefunden Sicherungen zu löschen die n-Tage alt sind, und das will ich eben nicht. Es soll ja immer die jüngste Sicherung beibehalten werden.

Gruß
Sascha

Nachtrag: Der Job startet nicht, wenn das Script davor hängt. Ich habe das Konto beim SQL Agent Dienst eingetragen und die entsprechenden NTFS Berechtigungen gesetzt.
Da der SQL Server das Skript ja nichtmal startet, könnte es evtl. daran liegen, das der SQL Server 2005 nicht damit zurechtkommt? Ein cmdexec aus welchem das Powershell Skript aufgerufen wird, sollte doch eigentlich passen oder?
Bitte warten ..
Ähnliche Inhalte
Windows Server
Windows server 2012r2 windows server sicherung funktioniert nicht (3)

Frage von meister00 zum Thema Windows Server ...

Datenbanken
gelöst SQL-Abfrage mit "kleiner gleich" funktioniert nicht (2)

Frage von derSESO zum Thema Datenbanken ...

Batch & Shell
Systemvariable funktioniert im Script nicht (4)

Frage von miczar zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Internet
gelöst Jeden morgen Internet-Probleme (56)

Frage von pjrtvly zum Thema Internet ...

Server-Hardware
HP DL380 G7: Booten vom USB via USB 3.1-PCI-e Karte möglich? (24)

Frage von Paderman zum Thema Server-Hardware ...

Windows 7
Bluesreens unternehmensweit (22)

Frage von SYS64738 zum Thema Windows 7 ...

LAN, WAN, Wireless
gelöst IP Adressen - Modem - Switch - Accesspoint (22)

Frage von teuferl82 zum Thema LAN, WAN, Wireless ...