MySQL: Unterschied zwischen den Versionen

Aus CodicaTipps
Zur Navigation springen Zur Suche springen
Die Seite wurde neu angelegt: „MySQL ist wie MariaDB oder PostgreSQL eine relationale Open-Source-Datenbank. == Speicherort == Der physikalische Speicherort der MySQL-Datenbank kann in…“
 
 
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 13: Zeile 13:
oder von der Shell:
oder von der Shell:
   mysql -s -N -uUSER -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"<ref>Siehe http://stackoverflow.com/questions/17968287/how-to-find-the-mysql-data-directory-from-command-line-in-windows</ref>
   mysql -s -N -uUSER -p information_schema -e 'SELECT Variable_Value FROM GLOBAL_VARIABLES WHERE Variable_Name = "datadir"<ref>Siehe http://stackoverflow.com/questions/17968287/how-to-find-the-mysql-data-directory-from-command-line-in-windows</ref>
oder
  mysql ?<ref>Siehe http://stackoverflow.com/questions/17968287/how-to-find-the-mysql-data-directory-from-command-line-in-windows</ref>


== 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.<ref>Siehe https://kofler.info/root-login-problem-mit-mariadb/</ref>
Um dennoch einen root-Access zu haben empfiehlt [https://kofler.info/root-login-problem-mit-mariadb/ 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 [https://kofler.info/root-login-problem-mit-mariadb/ unix_socket-Plugin deaktiviert werden].
== Verbose Logging in MariaDB ==
Zur Fehlersuche kann man in MariaDB folgendermaßen [https://mariadb.com/kb/en/mariadb/general-query-log/ 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 ==
* [[Docker#MySQL-Image]]
* [[OpenHAB#MySQL Persistence]]
------
------
<references/>
<references/>

Aktuelle Version vom 12. Juli 2018, 16:59 Uhr

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