none
Sicherung auf NAS schlägt fehl ... RRS feed

  • Frage

  • Hallo zusammen,

    ich habe folgendes Problem:

    Auf einem Windows 2003R2 SP2 -  SQL2005-Server (V 9.0.4035) läuft eine Datenbank für unsere Zeiterfassung.

    Diese möchte ich per Wartungsplan sichern. Nun passiert folgendes: Sichere ich auf einen Windows-Server (Windowsfreigabe) -> kein Problem. Versuche ich aus der SQL-Sicherung auf ein NAS (IOMega) zu sichern habe ich keinen Zugriff (Zugriff verweigert, Pfad nicht gefunden). Interessant an der ganzen Geschichte ist: Der SQL-Agent läuft mit einem Konto, welches auf dem SicherungsServer alles darf, ebenso auf dem NAS. Verbinde ich mich mit dem Explorer vom SQL-Server auf die Freigabe auf dem NAS habe ich ebenfalls passend die Berechtigungen, kann lesen und schreiben, löschen etc.

    NUR eben der SQL-Agent mit dem Wartungsplan nicht, obwohl dieser mit dem gleichen Konto ausgeführt wird. Was kann ich tun, bzw. wo kann ich nachsehen um dieses Verhalten zu "umgehen" bzw. zu beheben ??

    Hilfe !


    Dankeschön im Voraus,

     

    Grüsse,

     

    Markus

    Montag, 28. Februar 2011 14:51

Antworten

  • Aber die Wartung / Sicherung wird doch vom Agent ausgeführt, oder ? Und das Agent-Konto hat die Berechtigung.

    Der SQL-Server Dienst selbst wird von "Lokales System" ausgeführt. Könnte es daran liegen ?

    Um auch noch Deine Frage zu beantworten: Der Job wird vom SQL Server-Agent ausgeführt, der Schreibzugriff für Backup-File erfolgt aber vom SQL Server selbst und somit unter des Service Account. Kannst Du leicht nachprüfen, lass mal lokal ein Backup erstellen und überprüf dann den "Besitzer" der Backup-Datei; das wird aktuell eben "System" sein. Änderst Du den Account, ist der dann der Besitzer.

    Bevor Du den Acount aber änderst, würde ich vorschlagen, das Backup zunächst lokal zu erstellen und die dann per Batch über den Sql Server-Agent aufs NAS verschieben zu lassen; so hast Du jedenfalls immer ein Backup, auch wenn mal der NAS Zugriff nicht funktioniert.


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    Montag, 28. Februar 2011 16:50

Alle Antworten

  • Hallo Markus,

    eine detailierte Fehlermeldung bekommst Du über den Job-Verlauf: In SSMS => Sql-Server Agent => Aufträge den Job markieren & Rechte-Maus => Verlauf anzeigen.

    Hier wäre zunächst mal wichtig heruaszufinden, ob es an den Rechten liegt oder ob das Laufwerk nicht gefunden wird. Ich nehme doch an, Du verwendest einen UNC Pfad für dne Zielpfad?


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    Montag, 28. Februar 2011 15:07
  • Hallo Olaf,

     

    an den Rechten kann es EIGENTLICH nicht liegen, denn wie gesagt, wenn ich auf dem Server als der User der auch den Agent-Dienst startet angemeldet bin, habe ich vollen Zugriff auf die Freigaben in die ich sichern will. Erstelle ich aber über den Wartungsplan-Assistent die Sicherung kommt bei der Pfad-Eingabe die Meldung

     

    Der Datenbankmoduldienst konnt den angegebenen Ordner nicht auflösen. Der Speicherort ist nicht vorhanden, oder das aktuelle Anmeldekonto hat darauf keinen Zugriff. Überprüfen Sie, ob der Ordner vorhanden ist und ob das Anmeldekonto dafür die Zugriffsberechtigung besitzt.

     

    Aber die Wartung / Sicherung wird doch vom Agent ausgeführt, oder ? Und das Agent-Konto hat die Berechtigung.

    Der SQL-Server Dienst selbst wird von "Lokales System" ausgeführt. Könnte es daran liegen ?


    Grüße,

    markus

     

    Montag, 28. Februar 2011 15:22
  • Hallo Markus,

    leg am besten mal ein SQL Server Agent Proxy Account mit dem User an und führe es damit mal aus.


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    Montag, 28. Februar 2011 15:27
  • Aber die Wartung / Sicherung wird doch vom Agent ausgeführt, oder ? Und das Agent-Konto hat die Berechtigung.

    Der SQL-Server Dienst selbst wird von "Lokales System" ausgeführt. Könnte es daran liegen ?

    Um auch noch Deine Frage zu beantworten: Der Job wird vom SQL Server-Agent ausgeführt, der Schreibzugriff für Backup-File erfolgt aber vom SQL Server selbst und somit unter des Service Account. Kannst Du leicht nachprüfen, lass mal lokal ein Backup erstellen und überprüf dann den "Besitzer" der Backup-Datei; das wird aktuell eben "System" sein. Änderst Du den Account, ist der dann der Besitzer.

    Bevor Du den Acount aber änderst, würde ich vorschlagen, das Backup zunächst lokal zu erstellen und die dann per Batch über den Sql Server-Agent aufs NAS verschieben zu lassen; so hast Du jedenfalls immer ein Backup, auch wenn mal der NAS Zugriff nicht funktioniert.


    Olaf Helper
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich
    Blog Xing
    Montag, 28. Februar 2011 16:50