phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

Erreurs phpMyAdmin (count, blowfish, etc.) après la mise à jour de php7.2 sur Ubuntu 16

Mettre à jour manuellement phpMyAdmin sur Ubuntu

Au moment d'écrire ces lignes, la version de phpMyAdmin est disponible dans le gestionnaire de paquets d'Ubuntu (4.5.4) ne prend pas entièrement en charge php7.2, ce qui conduit à l'avertissement ennuyeux de count(). La solution consiste à mettre à jour vers la dernière version de phpMyAdmin , qui est 4.7.9 au moment de la rédaction.

Le paquet Ubuntu est derrière. Il existe un phpMyAdmin PPA , mais lui aussi est en retard :

"Remarque :Ce référentiel est actuellement un peu en retard car j'ai du mal à trouver le temps de le mettre à jour vers la série 4.7."

Heureusement, nous pouvons effectuer une mise à niveau manuelle à partir de l'ancienne version.

Les étapes de base sont :

  1. Faire une copie de sauvegarde de l'installation actuelle
  2. Télécharger et extraire la dernière version de phpMyAdmin
  3. Modifiez le fichier vendor_config.php dans le répertoire approprié pour Ubuntu
  4. Ajoutez une chaîne aléatoire plus longue pour résoudre les messages d'erreur blowfish et permettre une authentification correcte des cookies

Ces commandes de terminal devraient faire le travail (utilisez sudo le cas échéant) :

mv /usr/share/phpmyadmin /usr/share/phpmyadmin_old
mkdir /usr/share/phpmyadmin
mkdir /var/downloads
cd /var/downloads
wget https://files.phpmyadmin.net/phpMyAdmin/4.7.9/phpMyAdmin-4.7.9-all-languages.tar.gz
tar -xf phpMyAdmin-4.7.9-all-languages.tar.gz -C /usr/share/phpmyadmin --strip-components=1

(Facultatif ) Remplacez la ligne wget par la dernière version ou le format préféré de votre choix. Visitez https://www.phpmyadmin.net/downloads/ .

Résoudre le message d'erreur Blowfish

À ce stade, vous obtiendrez probablement une erreur blowfish lorsque vous utiliserez phpMyAdmin . Pour résoudre ce problème, vous devez mettre à jour un fichier de configuration spécifique :

  1. Ouvrir vendor_config.php dans /usr/share/phpmyadmin/libraries/vendor_config.php
  2. Sur ou autour de la ligne 38, remplacez define('CONFIG_DIR', ''); avec define('CONFIG_DIR', '/etc/phpmyadmin/'); et enregistrez le fichier.

Lorsque vous avez terminé, lignes 33 à 38 de vendor_config.php devrait ressembler à :

/**
 * Directory where configuration files are stored.
 * It is not used directly in code, just a convenient
 * define used further in this file.
 */
define('CONFIG_DIR', '/etc/phpmyadmin/');

À ce stade, phpMyAdmin peut fonctionner sans erreur, mais vous devrez peut-être ajouter une longueur supplémentaire à la chaîne de configuration blowfish_secret .

  1. Ouvrez le fichier /var/lib/phpmyadmin/blowfish_secret.inc.php .

Vous devriez voir :

<?php
$cfg['blowfish_secret'] = 'Something Short';
  1. Ajouter un caractère aléatoire supplémentaire au $cfg['blowfish_secret'] chaîne, au moins 40 caractères et même plus pourraient être mieux (j'utilise une chaîne aussi longue que 100 caractères).

Par exemple (n'utilisez pas ceci, juste un exemple) :

$cfg['blowfish_secret'] = 'A much longer random string 7NfSjYezwmwGCfGDuDO7uWn4ESw2sCFCym1RatPjGCfGCym1RatPjGCfG';
  1. Enregistrez le fichier.

À ce stade, actualisez phpMyAdmin (dans votre navigateur) et reconnectez-vous . Tout devrait fonctionner correctement maintenant.

Si vous le souhaitez, vous pouvez supprimer la copie de sauvegarde de l'ancienne version de phpMyAdmin avec :

rm -rfv /usr/share/phpmyadmin_old

Documents supplémentaires

Pour référence, voici des extraits de la documentation officielle de phpMyAdmin à propos de la mise à jour manuelle vers la dernière version (ce n'est pas Spécifique à Ubuntu) :

Avertissement

N'extrayez jamais la nouvelle version sur une installation existante de phpMyAdmin, supprimez toujours d'abord les anciens fichiers en ne conservant que la configuration.

De cette façon, vous ne laisserez pas d'ancien code qui ne fonctionne plus dans le répertoire, ce qui peut avoir de graves implications en matière de sécurité ou causer diverses pannes.

Et :

La mise à niveau complète peut être effectuée en quelques étapes simples :

  1. Téléchargez la dernière version de phpMyAdmin depuis https://www.phpmyadmin.net/downloads/ .

  2. Renommez le dossier phpMyAdmin existant (par exemple en phpmyadmin-old).

  3. Décompressez phpMyAdmin fraîchement téléchargé à l'emplacement souhaité (par exemple phpmyadmin).

  4. Copiez config.inc.php` de l'ancien emplacement (phpmyadmin-old) vers le nouveau (phpmyadmin).

  5. Testez que tout fonctionne correctement.

  6. Supprimer la sauvegarde de la version précédente (phpmyadmin-old).