[QuickTipp] phpMyAdmin Update-Script

12. September 2014 um 13:00

Weil ich mir selten genügend Zeit nehme immer phpMyAdmin auf dem aktuellsten Stand zu halten, weil oft Updates veröffentlicht werden, kann ich an dieser Stelle ein kleines Bash-Script empfehlen, was die Aufgabe eindeutig einfacher gestaltet. Das – im Grunde einfache – Script aktualisiert einfach phpMyAdmin – mehr nicht, das aber dafür einwandfrei und zuverlässig. Die Einrichtung ist dabei auch sehr einfach.

Die ultimative Kombination, wie ich es aktuell im Einsatz habe, ist es dass Script über einen Cronjob automatisiert ausführen zu lassen. So wird mein phpMyAdmin immer stets aktuell gehalten, ohne jedesmal irgendwie selbst eingreifen zu müssen. Die Aktualisierung erfolgt natürlich auch nur dann, wenn es eine neuere Version als die derzeit installierte Version gibt.

Einrichtung des Scripts

cd /opt # Verzeichnis zu /opt wechseln
wget https://raw.githubusercontent.com/stefansl/pma-updatescript/master/pma-update.sh # Download
chmod +x pma-update.sh # Ausführrechte vergeben
nano pma-update.sh # Script bearbeiten und Variablen anpassen

Im Anschluss einfach die Variablen, die in der Datei genauer erläutert werden, anpassen und die Datei abspeichern. Die Ausführung erfolgt dann einfach mit ./pma-update.sh – oder aber mit ./pma-update.sh 3.5.0, um auf eine spezielle Version zu wechseln.

Einrichtung des Cronjobs
Die Zeile für den Cronjob (crontab -e) kann zum Beispiel wie folgt lauten:

30 4 * * * cd /opt/ && bash pma-update.sh >> /var/log/pma-update.log

In diesem Fall wird das Update-Script täglich um 04:30 Uhr ausgeführt und aktualisiert automatisch phpMyAdmin, falls es eine neuere Version geben sollte.

Das Script lässt sich auf GitHub unter github.com/stefansl/pma-updatescript finden.

Ein großer Dank für die Empfehlung des Scripts geht an php-friends.de! 🙂

QuickTipp: MySQL – Speicherplatzverbrauch der Datenbanken

28. Juli 2014 um 17:00

Auflistung der MySQL-Datenbanken und deren Speicherplatzverbrauch

Datenbanken & Speichergrößen

Ausgabe des SQL-Statements mit der Speicherplatzübersicht

Ohne große Erklärung oder viel Geschreibe – hier der Befehl zum Kopieren & Einfügen in die MySQL-Console:

mysql -u root -e -p 'select table_schema "Database",round(sum(data_length+index_length)/1024/1024,4) "Size (MB)" from information_schema.tables group by table_schema;'

Nach dem Einfügen und Ausführen des Befehls wird man nach dem Passwort des root-Nutzers gefragt. Nach der korrekten Eingabe erscheint dann eine schöne Übersicht, wie im Screenshot zu sehen ist, welche die Datenbanken und deren Speicherplatzverbrauch in einer Tabelle aufgelistet anzeigt. Alternativ kann man hinter den Parameter -p direkt das Passwort schreiben, um auf eine Eingabe nach der Ausführung zu verzichten.

Quelle: spielwiese.la-evento.com

Linux: Autoresponder für Postfix mit MySQL

31. März 2013 um 14:00

Ich darf vorstellen: Goldfish. In diesem Fall handelt es sich aber nicht über einen Goldfisch, sondern um einen Autoresponder für Postfix mit MySQL. Das Script ist simpel aufgebaut, in PHP programmiert und je nach Erfahrungen leicht einzurichten als manch andere Möglichkeiten. Goldfish besteht nur aus einer PHP-Datei, welche mit einem Cronjob regelmäßig ausgeführt werden muss.

goldfish-logo

Weiterlesen…

MySQL & PHP: Vergleichen eines eingegebenen Passwortes mit ENCRYPT von MySQL

27. November 2012 um 01:06

Ich stand gerade vor dem Problem, ein eingegebenes Passwort von einem HTML-Formular mit einer MySQL Datenbank zu vergleichen. Der Haken war jedoch, dass die Passwörter mit der ENCRYPT()-Funktion von MySQL verschlüsselt wurden.

Lässt man also ein Passwort in die MySQL Datenbank mit ENCRYPT(„passwort“) speichern, wird das Passwort zufällig verschlüsselt und wird bei so einen Beispiel-Vergleich mit PHP nie richtig sein:

mysql_query("SELECT password FROM users WHERE password=ENCRYPT('eingegebenes_passwort')")

Verzweifelt habe ich dennoch versucht, die Passwörter zu vergleichen.
Die Lösung war eigentlich einfach – wenn man es weiß…:

mysql_query("SELECT password FROM users WHERE password=ENCRYPT('eingegebenes_passwort', password)")

Das heißt, MySQL vergleicht – irgendwie – das eingebene mit dem vorhandenen Passwort und gibt danach das Passwort zurück, wenn das eingegebene Passwort richtig gewesen ist.

Ich hoffe es sparrt Euch viel Ärger und Nerven 🙂

Linux & MySQL: Backup per Konsole erstellen und einspielen

3. November 2012 um 02:48

Mit zwei kurzen kurzen Linux Befehlen kann man seine MySQL Datenbank in eine SQL Datei speichern und auch wieder importieren lassen.

Backup erstellen:
mysqldump -u root -p --all-databases --result-file=dbdata.sql

Zum importieren:
mysql -u root -p < dbdata.sql

Sobald man den Befehl ausführt, muss man auch noch das Passwort des Benutzers angeben.
Achtung: Auch die Benutzer werden dabei dann exportiert und auch beim Import überschrieben!

Top