MariaDB (Linux): Unterschied zwischen den Versionen

Aus Tutorials
Zur Navigation springen Zur Suche springen
 
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 25: Zeile 25:
</pre>
</pre>


und folgende Befehle ausführen:
und, falls in ''/etc/mysql/mariadb.conf.d/50-server.cnf'' als Adresse ''127.0.0.1'' eingetragen ist, folgende Befehle ausführen
 
<pre>
grant all on *.* to 'root'@'localhost' identified by '<password>' with grant option;
flush privileges;
quit;
</pre>
 
ansonsten:


<pre>
<pre>
Zeile 42: Zeile 50:


[http://www.fun-genius.com/dashboard/docs/reset-mysql-password.html http://www.fun-genius.com/dashboard/docs/reset-mysql-password.html]
[http://www.fun-genius.com/dashboard/docs/reset-mysql-password.html http://www.fun-genius.com/dashboard/docs/reset-mysql-password.html]
== Bind-Adresse ändern ==
Die Datei
<pre>
sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf
</pre>
bearbeiten und ''bind-adress'' setzen:
<pre>
bind-address            = 0.0.0.0
</pre>
<code>0.0.0.0</code> erlaubt den Zugriff über alle Netzwerke.


== Replikation ==
== Replikation ==


Siehe dazu [[MariaDB Replikation (Ubuntu)|MariaDB Replikation]]
Siehe dazu [[MariaDB Replikation (Ubuntu)|MariaDB Replikation]]
 
== Daten in Netzlaufwerk ==
 
Siehe dazu [[Daten in Netzlaufwerk (MariaDB)|Daten in Netzlaufwerk]]
 
== Query Log ==
== Query Log ==


Zeile 54: Zeile 82:


=== logrotate[658]: error: 'Access denied for user 'root'@'localhost' (using password: NO)' ===
=== logrotate[658]: error: 'Access denied for user 'root'@'localhost' (using password: NO)' ===
==== Ursache ====
Der Fehler kommt von ''logrotate'' und wenn man die Konfiguration
<pre>
sudo vi /etc/logrotate.d/mysql-server
</pre>
dazu editiert, sieht man, dass die Datei ''/etc/mysql/debian.cnf'' ausgelesen wird:
<pre>
mysqladmin --defaults-file=/etc/mysql/debian.cnf --local flush-error-log \
  flush-engine-log flush-general-log flush-slow-log
}
</pre>
In dieser Datei fehlen die Passwörter, da ''MariaDB'' standardmäßig (bei Raspbian) ohne Passwort und nur für ''root''-Zugriff installiert wird.
==== Abhilfe ====
Die Konfigurationsdatei
<pre>
sudo vi /etc/mysql/debian.cnf
</pre>
bearbeiten und die Passwörter in Anführungszeichen eintragen:
<pre>
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host    = localhost
user    = root
password = "<password>"
socket  = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host    = localhost
user    = root
password = "<password>"
socket  = /var/run/mysqld/mysqld.sock
basedir  = /usr
</pre>
==== Link ====


[https://askubuntu.com/questions/876552/mysql-logrotate-error https://askubuntu.com/questions/876552/mysql-logrotate-error]
[https://askubuntu.com/questions/876552/mysql-logrotate-error https://askubuntu.com/questions/876552/mysql-logrotate-error]

Aktuelle Version vom 30. Mai 2020, 08:20 Uhr

Installation

sudo apt-get -y install mariadb-server mariadb-client

Als PHP-Connector kann der von MySQL genutzt werden:

sudo apt-get -y install php-mysql 

Passwort

Passwort setzen

Raspbian

Unter Raspbian wird bei der Installation nicht nach einem root-Passwort gefragt.

Um es zu setzen, als root einloggen

sudo mysql -u root -p

und, falls in /etc/mysql/mariadb.conf.d/50-server.cnf als Adresse 127.0.0.1 eingetragen ist, folgende Befehle ausführen

grant all on *.* to 'root'@'localhost' identified by '<password>' with grant option;
flush privileges;
quit;

ansonsten:

grant all on *.* to 'root'@'%' identified by '<password>' with grant option;
flush privileges;
quit;

Passwort ändern

mysqladmin -p --user=root password "newpassword"

Links

http://www.fun-genius.com/dashboard/docs/reset-mysql-password.html

Bind-Adresse ändern

Die Datei

sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf 

bearbeiten und bind-adress setzen:

bind-address            = 0.0.0.0

0.0.0.0 erlaubt den Zugriff über alle Netzwerke.

Replikation

Siehe dazu MariaDB Replikation

Daten in Netzlaufwerk

Siehe dazu Daten in Netzlaufwerk

Query Log

https://mariadb.com/kb/en/general-query-log/

Probleme

logrotate[658]: error: 'Access denied for user 'root'@'localhost' (using password: NO)'

Ursache

Der Fehler kommt von logrotate und wenn man die Konfiguration

sudo vi /etc/logrotate.d/mysql-server

dazu editiert, sieht man, dass die Datei /etc/mysql/debian.cnf ausgelesen wird:

mysqladmin --defaults-file=/etc/mysql/debian.cnf --local flush-error-log \
  flush-engine-log flush-general-log flush-slow-log
}

In dieser Datei fehlen die Passwörter, da MariaDB standardmäßig (bei Raspbian) ohne Passwort und nur für root-Zugriff installiert wird.

Abhilfe

Die Konfigurationsdatei

sudo vi /etc/mysql/debian.cnf

bearbeiten und die Passwörter in Anführungszeichen eintragen:

# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = root
password = "<password>"
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host     = localhost
user     = root
password = "<password>"
socket   = /var/run/mysqld/mysqld.sock
basedir  = /usr

Link

https://askubuntu.com/questions/876552/mysql-logrotate-error

Links

https://wiki.ubuntuusers.de/MariaDB/


Zurück zu Ubuntu