Mariadb

De Documentation
Aller à la navigationAller à la recherche

Mariadb (voir wordress sur alpine le)

Création du conteneur mariadb + maj

Installation de mariadb

 # apk add (mysql) mariadb mariadb-server-utils mariadb-client
 # apk add php83-pdo_mysql php83-mbstring

Initialisation de mariadb (peuple /var/lib/mysql)

 # /etc/init.d/mariadb setup

Démarrer le service

 # rc-service mariadb start

Sécuriser la base de donnée

 # mysql_secure_installation (vide/n/n/Y/Y/Y/Y)

on peut entrer dans mysql (idem mariadb)

Activer le démarage automatique :

 # rc-update add mariadb

Créer un super-utilisateur : Création d'un utilisateur pour phpmyadmin :

 # mariadb
 CREATE USER 'login_util'@'%' IDENTIFIED BY 'pass_util';
 GRANT ALL PRIVILEGES ON *.* TO 'login_util'@'%' WITH GRANT 
 OPTION;
 FLUSH PRIVILEGES;
 (Ctrl-d pour sortir)

Pour l'accès avec mot de passe :
Stopper le service mariadb :

 # rc-service mariadb stop

Dans /etc/my.cnf.d/maria_db_server.cnf, sous [mysqld], ajouter :

 skip-grant-tables

Commenter la ligne :

 # skip-networking

Ajouter (pour pmb) :

 max_allowed_packet = 64M                       
 query_cache_limit = 5M                         
 query_cache_size = 5M

Décommenter et ajouter :

 bind_address = 0.0.0.0     
 port = 3306
 # rc-service mariadb restart

Se connecterà phpmyadmin : message d'erreur :

 Le stockage de configurations phpMyAdmin n'est pas complètement configuré, certaines fonctionnalités ont été désactivées. Voir l'analyse du problème.
Ou encore aller sur l'onglet « Opérations » de n'importe quelle base de données pour le définir à cet endroit.

-> cliquer sur "voir l'analyse du problème" => Créer une base de données nommée « phpmyadmin » et la configuration du stockage de phpMyAdmin dans cette base. (clic sur "Créer")...

(tout au vert)

 NB : l'activation des statistiques peut causer un trafic important entre le serveur Web et le serveur MySQL.

=> clic sur "Activer les statistiques"

Conteneur phpma : Dans /etc/phpmyadmin/config.inc.php modifier http pour :

 cfg['Servers'][$i]['auth_type'] = 'cookie';

Redémarrrer mariadb

La connection fonctionne, mais toujours pas les droits pour gérer les utilisateurs...

!!!!! Il s'agissait d'une mauvaise configuration de phpmyadmin :

1. Ne pas changer le nom du fichier config.inc.php sans quoi in n'est pas pris en compte.

2. Le paramètre 'DefaultConnectionCollation' doit être compris par mariadb (par défaut : utf8mb4_general_ci)
On peut lister les jeux de caractères disponibles sur mariadb par la commande :

 mysql> SHOW CHARACTER SET;

Définir un jeu de caractères non pris en compte par mysql entraîne des erreurs (l'utilisateur ne dispose pas des droits...) et 4 jours de recherches infructueuses sur le net !!!