Mariadb
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 il 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 !!!