TUTOS.EU

Installation de PHPMyAdmin

Comment installer PHPMyAdmin pour gerer sa base de donnees


Sous un système linux où vous avez la main, vous pouvez installer phpmyadmin via cette commande

sudo apt install phpmyadmin
Lien vers le fichier : cliquez ici Copier le code

Et vous pouvez désinstaller via cette commande

sudo apt purge phpmyadmin
Lien vers le fichier : cliquez ici Copier le code

Des questions seront posées pour une configuration automatique.

Par défaut rien n'est coché ! Donc attention à bien sélectionner apache2 ou lighttpd si c'est le type de serveur web que vous utilisez.

Il faut appuyer sur la barre espace pour cocher un serveur web.

Une * doit apparaitre.

Démonstration

Ces autres questions seront posées


Note :

si votre hébergeur est Free, PHPMyAdmin est déjà installé et configuré

Une fois le package installé, le site doit répondre localement sur
http://localhost/phpmyadmin

Rendez vous sur https://www.phpmyadmin.net/
Cliquez sur Download

Décompressez le zip

Pour envoyer les fichiers de phpmyadmin sur votre serveur depuis un poste windows avec Winscp, vous pouvez installer au préalable sur votre serveur linux la partie serveur SSH avec la commande

sudo apt-get install openssh-server
Lien vers le fichier : cliquez ici Copier le code

Pour ensuite déplacer le répertoire de phpma dans le répertoire d'apache, on peut utiliser la commande mv.

Exemple

mv phpMyAdmin-5.0.1-all-languages /var/www/html/phpma
Lien vers le fichier : cliquez ici Copier le code

mysqli est nécessaire. Pour l'activer, aller dans php.ini qui doit trainer sous /etc/php/votre_version_de_php/apache2

Activez le module en retirant le point virgule

Relancez apache pour prise en compte

sudo systemctl restart apache2
Lien vers le fichier : cliquez ici Copier le code

Pour ce qui est de la configuration, on trouve une doc en Français sur le site sur
https://www.phpmyadmin.net/docs/

Pour une installation manuelle comme présentée ici, il y a un guide rapide :
https://docs.phpmyadmin.net/fr/latest/setup.html#quick-install

Dupliquez le fichier config.sample.inc.php

Une technique est donc de dupliquer le fichier config.sample.inc.php
et de nommer la copie du fichier en config.inc.php

Ensuite, ouvrez config.inc.php avec un éditeur comme Notepadd++

Si phpma est installé sur le même serveur que la base de données, vous pouvez laisser le fichier de configuration tel quel.
Si ce n'est pas le cas, vous pouvez préciser le nom du serveur sql.
Vous pouvez éventuellement préciser que la connexion doit se faire en tcp.

Si vous voulez éviter de saisir votre login/mdp à chaque connexion, vous pouvez indiquer les paramètres. Mais il faudra donc sécuriser l'accès à la page avec une autre solution !

Voici l'équivalent des paramètres de la capture en texte

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'LoginPourVotreBaseSQL';
$cfg['Servers'][$i]['password'] = 'MotDePassePourVotreBaseSQL'; // use here your password

$cfg['Servers'][$i]['only_db'] = 'NomBaseSQL';
$cfg['Servers'][$i]['connect_type'] = 'tcp';

/* Server parameters */
//$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['host'] = 'NomServeurSQL';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
Lien vers le fichier : cliquez ici Copier le code

Donc si vous avez spécifié le login/mdp qui permet de gérer votre serveur de base de données, une solution peut être de créer un fichier nommé .htaccess à la racine du répertoire où vous avez uploadé phpmyadmin

Paramétrez votre fichier .htaccess en vous inspirant de cet exemple :

Voici la base à copier/coller/adapter

Order Deny,Allow 
Deny from all
Allow from xx.xx.xx.xx

AuthUserFile /mywebsite/.htpasswd
AuthGroupFile /dev/null
AuthName "Accès Restreint"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
Lien vers le fichier : cliquez ici Copier le code

Télécharger la vidéo: clic droit ici

Support en pdf


Si vous avez l'erreur de connexion 'Impossible de se connecteur au serveur MySQL'
mysqli::real_connect() (HY000/1698): Access denied for user 'root'@'localhost'

Comme indiqué sur https://doc.ubuntu-fr.org/phpmyadmin
il n'est pas conseillé de se connecter avec le compte root.
Il est préférable de créer un nouveau compte qui a tous les privilèges.
Pour cela adaptez la commande ci-dessous en indiquant le login et mot de passe choisi.

sudo mysql
GRANT ALL ON *.* TO 'nom_utilisateur_choisi'@'localhost' IDENTIFIED BY 'mot_de_passe_solide' WITH GRANT OPTION;
FLUSH PRIVILEGES;
QUIT;
Lien vers le fichier : cliquez ici Copier le code

Exemple

Si vous utilisez php7.2 et qu'à l'utilisation de phpymadmin vous avez une erreur qui s'affiche du type

Warning in ./libraries/sql.lib.php#613
count(): Parameter must be an array or an object that implements Countable

Comme expliqué sur https://openclassrooms.com/forum/sujet/erreur-dans-phpmyadmin

Il faut éditer sql.lib.php avec la commande

sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php

 

A l'aide des touches CTRL + W rechercher
(count($analyzed_sql_results['select_expr'] == 1)

et replacer par
((count($analyzed_sql_results['select_expr']) == 1)

Sauvegarder avec CTRL + X puis Y pour confirmer

 

Ensuite éditer plugin_interface.lib.php avec la commande
sudo nano /usr/share/phpmyadmin/libraries/plugin_interface.lib.php

A l'aide des touches CTRL + W rechercher
if ($options != null && count($options) > 0)


Remplacer par
if (! is_null($options) && count((array)$options) > 0) {

 

Sauvegarder avec CTRL + X puis Y pour confirmer

Relancer apache avec

 

sudo service apache2 restart

ou sudo service nginx restart

Si vous avez un message comme quoi la taille du fichier a dépassé la limite permise par votre configuration de PHP

Comme expliqué dans l'aide de phpmyadmin, il faut modifier le fichier php.ini
Pour cela adaptez la commande ci-dessous par rapport à votre version de php

sudo nano /etc/php/7.2/apache2/php.ini
Lien vers le fichier : cliquez ici Copier le code

Augmentez la valeur des paramètres
upload_max_filesize, memory_limit et post_max_size

J'ai par exemple passé ici upload_max_filesize à 20M

Comme d'habitude, relancer apache avec une de ces commandes

sudo service apache2 restart
sudo service nginx restart
Lien vers le fichier : cliquez ici Copier le code

Téléchargement(s)

NomSite Web d origineDescription
phpmyadmin http://www.phpmyadmin.net Site web du système d'administration de base MySQL
phpmyadmin - fichier de c... Exemple de fichier de configuration de PhpMyAdmin
7zip V4.57 http://www.7-zip.org/download.... Logiciel de compression. Permet aussi d'explorer les images ISO.


Article(s) précédent(s)

2