mySQL, Dienst starten, Öffnen der Datenbank

Hallo,

wie macht Ihr das ?

IPSymcon hat eine Verbindung zu einer mySQL-Datenbank (xampp) auf dem gleichen Rechner.
Die mySQL-Datenbank wird hauptsächlich zum loggen von Ereignissen verwendet wobei z.T. mehrere Ereignisse je Sekunde auftreten können die geloggt werden.

Jetzt zur ersten Frage: Dienst starten
Bei Neustart des Rechners soll zuerst xampp (apache, mySQL) und später dann erst der Dienst IPSymcon gestartet werden.
In IPSymcon habe ich ein Startscript das auch auf die mySQL-Datenbank zugreift. Fals die Datenbank dann noch nicht läuft gibt es dort dann schon die ersten Fehlermeldungen.
Könnte ich im Startscript IPSymcon anhalten (IPS_Sleep), mySQL starten und erst nach erfolgtem Start von mySQL dann mit dem Startscript fortfahren ?
Oder ist es besser über Autostart (Windows7) zuerst mySQL und später dann den IPSymcon-Dienst zu starten ?

Und die zweite Frage: Öffnen der mySQL Datenbank
Da durch die Logging-Funktion dauernd (auch aus unterschiedlichen Scripten) Zugriffe auf die mySQL-Datenbank erfolgen können ist mir nicht genau klar wie dabei am besten die Datenbank geöffnet wird (mysql_connect).

  • in jedem Script einzeln mit z.B. einer zentralen Funktion eingebunden über „Include_once“. Sollte dabei dann auch die Datenbankverbindung in jedem Script wieder geschlossen werden ?
  • oder gibt es auch eine Möglichkeit die Datenbank einmal zu Öffnen/Verbinden und dann global aus jedem Script darauf zuzugreifen.

Gruß
zkra

eine solche Umgebung habe ich zwar nicht, aber du könntest in den zu startenden Diensten Abhängigkeiten hinterlegen.
z.B. IPS ist vom Dienst mySQL abhängig und startet erst dann wenn dieser Dienst gestartet ist.

Das Stichwort ist „DependOnService

Ergänzung: hat zwar den Vorteil das beim Starten nach dem Istzustand er Dienste geschaut wird, wenn Du aber MySQL mal durchstarten willst wird IPS automatisch mit angehalten (wasn beim Logging auch wieder ein Vorteil sein kann)

huch, sehe ich jetzt erst: mit IPS_Sleep hälst du nicht IPS an sondern das aktuelle Script wartet x Milisekunden