MySQL

Aus CodicaTipps
Zur Navigation springen Zur Suche springen

MySQL ist wie MariaDB oder PostgreSQL eine relationale Open-Source-Datenbank.

Speicherort

Der physikalische Speicherort der MySQL-Datenbank kann in der Datei /etc/mysql/my.cnf in der Zeile datadir = festgelegt werden.[1]

Mit dem MySQL-Befehl

 SELECT @@datadir;

soll das Datenverzeichnis angezeigt werden.[2]

Alternativen seien

 SHOW VARIABLES WHERE Variable_Name = "datadir"

oder von der Shell:

 mysql -s -N -uUSER -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"[3]

oder

 mysql ?[4]

Nur-Root-Login

In MariaDB wird der root-Nutzerzugriff mittels eines unix_socket-Plugins derart abgesichert, dass nur ein als Linux-root eingeloggter Benutzer sich auch als MariaDB-root (dafür dann ohne Passwort) anmelden kann.[5]

Um dennoch einen root-Access zu haben empfiehlt kofler.info einen eigenen Root-Nutzer root2 folgendermaßen anzulegen:

 (als root)# mysql -u root
 > grant all on *.* to root2@localhost identified by 'geheim' with grant option;

Außerdem muss das unix_socket-Plugin deaktiviert werden.

Verbose Logging in MariaDB

Zur Fehlersuche kann man in MariaDB folgendermaßen alle Datenbank-Abfragen loggen:

 cat > /etc/mysql/conf.d/verboselogging.cnf <<EOF
 [mysqld]
 general-log
 general-log-file=/var/log/mysql/queries.log
 log-output=file
 EOF

Siehe auch