Um in Plesk die Performance der Datenbank zu erhöhen, gibt es eine relativ einfache Möglichkeit indem wir sozusagen einen weiteren Cache einrichten. Hierfür benötigen wir lediglich genug verfügbaren Arbeitsspeicher. In vielen Fällen sollte dies bereits dazu führen, dass langsame Datenbankabfragen nun endlich schneller ablaufen.
Um die Änderung vorzunehmen muss die entsprechende Konfigurationsdatei geöffnet und angepasst werden, das ist mit vi oder nano möglich:
vi /etc/mysql/my.cnf
Anschließend müssen unter [mysqld] die folgenden Werte hinzugefügt oder angepasst werden:
innodb_buffer_pool_size=1024M
query_cache_size=64M
Ggf. könnte sich auch diese Einstellung lohnen:
skip-name-resolve=1
Danach muss der Datenbankserver neu gestartet werden:
systemctl restart mysqld
Sollte auch dies zu keiner Verbesserung führen, können alle vorhandenen Datenbank zusätzlich optimiert werden, dies ist mit dem folgenden Befehl möglich:
MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysqlcheck -uadmin --optimize --all-databases
Falls der Datenbankserver bereits einige Tage lang läuft können auch direkte empfehlen mit einem Tool abgerufen werden. Hierzu installieren wir
apt-get install mysqltuner
das Tool MySQL Tuner und führen es anschließend aus:
mysqltuner
Auch können noch diese Verbesserungen angewand werden unter /etc/security/limits.conf
mysql soft nofile 65535
mysql hard nofile 65535
* soft nofile 65535
* hard nofile 65535
/etc/systemd/system.conf und /etc/systemd/user.conf
DefaultLimitNOFILE=65535
In Eurer MariaDB-Konfigurationsdatei sollte im Übrigen auch
[Service]
LimitNOFILE=infinity
eingetragen sein. Nach einem Neustart kann der Erfolg mit folgendem Befehl kontrolliert werden:
ulimit -Sn
ulimit -Hn
Unter /etc/sysctl.conf kann
vm.swappiness=1
hinzugefügt werden – im Betrieb kann die Änderung temporär mit
sysctl -w vm.swappiness=1
durchgeführt werden.
Unter /etc/default/grub sollte
GRUB_CMDLINE_LINUX="elevator=noop"
eingestellt sein.