Shell: Swap auf Datenbankserver vermeiden

Datenbankserver ohne Swap zu betreiben KANN die Integrität der Daten gefährden. Aber ein Datenbankserver mit Swap WIRD erhebliche Performanceeinbußen bringen.

Wenn MariaDB (oder Postgresql) Swap belegt, ohne dass es einen erkennbaren Grund gibt (ausreichend Speicher vorhanden) kann die „Swappiness“ gesenkt werden. Dies ist immer noch sicherer als den Swap-Speicher komplett abzustellen (gerade bei einem Datenbankserver). Mit smem können gezielt die Swap-Verbraucher ermittelt werden.

Speicher anzeigen mit „free“, um zu sehen, ob Swap belegt ist. Installieren von Paket „smem“:

sudo apt-get install smem

Dann können die Swap-Verbraucher angezeigt werden:

smem

Swappiness (default=60 anzeigen):

sysctl vm.swappiness

Wert einstellen auf „1“, ohne reboot:

sysctl -w vm.swappiness=1

Daran denken, die /etc/sysctl.conf zu ändern (zB hinzufügen vm.swappiness = 1), damit nach dem nächsten Booten nicht wieder der alte Default-Wert gesetzt wird.