Announcement

Collapse
No announcement yet.

Agent lässt sich nicht starten

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

  • Agent lässt sich nicht starten

    Hallo!
    <P>
    Ich war letzte Woche auf einer Schulung zur Sql Server Administration. Leider hatte der Dozent KEINE Ahnung von der MSDE und hat daher auch nie gesagt, ob es da Unterschiede zum echten Server gibt.
    Nun habe ich die erlernten Sachen anweden wollen und es geht nicht.
    <P>
    Nur wird mein schöner Wartungsplan wohl nutzlos sein, denn ich kriege den Agent nicht gestartet.
    Das läuft unter Win98 SE. (Auf meinem Win2000 PC läuft er...)
    <P>
    Wie gebe ich dem Starthilfe? Manuelles Starten geht nicht und auch nach einer Autostartanleitung läuft er nicht.
    (http://vyaskn.tripod.com/code/sql_server_agent_autostart.txt)
    <P>
    Danke für Hilfe
    Sonja

  • #2
    Hallo Sonja,

    die genannte Anleitung hilft Dir wirklich nichts, den sie beschreibt den Dienst-Start.
    <BR>

    Aber: Unter Win98 gibt es keine Dienste, nur unter NT-Systemen, auch die MSDE selbst läuft dort nicht als Dienst, sondern als selbständiges Programm.
    <BR>

    Entsprechend wirst Du den SQL Server Agent als Programm laufen lassen müssen, die EXE findest Du unter
    <InstPath>\Microsoft SQL Server\MSSQL\Binn\sqlagent.EXE
    Ob das aber wie gewünscht funktioniert, weiss ich nicht, da wir hier nirgends Win98 haben, konnte ich es auch nicht ausprobieren.
    <BR>

    Viel Erfolg,
    <BR>

    Ola
    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
      Danke für den Tip, Olaf.
      <P>
      Leider geht es nicht, der will nur als Dienst laufen.

      Ich glaube, ich habe ein Problem. *verzweifel

      Comment


      • #4
        Hallo Sonja,<BR>
        in der Online-Hilfe zum SQL Server steht:<BR>
        <i>Der SQL Server-Agent wird auch vom Betriebssystem Microsoft Windows 98 unterstützt. Der SQL Server-Agent kann jedoch nicht mit der Windows-Authentifizierung unter Windows 98 verwendet werden.</i><BR>
        Muss also irgendwie gehen. Weiter habe ich gefunden:<BR><i>

        sqlagent -c [-v]<BR>

        -c
        Zeigt an, dass der SQL Server-Agent über die Eingabeaufforderung ausgeführt wird und unabhängig vom Windows NT-Dienstkontroll-Manager ist. Wenn -c verwendet wird, kann der SQL Server-Agent weder über die Anwendung Dienste in der Systemsteuerung noch über SQL Server-Dienst-Manager gesteuert werden.<BR>
        -v
        Zeigt an, dass der SQL Server-Agent im ausführlichen Modus ausgeführt werden und Diagnoseinformationen in das Fenster Eingabeaufforderung schreiben soll. Die Diagnoseinformationen sind mit den Informationen identisch, die in das Fehlerprotokoll des SQL Server-Agents geschrieben werden.</i><BR><BR>
        Versuch es also mal mit
        sqlagent.exe -c<BR>
        Also, unter WinXP funktioniert es. Was ich aber nicht herausgefunden habe ist, wie und wo man den Account angibt, mit dem sich der Agent anmelden soll, bei mir war es der Windows-Account. Könnte evt. mit dem SCM funktionieren, eine Beschreibung der Parameter findest Du unter
        http://msdn.microsoft.com/library/default.asp?url=/library/en-us/coprompt/cp_sqldiag_96k9.asp

        <BR>
        Gruß, Ola
        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


        • #5
          Hallo Olaf,
          <P>
          danke für den Link zu den Commandlinetools.
          Leider stehen solche Infos nicht in den Büchern, die ich bisher habe und mit dem SQL-Teil der MSDN bin ich noch nicht so fit.
          <P>
          Ich habe es mit -c versucht, aber leider klappt es wie von dir befürchtet nicht. Es gibt wieder nichtmal eine Fehlermeldung, das macht es echt schwer.
          <P>
          Das SMC sieht aus, wie die Kommandozeilenversion des Fensters, wenn man auf das Symbol im Systray doppelklickt. Dadrüber kann ich ja nicht starten - ob das wohl per Kommandozeile geht?
          <P>
          Ich werde nochmal lesen, aber ich fürchte, dass ich mir etwas anderes einfallen lassen muss.
          Man kann doch den ganzen Kram, was so ein Wartungsplan macht auch per Kommandozeile im OSQL, oder?
          Dann könnte ich doch Scripte erzeugen und die dann aus einem externen Programm heraus aufrufen.
          <P>
          Was hälst du von der Idee? Ist die sehr abwegig?
          Ich habe eh schon eine Windowsanwendung, die den SQL-Server nutzt - die könnte das ja im Hintergrund übernehmen.
          Ich müßte mir nur noch das Buch kaufen, was ich gestern gesehen habe...
          <P>
          Grüsse
          Sonj

          Comment


          • #6
            Hallo Sonja,

            ganz genau, mit SCM kannst Du die gleiche Aktionen per Kommandozeile durchführen, wie mit dem Dienst-Manager, heisst ja auch <b>S</b>ervice <b>C</b>ontrol <b>M</b>anager.

            Wenn Du eh ein Programm hast, das ständig läuft und mit dem SQL Server verbunden ist, kannst Du von dort aus mit
            EXECUTE master.dbo.xp_sqlmaint N'-PlanID ....'
            den Wartungsplan ausführen lassen oder per TransAct-SQL sichern lassen.

            Noch eine weitere Möglichkeit ist, durch "Geplante Tasks" per sqlmaint.exe ( http://msdn.microsoft.com/library/default.asp?url=/library/en-us/coprompt/cp_sqlmaint_19ix.asp) zeitgesteuert einen Wartungsplan ausführen zu lassen, hier kann man definitiv per Parameter auch den Account übergeben lassen.

            <i> ...keine Fehlermeldung</i>
            Die sollte es auch nicht geben. Wenn der Agent in der Eingabeaufforderung gestartet wird, wird nur die Copyrights angezeigt und der Cursor blickt, das wars. Wenn Du dann STRG+C drückst, sollt die Nachfrage kommen, ob der Agent wirklich beendet werden soll...ein sicheres Zeichen, das er läuft. Ausserdem sollte er im Taskmanager (den es unter Win98 so nicht gibt) sowie in den SQL Prozessen (exec sp_who, pollt auf der msdb) zu sehen sein.

            Das mit dem Direktstart des SQLAgent lässt mit keine Ruhe, das werde ich zuhause auf meinem Win98 noch einmal ausprobieren.
            Hier auf WinXP ließ sich zwar der Agent als normaler Task starten, den eingetragen Wartungsplan hatte er aber auch nicht ausgeführt.
            ...das ist ein Elend mit der Technik...

            Gruß, Ola
            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


            • #7
              Hallo Olaf!
              <P>
              Ich habe es mal probiert mit:
              scm -Action 1 -Service "SQL Server Agent" -ExePath "C:\Programme\Microsoft SQL Server\80\Tools\Binn\sqlmangr.exe" -SvcStartType 2 -SvcAccount "test" -SvcPwd "test"
              <P>
              Das bringt (auch mit teils anderen Parametern) immer die Meldung:
              ------------------
              SQL Server Service Control Manager Utility
              ------------------
              An error occurred which prevented the service operation.
              Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch.
              <P>
              Aber immerhin habe ich ein Fenster gesehen, in dem "Starting Service" stand - was dann ja leider fehlschlägt.
              <P>
              Zu T-SQL will ich mir ein Buch holen. Hast du da eine Empfehlung?
              <P>
              Grüsse
              Sonj

              Comment


              • #8
                Nur mal so eine Blöde Fragen läuft der Server überhaupt in der Version auf Win98 soweit ich weis laufen die neuen Verionen von MSQL Server erst ab W2

                Comment


                • #9
                  Der _Server_ läuft.
                  <P>
                  Aber nur eingeschränkt. Nur leider weiß ich nicht, was alles eingeschränkt ist und wie man Einschränkungen vielleicht umgehen kann

                  Comment


                  • #10
                    Hallo Sonja,

                    der Service-Name weicht vom der meistens angezeigt Bezeichnung ab, es müsste heissen: SQLServerAgent

                    Ein Teil der verwendeten Parameter dient nur zum Anpassen der Dienstkonfiguration, kann also weggelassen werden.
                    <BR>

                    scm -Action 1 -Service "SQLServerAgent" -SvcAccount "test" -SvcPwd "test"<BR>
                    Bei den Anführungszeichen bin ich mir nicht sicher, ob die besser weggelassen werden sollten => ausprobieren.

                    So richtig hingehauen hat es bei mir nicht, SCM meldet immer, das die Aktion erfolgreich abgeschlossen ist, auch wenn ich absichtlich ein falsches PWD übergeben habe.

                    Eine gute Buchempfehlung habe ich nicht, ich büffel zwar auch nebenher für SQL Server, aber so richtig auf T-SQL gehen die nicht ein.

                    Gruß, Ola
                    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


                    • #11
                      Hallo Olaf!
                      <P>
                      Wie der Service heißen muss, habe ich in der Doku zu scm leider nicht gesehen.
                      Die Anführungszeichen scheinen okay zu sein, jedenfalls meckert er nicht.
                      <P>
                      Bei mir wird es auch erfolgreich ausgeführt, läuft aber nicht.
                      <P>
                      Trotzdem vielen Dank für deine Hilfe.
                      Sonj

                      Comment


                      • #12
                        Hallo,<br>
                        <br>
                        so starte ich meine MSDE (inkl Dienste unter XP)<br>
                        <br>
                        <font face="Courier New">&nbsp;&nbsp;&nbsp; net start "SQLSERVERAGENT"<br>
                        &nbsp;&nbsp;&nbsp; net start "MSSQLSERVER"<br>
                        &nbsp;&nbsp;&nbsp; net start "MSSQLServerOLAPService"<br>
                        &nbsp;&nbsp;&nbsp; net start "Distributed Transaction Coordinator"<br>
                        &nbsp;&nbsp;&nbsp; net start "Microsoft Search"<br>
                        </font><br>
                        Gruss<br>
                        &nbsp;&nbsp;&nbsp; Dietma

                        Comment


                        • #13
                          Hallo Dietmar!
                          <P>
                          Zu meiner Verwunderung kennt 98 tatsächlich den net start-Befehl.
                          Leider klappt es trotzdem nicht.
                          Angeblich habe ich den Dienstnamen falsch geschrieben, ich hab das aber mehrfach kontrolliert.
                          <P>
                          Gruß
                          Sonj

                          Comment


                          • #14
                            Hallo Sonja,

                            also, ich habe es mal ausprobiert:
                            Win98SE, MSDE2000A, nur mit Option SAPWD="irgendwas" installiert. Ergebnis wie erwartet, der SQL Server Agent ließ sich nicht starten. <BR>

                            1. Per Default wurde die MSDE ohne Netzwerkprotokolle & Loginmode konfiguriert.
                            => Mit SRVNETCFG.EXE das Protokoll TCP/IP aktiviert
                            => In Registry unter HKEY_LOCAL_MASCHINE\SOFTWARE\Microsoft\MSSQLServer \MSSQLServer den Eintrag LoginMode von 0 auf 2 (= gemischter Modus) gestellt, anschließend SQL Server neu gestartet.
                            Damit klappt zumindestens schon einmal der Zugriff auf den SQL-Server (MSDE) richtig. Wichtig: Es muss der gemischte Modus sein, da Win98 die NT Konten Authentifizierung so nun mal nicht unterstützt. <BR>

                            2. Per Default meldet sich der SQL-Server Agent mit dem Konto "sa" und Passwort = "" (leer) an: sehr sinnvoll. Da die MSDE2000A zwingend für die Installation ein Passwort verlangt, klappt es dann mit der Anmeldung nicht. Bisher habe ich aber nur im Enterprise Manager die Möglichkeit gefunden, das Anmeldekonto des Agents zu konfigurieren. Wie es per SQL-Befehl geht, habe ich (noch) nicht gefunden. <BR>

                            Nachdem ich das Passwort des sa testweise auf leer gesetzt hatte, ließ sich der Agent problemlos, auch über den Dienstmanager inkl. Autostart, starten und er hat brav und artig seinen Dienst verrichtet. <BR>

                            Geht also doch.<BR>
                            Auch so: Beim Start (auch wenn es fehl schlägt), legt der Agent im Verzeichnis \MSSQL\LOG eine Datei namens SQLAGENT.OUT an, hier protokiolliert er alles, auch was nicht funktioniert. Hier stand beim mir dann, das die Anmeldung mit dem Account "sa" nicht geklappt hat. <BR>

                            Viel Erfolg beim Ausprobieren.<BR>
                            Ola
                            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


                            • #15
                              Hallo Olaf!
                              <P>
                              Wow, du hast mich nicht vergessen, das ist ja super.
                              <P>
                              Die Netzwerkprotokolle habe ich mit installiert, da das zufällig in der Anleitung so gemacht wurde. (http://www.akadia.com/services/msde.html)
                              Aber trotzdem vielen Dank für die Anleitung, so kann ich es nachbessern, falls ich das mal vergesse.
                              <P>
                              Ich wollte grade mal das sa-Kennwort ändern, aber wo geht das?
                              <P>
                              Naja, ansonsten lese ich mich grade quer durch die MSDN, was es alles für tolle Befehle gibt.
                              <P>
                              Grüsse
                              Sonj

                              Comment

                              Working...
                              X