MariaDB (Linux): Unterschied zwischen den Versionen

Aus Tutorials
Zur Navigation springen Zur Suche springen
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 50: 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 63: Zeile 83:
=== logrotate[658]: error: 'Access denied for user 'root'@'localhost' (using password: NO)' ===
=== logrotate[658]: error: 'Access denied for user 'root'@'localhost' (using password: NO)' ===


=== debian-start[7452]: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) ===
==== Ursache ====


==== Ursache ====
Der Fehler kommt von ''logrotate'' und wenn man die Konfiguration


<pre>
<pre>
sudo vi /etc/logrotate.d/mysql-server
sudo vi /etc/logrotate.d/mysql-server
</pre>
</pre>
dazu editiert, sieht man, dass die Datei ''/etc/mysql/debian.cnf'' ausgelesen wird:


<pre>
<pre>
# - I put everything in one block and added sharedscripts, so that mysql gets
mysqladmin --defaults-file=/etc/mysql/debian.cnf --local flush-error-log \
#  flush-logs'd only once.
  flush-engine-log flush-general-log flush-slow-log
#  Else the binary logs would automatically increase by n times every day.
# - The error log is obsolete, messages go to syslog now.
/var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log /var/log/mysql/mariadb-slow.log /var/log/mysql/error.log {
daily
rotate 7
missingok
create 640 mysql adm
compress
sharedscripts
postrotate
          test -x /usr/bin/mysqladmin || exit 0
          if [ -f `my_print_defaults --mysqld | grep -m 1 -oP "pid-file=\K.+$"` ]; then
            # If this fails, check debian.conf!
            mysqladmin --defaults-file=/etc/mysql/debian.cnf --local flush-error-log \
              flush-engine-log flush-general-log flush-slow-log
          fi
endscript
}
}
</pre>
</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 ====
==== Abhilfe ====
Die Konfigurationsdatei


<pre>
<pre>
sudo vi /etc/mysql/debian.cnf
sudo vi /etc/mysql/debian.cnf
</pre>
</pre>
bearbeiten und die Passwörter in Anführungszeichen eintragen:


<pre>
<pre>

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