4 220
modifications
(16 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 3 : | Ligne 3 : | ||
=Installation et configuration= | =Installation et configuration= | ||
Pour installer | Pour installer le serveur mariadb, tapez : | ||
<pre>aptitude install mariadb-server mariadb-client</pre> | <pre>aptitude install mariadb-server mariadb-client</pre> | ||
Puis lancez | Puis lancez | ||
<pre>mysql_secure_installation</pre> | <pre>mysql_secure_installation</pre> | ||
Mariadb recommande d'éviter au maximum l'[https://mariadb.com/kb/en/configuring-swappiness/ utilisation du swap]. Définissez la ligne suivante par exemple dans <code>/etc/sysctl.d/local.conf</code> : | |||
<pre>vm.swappiness = 1</pre> | |||
==Changement du datadir== | ==Changement du datadir== | ||
Ligne 19 : | Ligne 22 : | ||
Copiez l'ancien répertoire de la base de donnée au nouvel emplacement et attribuez lui les bons privilèges : | Copiez l'ancien répertoire de la base de donnée au nouvel emplacement et attribuez lui les bons privilèges : | ||
<pre> | <pre> | ||
rsync -av /var/lib/mysql/ /srv/mysql/ | |||
</pre> | </pre> | ||
Ligne 29 : | Ligne 30 : | ||
</pre> | </pre> | ||
Si mysql refuse de démarrer, c'est probablement un problème de permission. | Si mysql refuse de démarrer, c'est probablement un problème de permission. | ||
=Servir des requêtes sur le réseau= | |||
Par défaut sous debian, mysql | Par défaut sous debian, mysql/mariadb n'écoute que sur localhost. Si vous souhaitez écouter sur une ip autre (attention aux problèmes de sécurité que cela peut poser !), éditez la ligne suivante dans le fichier <code>/etc/mysql/mariadb.conf.d/50-server.cnf</code> : | ||
<pre>bind-address = 192.168.50.5</pre> | <pre>bind-address = 192.168.50.5</pre> | ||
=Le mot de passe root | =Le login root de MySQL= | ||
Après avoir lancé <code>mysql_secure_installation</code> vous avez probablement du définir un mot-de-passe root et désactivé le login extérieur avec l'utilisateur mysql root. | |||
Par défaut sous Debian Buster, mariadb log l'utilisateur root avec le socket unix, sans mot-de-passe nécessaire : | |||
<pre>mysql -u root</pre> | <pre>mysql -u root</pre> | ||
Le défaut de cette mécanique est qu'il va empêcher, par exemple, le login root avec phpmyadmin. Pour ré-activer le login root par mot-de-passe : | |||
<pre> | |||
mysql -u root | |||
use mysql; | |||
update user set plugin='' where user='root'; | |||
flush privileges; | |||
</pre> | |||
Désormais pour vous connecter à mysl vous devrez entrer un mot-de-passe : | |||
<pre>mysql -u root -p</pre> | <pre>mysql -u root -p</pre> | ||
Je vous recommande également d'entrer le mot-de-passe root que vous avez défini dans <code>/etc/mysql/debian.cnf</code> sinon certains scripts risquent de ne plus fonctionner. Anciennement, debian créait un utilisateur debian-sys-maint à cet usage, ce n'est plus le cas depuis debian 9 qui configuré désormais l'utilisateur root à cet usage dans <code>/etc/mysql/debian.cnf</code> et parfois dans <code>/etc/dbconfig-common/*</code> | |||
Éventuellement, vous pouvez stocker le mot-de-passe root comme ceci dans <code>/root/.my.cnf</code> (veillez bien à ce que ce fichier ne soit lisible que par l'utilisateur unix root) : | |||
<pre> | <pre> | ||
[client] | |||
user=root | |||
password= | |||
socket=/var/run/mysqld/mysqld.sock | |||
</pre> | </pre> | ||
Si vous souhaitez revenir à la configuration "passwordless" pour l'utilisateur root, tapez dans la console mysql : | |||
<pre>use mysql; update user set plugin='unix_socket' where user='root'; flush privileges;</pre> | |||
=Créer un utilisateur et lui attribuer les droits sur une base de donnée= | =Créer un utilisateur et lui attribuer les droits sur une base de donnée= | ||
Ligne 124 : | Ligne 144 : | ||
=Optimiser les réglages de MySQL= | =Optimiser les réglages de MySQL= | ||
MySQLTuner est un petit script perl qui vous proposera des optimisations pour votre configuration MySQL en fonction des statistiques de votre utilisation.<pre> | |||
MySQLTuner est un petit script perl qui vous proposera des optimisations pour votre configuration MySQL en fonction des statistiques de votre utilisation. | |||
<pre> | |||
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl | wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl | ||
chmod +x mysqltuner.pl | chmod +x mysqltuner.pl | ||
./mysqltuner.pl | ./mysqltuner.pl | ||
</pre> | </pre> | ||