Configuratiebestanden (MySQL)
Altijd verwarrend waar je systeeminstellingen van MySQL aanpast. Daarnaast is MySQL nogal kritisch als het om wijzigingen gaat.
Spoorzoeken
Er is een verwarrend woud aan placeholder-configuratiebestanden, die ook nog 's allemaal naar elkaar lijken te verwijzen:
* /etc/mysql/ * debian.cnf * debian-start * my.cnf → /etc/alternatives/my.cnf → /etc/mysql/mysql.cnf (echt waar!) * my.cnf.fallback * mysql.cnf * mysql.conf.d/ * mysqld.cnf * mysqld_safe_syslog.cnf
Maar daar houdt het niet op, want dit is de inhoud van de 'placeholder' files hierboven:
!includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/
Niet meer spoorzoeken
Zie de uitleg in bestand mysql.cnf.
Voor systeem-brede aanpassingen:
sudo rm /etc/mysql my.cnf sudo cp /etc/mysql/mysql.cnf my.cnf
Gebruik nu bestand my.cnf
voor eigen instellingen.
Verder vind je default-instellingen in /etc/mysql/mysql.conf.d
- Handig om dingen af te kijken.
Backups
Configuratiebestanden moeten welliswaar de extensie .cnf
hebben, maar niet alle bestanden met de extensie .cnf
worden automatisch uitgevoerd. Je kunt dus backups maken met namen zoals my.cnf.bk01
.
Voorbeeld: Aanpassen secure_file_priv
Vantevoren:
mysql> show variables like "secure_file_priv"; +------------------+----------------------------+ | Variable_name | Value | +------------------+----------------------------+ | secure_file_priv | /var/lib/mysql-files/ | +------------------+----------------------------+ 1 row in set (0,00 sec)
Ik heb bestand /etc/mysql/my.cnf
aangepast. Dit is nu het hele bestand:
!includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ ################################################## # HERE IS MY OWN STUFF - STROMPF ################################################## # [mysqld] secure-file-priv = ""
En het werkt:
mysql> show variables like "secure_file_priv"; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | secure_file_priv | | +------------------+-------+ 1 row in set (0,00 sec)