Bash DB-Login prüfen

schlawiner

Mitglied
Hallo,

ich möchte in ein Bashs eine Brüfung ein bauen, ob ein Datenbanklogin des users möglich.

´Sprich ist der Login möcglich darf das Script weiter machen, ist der Login nicht möglich Abbruch.

Danke für die Hilfe
 

Bratkartoffel

gebratene Kartoffel
Premium-User
Hi,

welche Datenbank läuft im Hintergrund? Wie sieht die Struktur der Tabelle aus, aus der Benutzername und Passwort kommen? Ist das Passwort gehasht?

Grüße,
BK
 

schlawiner

Mitglied
Hallo,

Hier soll eigentlich nur im Abstand von 2 Stunden bei sämtlichen Usern auf dem Server gecheckt werden ist die User-Datenbank erreichbar oder nicht. Da ein Crojob danach ausgeführt wird welcher eine Erreichbarkeit der DB und des Userlogin voraussetzung macht.

Dabei zieht sich das Script das Datenbankpasswortes aus der Config.php des cms Systemes.


Ablauf:

Check ist Userlogin an der DB möglich

ja: Script ausführen

nein: Abruch

Ende


Da es 2 mal zu dem Fall gekommen ist das eine Datenbank nicht erreichbar war und das Resultat ein Verarbeitungsstau war, war dies halt meine Idee,

Danke
 
Zuletzt bearbeitet:

erik s.

Erfahrenes Mitglied
Falls mysqladmin installiert ist, kannst du das benutzen:
Code:
>$ mysqladmin -u <USER> -p<PASSWORD> status
>$ echo $?
Falls die Ausgabe 0 ist, kann sich dein Benutzer einloggen UND die DB ist up. Wenn die Ausgabe größer 0 ist, konnte sich der Benutzer nicht erfolgreich einloggen oder die DB ist down.
Hinweis: Zwischen -u und <USER> gehört ein Leerzeichen, zwischen -p und <PASSWORD> dagegen nicht!

Wenn du den Befehl wie folgt abänderst, unterdrückst du auch die Ausgabe von mysqladmin:
Code:
>$ mysqladmin -u <USER> -p<PASSWORD> -s status > /dev/null
>$ echo $?