Bazy danych potrafią zająć olbrzymie ilości pamięci co często prowadzi do jej wyczerpania i korzystania ze swapu obniżając wydajność systemu. Jednak w przypadku baz MySQL bądź MariaDB można dość łatwo zredukować jej użycie.
Chesz przetestować działanie poniższych instrukcji, a nie masz dostępu do serwera Linuxowego? Po rejestacji na DigitalOcean otrzymasz 100 dolarów do wykorzystania w ciągu 60 dni, a z przyjaznym interfejsem uruchomisz ulubioną dystrybucję w ciągu paru minut.
Wyłączenie performance schema
Na początek najlepiej wyłączyć performance schema, które przydatne jest jedynie podczas debugowania problemów z bazą danych. W tym celu należy otworzyć plik my.cnf poleceniem sudo nano /etc/my.cnf (albo skorzystać z ulubionego edytora), a gdyby plik był w innym miejscu odnaleźć go poleceniem whereis my.cnf.
Kolejnym krokiem jest dopisanie w sekcji [mysqld] następujących linii:
# Wylaczenie performance schema by zredukowac uzycie ramu
performance_schema = off
Następnie można zapisać plik kombinacją klawiszy ctrl + o (oraz potwierdzenie klawiszem enter), a następnie zamknąć Nano za kombinacją ctrl + x. Później pozostaje restart demona poleceniem sudo service mysql restart lub sudo service mariadb restart.
Zmniejszenie innodb_buffer_pool_size
Następnie można zmniejszyć bufor silnika InnoDB. Także i w tym wypadku należy zmodyfikować sekcję [mysqld] pliku /etc/my.cnf dodając następujące linijki:
# Zmniejszenie wielkosci puli by oszczedzic pamiec
innodb_buffer_pool_size = 64M
Na koniec należy zapisać, zamknąć plik i zrestartować demona.
Skomentuj