Announcement

Collapse
No announcement yet.

SQL Server-Agent bat-Datei starten

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Server-Agent bat-Datei starten

    Hallo,

    Ich habe eine bat-Datei geschrieben.
    wie kann ich aus einem MS-SQL Aerver-Agent die eine bat-Datei Ausführen/Starten...???


    DANKE
    Zuletzt editiert von danijelhr; 24.02.2009, 08:39.

  • #2
    Indem Du einen Job anlegst, einen Schritt vom Typ "Betriebssystem (CmdExec)" anlegst und die BAT ausführen lässt.
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment


    • #3
      hab ich gemach funkt. aber nicht,
      hab einen Schritt gemacht (test), Typ = Betriebssystem (CmdExec).

      Nur beim Befehl, da mach ich was falsch, hast du ein Beispiel...?

      Comment


      • #4
        Du hast also in der Kommandobox einen Befehl eingetragen - wenn ja, welchen?
        Und was passiert, wenn du den Auftrag ausführst - Fehlermeldung, gar nichts?
        Schon mal nach dem Start mit rechter Maustaste auf den Auftrag geklickt und dann "Verlauf anzeigen" gemacht und nachgesehen, was dort steht?
        Und du weisst, dass der Agent normalerweise im service account läuft und daher nicht deine, sondern dessen Rechte hat. Und falls du etwas ausführen willst, was ein Admin darf, nicht aber der Agent Acount, dann wird es logischerweise auch nicht gehen.

        bye,
        Helmut

        Comment


        • #5
          Bei mir funktioniert es problemlos (wenn man das was Helmut schrieb beachtet).

          In dem dem JobStep kannst Du genau das angeben, was Du auch in einer Command-Console machen kannst.
          Den Tipp, Dateien mit enthaltenen Leerzeichen in Anführungszeichen zu setzen, gibt Dir ja schon der der Wizard selbst.
          Olaf Helper

          <Blog> <Xing>
          * cogito ergo sum * errare humanum est * quote erat demonstrandum *
          Wenn ich denke, ist das ein Fehler und das beweise ich täglich

          Comment


          • #6
            Ich habe zB.:
            start outlook - eingegeben und gestartet. Normalerweise muss das Outlook aufgehen...tut es aber nicht, und beim Verlauf hab ich auch keine Fehlermeldung.
            Auftrag "test" starten Status = Erfolg
            Auftrag "test" ausführen Status = Erfolg

            Und der Account hat auch admin-Rechte.....

            Grüße..

            Comment


            • #7
              start outlook - eingegeben und gestartet. Normalerweise muss das Outlook aufgehen
              Hä?¿?¿
              Ich glaube, da hast Du so einiges noch nicht verstanden.
              Zum einen wird der Job auf dem Rechner ausgeführt, auf dem der SQL Server läuft; also in der Regel ein Server, der irgendwo steht.
              Selbst wenn der SQL Server lokal auf Deinem Rechner installiert ist, wird "Outlook" nicht in Deiner Windows-Session starten. Es wird im Kontext des SQL-Server Agent ausgeführt.
              Und ein Programm starten zu wollen, das eine GUI hat und Interaktion erwartet, ist nun wirklich nicht die beste Idee.

              Account hat auch admin-Rechte
              Sollte er aber besser nicht haben.
              Olaf Helper

              <Blog> <Xing>
              * cogito ergo sum * errare humanum est * quote erat demonstrandum *
              Wenn ich denke, ist das ein Fehler und das beweise ich täglich

              Comment


              • #8
                Ja, ich hab mir gedacht das ich Script's über den SQL Agent Zeitlich steuern u. Ausführen kann.
                Ich habe schon einige SQL-Funktionen die der Agent Ausführt usw... Dann hab ich mir gedacht ob das auch mit den Scripts funktioniert ...

                Comment


                • #9
                  Gehen tut es ja.

                  Aber solche Sachen würde ich dann eher über den Windows Taskplaner erledigen.
                  Olaf Helper

                  <Blog> <Xing>
                  * cogito ergo sum * errare humanum est * quote erat demonstrandum *
                  Wenn ich denke, ist das ein Fehler und das beweise ich täglich

                  Comment


                  • #10
                    Du sagst es geht, hast du vl. ein Beispiel, das ich es Probieren kann...!?!

                    ähm...Ja ich weiß Taskplaner, mag ich nicht so...

                    Comment


                    • #11
                      Wenn Du schon ein Beispiel brauchst, um es zu testen, wie willst Du dann was produktiv umsetzen?

                      Also, gib in dem Job mal folgendes ein:

                      dir c:\*.* >C:\DirText.txt

                      (Autsch, direkt ins Root, böse...)

                      oder schreibe es in eine BAT, die in C:\ liegt und gibt im Job dann

                      C:\Test.bat

                      eine. Nach Ausführung solltest Du dann auf dem Server die Text-Datei finden.
                      Olaf Helper

                      <Blog> <Xing>
                      * cogito ergo sum * errare humanum est * quote erat demonstrandum *
                      Wenn ich denke, ist das ein Fehler und das beweise ich täglich

                      Comment


                      • #12
                        Hallo O.Helper,

                        Ich vermute, danielhr meint eher, wie müsste der Befehl aussehen, damit der Server zB Outlook auf dem Client öffnet. Das geht in Richtung RPC und ist kein Thema, in dem ich mich recht auskenne. Soweit ich mich erinnern kann gibt es da zB. ein Tool namens psexec, mit dem kann man Prozesse auch auch Clients starten, allerdings gehören die dem Server. Man kann zwar noch den Account ändern, unter dem die Anwendung ausgeführt wird, es läuft aber trotzdem nicht ganz so, wie wenn der Anwender die Applikation lokal startet.
                        Kann hier also nicht weiterhelfen, finde es aber auch nicht sinnvoll, das so aufzubauen, nur weil man kein Freund des Taskplaners ist.

                        bye,
                        Helmut

                        Comment

                        Working...
                        X