Table des matières

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