Vertikale Ausgabe der Ergebnisse im MySQL Client

SQL Abfragen in einem Terminal auszuführen hat den Nachteil, dass die Ergebnisse häufig zu groß sind, um leserlich im kleinen Terminal Fenster dargestellt zu werden. Um die Ergebnisse vertikal auszugeben, muss anstelle des ; ein \G als Terminator verwendet werden.

Die folgenden 2 Beispiele zeigen den Unterschied. Zuerst die Prozessliste mit ; als Terminator …

mysql> show full processlist;
+——-+————-+———–+——+———+——–+——————- —————————————————-+———————–+
| Id | User | Host | db | Command | Time | State | Info |
+——-+————-+———–+——+———+——–+——————- —————————————————-+———————–+
| 59172 | root | localhost | NULL | Query | 0 | NULL | show full processlist |
+——-+————-+———–+——+———+——–+——————- —————————————————-+———————–+
1 rows in set (0.00 sec)

… und zum Vergleich die gleiche Abfrage nocheinmal mit \G

mysql> show full processlist\G
*************************** 1. row ***************************
     Id: 59172
   User: root
   Host: localhost
     db: NULL
Command: Query
   Time: 0
  State: NULL
   Info: show full processlist
1 rows in set (0.00 sec)

Wenn man dauerhaft diese Ausgabe möchte, muss einfach in die Datei ~/.my.cnf bzw. für alle Benutzer in der /etc/my.cnf die folgende Zeile ergänzen.
[text][mysql]
vertical[/text]
Nach dem Eintragen dieser Zeile ist es egal ob die Query mit ; oder \G endet. Das Ergebnis wird immer vertikal angezeigt.

Nachrichten aus der Shell an den Desktop senden

Testausgabe auf dem DesktopAuch wenn man Ubuntu als Destopsystem einsetzt, so ist die Verwendung der Kommandozeile nicht gerade selten. Häufig kommt es dann auch dazu, das ein Programm oder Scipt etwas länger braucht. Diese Zeit kann am Desktop mit anderen Tätigkeiten verbracht werden. Damit man nun nicht jedesmal in die Shell schauen muss, ob das Programm oder Script beendet ist, kann man unter Gnome das Programm notify-send zur Anzeige von Meldungen auf dem Desktop verwenden. Dazu wird das Paket libnotify-bin benötigt.

apt-get install libnotify-bin

Nach der Installation steht der Befehl notify-send zur Verfügung.

notify-send „Testausgabe auf dem Desktop“ -i info

Der Parameter -i legt das Icon fest. Es kann sowohl ein Icon aus dem Theme (Namen findet man hier) verwendet werden, als auch der UNC Pfad angegeben werden (file://pfad/zum/bild.png) Der Parameter -t soll die Zeit festlegen wie lang die Meldung angezeigt wird. In meinen Tests hat das bisher nicht funktioniert. Im Gegenteil -t 0 erzeugt anstatt einer schicken Meldung ein PopUp. Alle weiteren Parameter sind in der manpage aufgelistet.
Bei der Verwendung von Scripten oder Pogrammen kann man die Benachrichtigung einfach hinten anhängen.

./mysql_backup.sh; notify-send „Backup abgeschlossen“ -i media-floppy

Nachricht Backup abgeschlossen
Natürlich kann notify-send auch direkt in den Scripten verwendet werden um z.B. Ergebnisse auszugeben.

Zeilennummern in nano anzeigen

nanoIn der Shell gibt es viele verschiedene Texteditoren. Mein absoluter Favorit ist nano. Er ist einfach und intuitiv zu bedienen. Allerdings sind eine Funktionen scheinbar nicht aktiviert z.B. „Gehe zu Zeilennummer“. Um nicht die Konfiguration ändern zu müssen (ungünstig gerade bei fremdem Servern) kann man sich die Zeilennummern aber mittels ALT + C anzeigen lassen.

In der Hilfe (Strg + G) sind alle Funktionen erklärt.

Hinweis: Auch Syntax Highlighting wird unterstützt, wie in diesem Tutorial beschrieben wird: http://gentoo.linuxhowtos.org/nano/config_nano.htm

Version von MySQL auslesen

Um die Version der MySQL-Installation herrauszufinden gibt es viele verschiedene Möglichkeiten. Z.B. findet sich in den Statusvariablen ein Eintrag zur Version.

mysql> SHOW VARIABLES LIKE ‚version‘;
+---------------+------------+
| Variable_name | Value      |
+---------------+------------+
| version       | 5.1.45-log |
+---------------+------------+
1 row in set (0.00 sec)

Eine andere Variante ist die Verwendung der Methode Version(). Diese kann zum Beispiel auch in einer PHP Abfrage komfortabel genutzt werden.

mysql> SELECT VERSION();
+------------+
| VERSION()  |
+------------+
| 5.1.45-log |
+------------+
1 row in set (0.00 sec)

Systeminfos unter Linux auslesen

Jeder der mit verschiedenen Servern arbeitet, stellt sich hin und wieder die Frage „Mit was für ein System hab ich es hier zu tun?“. Im folgenden habe ich eine kleine Liste an Befehlen aufgelistet, die meiner Meinung nach wichtigsten Systeminfos wie CPU, RAM, HDD, LAN, usw. anzeigen.

Informationen zum Prozessor (CPU) bekommt man mit diesem Befehl aufgelistet:

cat /proc/cpuinfo

Den Arbeitsspeicher(RAM) bekommt man so heraus:

cat /proc/meminfo

Informationen zur Kernelversion:

cat /proc/version

Nutzung (Speicherplatz) der gemounteten Festplatten:

df -H

Und zu guter letzt das Netzwerk nicht vergessen:

ifconfig

Selbstverständlich ist diese Liste nicht komplett. Wer also Ergänzungen hat, einfach in den Kommentaren posten.