Outils pour utilisateurs

Outils du site


reseau:debian:installmysql

Ceci est une ancienne révision du document !


Installation du service de base de donnés MariaDB et de PhpMyadmin

Test du serveur Debian

  • accédez à votre machine virtuelle Debian,
  • Ouvrez une session avec le compte root (mot de passe btssio),
  • Effectuer une mise à jour de votre serveur avec les commandes suivantes :
# apt update
# apt upgrade
  • Visualisez et testez la configuration IP du serveur avec les commandes suivantes :
# ip a
# ping www.onisep.fr

Installation du serveur MariadDB

  • installation éventuelle des prérequis
# apt install libapache2-mod-php php-mysql
  • installez le paquetage MariaDB :
# apt install mariadb-server

L'installation des paquetages nécessaires va se faire ainsi que la configuration de Mariadb.

  • Création d'un compte admin pour l'administration de MariaDB mot de passe btssio
# mariadb -u root -e "CREATE USER admin@'%'; GRANT ALL PRIVILEGES ON *.* to admin@'%' IDENTIFIED BY 'btssio' WITH GRANT OPTION; FLUSH PRIVILEGES;"

Test du serveur MySQL :

Lancez les commandes suivantes

# ps aux | grep mysqld

Le processus serveur s'appelle mysqld.

Le caractère | est obtenu par ALT 124

Gestion du service

  • arrêter MySQL
# systemctl stop mysqld
  • lancer MySQL
# systemctl start mysqld

Connexion à MariaDB

Vous allez utiliser sur le serveur Debian un client mysql en mode texte pour visualiser les comptes et mots de passe (chiffrés) actuellement créés dans MySQL :

  • connexion à MySQL
 # mysql -u root -p
 Welcome to the MySQL monitor.

Le paramètre -p permet de saisir un mot de passe, on peut se connecter directement à la base de données voulue.

  • visualiser les bases de données existantes
MariaDB [none]> show databases; 
  • choisir la base de données mysql
MariaDB [none]> use mysql;		
  • visualiser toutes les tables existantes dans la BDD mysql
MariaDB [mysql]> show tables;	
  • visualiser les colonnes de la table user
MariaDB [mysql]> show columns from user;	
  • visualiser les comptes existants
MariaDB [mysql]> select host, user, password from user;
+-----------+------------+-------------------------------------------+
| host      | user       | password                                  |
+-----------+------------+-------------------------------------------+
| localhost | root       |                                           |
| localhost | phpmyadmin | *67FB196439A190C83D2F15B6B2A3A040D07C864A |
| %         | admin      | *051EE6D715E32156AA5783A812D83B2D5BAE2A79 |
+-----------+------------+-------------------------------------------+
3 rows in set (0.002 sec)

  • quitter le client mysql
MariaDB [mysql]>  quit			→ 

Pour se connecter à MariaDB

# mysql --user=root    --password=btssio

Installez PHPMyAdmin

  • Téléchargement de phpmyadmin
# wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
  • Décompression de l’archive
# tar -xzf phpMyAdmin-latest-all-languages.tar.gz --one-top-level=phpmyadmin --strip-components=1
  • Placement dans le dossier de publication /var/www/html/ du serveur Web (solution simple)
# mv phpmyadmin /var/www/html/
  • Création la base de données phpmyadmin et d’un compte administrateur de phpmyadmin
# mariadb -u root -e "CREATE DATABASE phpmyadmin DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; GRANT ALL ON phpmyadmin.* TO 'phpmyadmin'@'localhost' IDENTIFIED BY 'btssio'; FLUSH PRIVILEGES;"
  • Création des tables nécessaire dans la base de données phpmyadmin
# mysql -u admin -pbtssio <  /var/www/html/phpmyadmin/sql/create_tables.sql

* Création puis modification du fichier config.inc.php (24 opérations)

# mv /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php 

* Modification des lignes du fichier /var/www/html/phpmyadmin/config.inc.php pour obtenir

$cfg['blowfish_secret'] = 'IL_FAUT_32_CARACTERES_AZERTYUIOP';
 $cfg['Servers'][$i]['controluser'] = 'phpmyadmin';
 $cfg['Servers'][$i]['controlpass'] = 'btssio';
/* Storage database and tables */
 $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
 $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
 $cfg['Servers'][$i]['relation'] = 'pma__relation';
 $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
 $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
 $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
 $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
 $cfg['Servers'][$i]['history'] = 'pma__history';
 $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
 $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
 $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
 $cfg['Servers'][$i]['recent'] = 'pma__recent';
 $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
 $cfg['Servers'][$i]['users'] = 'pma__users';
 $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
 $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
 $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
 $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
 $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
 $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
  • Création du répertoire pour les templates temporaires de phpmyadmin (2 opérations)“
# mkdir /var/www/html/phpmyadmin/tmp 
# chown -R www-data:www-data /var/www/html/phpmyadmin/tmp
  • Installation des extensions php- pour phpmyadmin (2 opérations, 6 extensions supplémentaires)
# Voir la doc officielle : https://docs.phpmyadmin.net/fr/latest/require.html#php
# apt -y install php-json php-mbstring php-zip php-gd php-xml php-curl 
# systemctl reload apache2

S'authentifier sur PhpMyAdmin avec le compte admin

Pour s'authentifier sur Phpmyadmin avec le compte root (interdit pour des raisons de sécurité) Il faut reconfigurer la méthode d'authentification par mot de passe à native (par défaut c'est configuré à unix_socket. Pour plus de facilité, vous allez le faire avec l'assistant d'installation de Phhmyadm.

Par défaut le champ plugin, du compte root est configuré avec la valeur unix_socket

MariaDB [(none)]> select user, password, plugin from mysql.user ;
+------------+-------------------------------------------+-------------+
| user       | password                                  | plugin      |
+------------+-------------------------------------------+-------------+
| root       | *051EE6D715E32156AA5783A812D83B2D5BAE2A79 | unix_socket |
| agnes      | *9323D7EAF6088293C3F2BD77AF1020994F3828A6 |             |
| phpmyadmin | *051EE6D715E32156AA5783A812D83B2D5BAE2A79 |             |
| repl       | *051EE6D715E32156AA5783A812D83B2D5BAE2A79 |             |
+------------+-------------------------------------------+-------------+
4 rows in set (0.00 sec)
  • modification la méthode d'authentification en relançant l'assistant de configuration de Phpmyadmin :
# dpkg-reconfigure phpmyadmin
  • Choisissez bien la méthode de connexion TCP/IP ;
  • ATTENTION : choisissez comme identifiant MySQL pour Phpmyadmim root et votre mot de passe ;
  • Nom de l'administrateurdel base de données root ;
  • en cas d'erreur relancez l'assistant avec les mêmes paramètres.

Redémarrer le service mysql

root@debian10M:~# systemctl restart mysql
reseau/debian/installmysql.1613920022.txt.gz · Dernière modification: 2021/02/21 16:07 de techer.charles_educ-valadon-limoges.fr