Seite wählen

NETWAYS Blog

Korrekte Speicherbelegung von InnoDB Tabellen

Heute halten wir uns recht einfach und sprechen über die Thematik der Speicherplatzbelegung von InnoDB Tabellen. Eine schlichte Kontrolle der reellen Nutzung ist hier einerseits wegen einem globalen Speicher für alle Tabellen aller DBs nicht möglich. Und wenn man die files_per_table Option aktiv hat, können auch noch reservierte, ‚freie‘ Speicherbereiche in den Daten z.B. ein Summierung des Verzeichnis beeinflussen.
Daher müsste man von Tools wie z.B. phpMyAdmin gebraucht machen, um dies einmal kontrollieren zu können. Aber mit Zugriff auf das MySQL kann man auch über die Statusausgabe der Tabellen den benötigten Platz einsehen und errechnen. In der Übersicht der Informationen sind hier die Felder Data_length und Index_length entscheident.
Wenn man nun als Admin einmal schnell die Belegung über die Konsole abfragen möchten, könnte man sich mit folgenden Skript dafür helfen. Es wird mit der jeweligen Datenbank als Parameter aufgerufen und setzt einen Zugang zum MySQL mittels .my.cnf voraus:

#!/bin/bash
DATABASE=$1
TMPFILE="/tmp/$DATABASE-size"
mysql -e "show table status from $DATABASE;" > $TMPFILE
NAME=`head -n 1 $TMPFILE | sed -r 's/\t/\n/g' | grep -n Name | cut -d':' -f 1`
DATA=`head -n 1 $TMPFILE | sed -r 's/\t/\n/g' | grep -n Data_length | cut -d':' -f 1`
INDEX=`head -n 1 $TMPFILE | sed -r 's/\t/\n/g' | grep -n Index_length | cut -d':' -f 1`
echo -e "Name\t\tData_length in MB\t\tIndex_length in MB"
tail -n+2 $TMPFILE | awk '{print $'$NAME'"\t\t"$'$DATA'/1024/1024"\t\t"$'$INDEX'/1024/1024}'
echo
echo
echo -en "Sum in MB\t: "
for LINE in `tail -n+2 $TMPFILE | awk '{print $'$DATA'"\n"$'$INDEX'}'`; do
COUNT=$[$COUNT+$LINE]
done
echo $(($COUNT/1024/1024))

Segfault bei dkim-filter und libmilter1.0.1 < 8.14.4-1

Wir hatten ja schon ausführlich über die Einrichtung und die Nutzung von Dkim berichtet. Mit der Zeit zeigten sich jedoch noch kleinere Schwierigkeiten, welche nur in aktuellen Paketen behoben sind.
Hiervon betroffen ist z.B. ein Segfault des dkim-filter bei größerem Mailaufkommen und der damit verbundenen Nutzung. Im Zusammenhang mit Postfix bedarf es der libmilter, damit externe Filter aus dem Postfix heraus angewandt werden können. Und genau diese schafft in dem Szenario in einer Version kleiner der 8.14.4-1 die Problematik, welche zum Absturz des dkim-filter führt.
Unter Debian ist das Paket derzeit noch im Testing-Status. Daher kann man je nach System und Vorgaben den dkim-filter überwachen und im Fehlerfall neu starten, sowie im späteren Verlauf eine freigegebene Version des Pakets updaten. Oder man installiert sich solange das Testing-Paket oder wendet einen Patch auf den Quellcode hierfür an.

Reportgenerierung mittels AwStats

AwStats wird ja den meisten Leuten ein Begriff sein, daher werde ich im einzelnen nicht direkt auf das Tool eingehen, sondern nur die Funktion beschreiben, mit der sich statische PDF-Reports generieren lassen. Diese Möglichkeit gibt es ja nun schon seit einigen Versionen und ist mit der Zeit gereift. Damit sie umgesetzt werden kann, benötigt man neben dem AwStats nur noch das Tool htmldoc, um die Statistik-Seiten auszuwerten und als PDF exportieren zu können.
Ist beides gegeben, kann man hiermit recht schlicht und einfach Reports für interne oder externe Zwecke erstellen. Die Nutzung der Auswertung ist hier sehr vielseitig, sie geht von den klassischen Logfiles wie Web-,FTP- oder Mailserver bis hin zu reinem Netzwerktraffic wie z.B. Nameserveranfragen. Man benötigt nur ein Art ‚Logfile‘ welche das AwStats nach gewissen Vorgaben auswerten kann. Für die Verarbeitung kann die Dokumentation in der AwStats Konfiguration selbst hergenommen werden oder man erkundigt sich nach evtl. schon fertigen Parsern im Internet.
Der nötige Feinschliff für externe Repots (z.B. an Kunden) kann mittels Optionen für Corporate Identity geschaffen werden. Damit lassen sich die Bilder und Styles bearbeiten und man kann auch zus. HTML Inhalte vor der PDF Generierung in die Seiten einpflegen.

Statistikauswertung eines DNS Server

Wer kontrollieren möchte, was seine DNS Server so den lieben langen Tag alles über machen und welche Anfragen hereinkommen, kann sich hier mit dem Tool DSC (DNS STATISTICS COLLECTOR) behelfen. Das Setup und die Möglichkeiten dabei reichen von einzelnen Kontrollen bis hin zur Überwachung größere Servermengen auf zentralen Stationen.
Damit dies möglich ist, gliedert sich die Auswertung in 2 Routinen. Als erstes gibt es den Collector, welcher auf den Nameservern selbst läuft und den Verkehr mitlauscht. Dieser schreibt dann anhand von definierten Regeln z.B. alle 60 Sekunden eine Auswertung in Form eines XML Files heraus. Und dieses XML File wird dann wiederum im zweiten Schritt vom Presenter zur Darstellung verwendet. Die Ablage der XML Files kann lokal oder auf einer zentralen Station erfolgen – und für die Übertragung zu einem gesammelten Punkt bringt das Tool auch verschieden Beispiele mit, bevorzugt wird dabei eine Variante mittels Webserver und SSL-Authentifizierung des Servers und der Clients.
Wenn die Überwachung mit dem Collector und die Auswertung mit dem Presenter fertig eingerichtet ist, kann man sich die Daten dann grafisch darstellen lassen. Eine komplette Aufstellung von Beispielen gibt es auf der Homepage der Entwickler zu sehen. Anbei  nur ein paar Auszüge.

Kostenlose Hotkeys und Skriptmakros für Windows mit Autohotkey

Eine effektive Verwaltung für Hotkeys oder Skriptmakros mit Tastatur und Maus gibt es unter Windows mit der Open-Source-Scriptsprache AutoHotkey. Hierdurch lassen sich immer wiederkehrende Eingaben nach dem Muster ‚mfg‘ zu ‚mit freundlichen Grüßen‘ automatisieren oder vervollständingen.
Aber der Nutzen geht noch weiter, denn durch eine breite Masse an Abfragen, Funktionen und Unterprogrammen kann auch eine komplett automatisierte Steuerung mit Entscheidungen erstellt werden. Z.B. eine Abfolge von Eingaben und Mausbewegungen, welchen Ausgaben interpretieren, Dokumente durchsuchen oder auf Farben des Bildschirms reagieren.
Das ganze klingt auf den ersten Blick recht komplex, aber die Einarbeitung geht recht schnell und die Dokumentation und das Wiki bieten viele Anleitungen und Beispiele, welche einem das erstellen erleichtern. Wer hier einmal Fuß gefasst und die Möglichkeiten verstanden hat, mag das ganze nicht mehr missen. Es ist gerade unter Windows eine enorme Hilfe und kann auch dazu beitragen die Lebensdauer ihrer Tastatur und Maus zu verlängern 🙂