====== MariaDB / MySQL ====== ===== Installation ===== :~ >$ yum install mariadb mariadb-server :~ >$ systemctl enable mariadb :~ >$ mysql_secure_installation :~ >$ vim /etc/my.cnf Par défaut la connexion ne se fera qu'en localhost, on peut modifier les interfaces sur lesquelles écouter via le paramètre suivant, par exemple pour écouter sur toutes les interfaces : PS : on préférera laisser en localhost et faire un tunnel ssh. :~ >$ bind-address = 0.0.0.0 :~ >$ firewall-cmd --zone=public --add-service=mysql --permanent :~ >$ firewall-cmd --reload ===== Première base ===== MariaDB [(none)]> create database dbplop character set utf8 collate utf8mb4_unicode_ci; MariaDB [(none)]> create user 'uplop'@'localhost' identified by 'pwdplop'; MariaDB [(none)]> grant all on dbplop.* to 'uplop'@'localhost' identifed by 'pwdplop'; MariaDB [(none)]> flush privileges; ===== Donner des accès en lecture seul sur une base à un utilisateur ===== MariaDB [(none)]> grant select on 'dbplop' to 'rouplop'@'192.168.0.%' identified by 'ropwdplop'; MariaDB [(none)]> flush privileges; ===== Donner tous les accès sur une base à un utilisateur ===== MariaDB [(none)]> grant all on 'dbplop' to 'rouplop'@'192.168.0.%' identified by 'ropwdplop'; MariaDB [(none)]> flush privileges; ===== Supprimer une base de données ===== MariaDB [(none)]> drop database nomDeMaBase; ===== Supprimer un utilisateur ===== MariaDB [(none)]> drop user 'monUtilisateur'@'param'; ===== Modifier un mot de passe ===== ==== Utilisateur ==== MariaDB [(none)]> use mysql MariaDB [(mysql)]> update user set password=PASSWORD('plop') where user='utilisateur'; MariaDB [(mysql)]> flush privileges; CTRL+d ==== Root ==== Si le mot de passe est perdu et qu'il est impossible de s'y connecter. :~ >$ systemctl stop mariadb :~ >$ mysqld_safe --skip-grant-tables & :~ >$ mysql -u root MariaDB [(none)]> use mysql MariaDB [(mysql)]> update user set password=PASSWORD('plop') where user='root'; MariaDB [(mysql)]> flush privileges; CTRL+d :~ >$ systemctl restart mariadb