web-dev-qa-db-fra.com

Comment mettre à jour PHPmyAdmin [revisité]

Cette question a été posée précédemment, Comment mettre à jour PHPmyAdmin

La réponse donnée était

Sudo apt-get update
Sudo apt-get install phpmyadmin

ou

Sudo apt-get update
Sudo apt-get upgrade

La version de phpmyadminincluse dans apt-get est 4.5.4, qui était publiée le 28 janvier 2016.

En réponse à cette question, une réponse a été d'utiliser le archive personnelle qui propose les commandes suivantes.

Sudo add-apt-repository ppa:nijel/phpmyadmin
Sudo apt-get update

Dans mon cas, beaucoup de choses ont été mises à jour, mais pas spécifiquement phpmyadminname__, j'avais besoin de la commande supplémentaire.

Sudo apt-get update phpmyadmin

Cela a réussi à dépasser la limite de la version 4.5.4, mais n'a été mise à jour que vers la version 4.6.6 qui était publiée le 23 janvier 2017.

A ce jour, il semble que le téléchargement et la copie manuels à l'aide des instructions vagues de docs.phpmyadmin.net soient requis.

Existe-t-il un référentiel plus récent pour phpmyadminque PPA ou une installation manuelle est-elle requise?

26
Dwight Wilbanks

@ Photo Larry frappez bien la tête! Je vais donner une réponse basée sur la sienne qui sera facile à comprendre et à suivre.

  • Votre première étape consiste à installer PMA (phpMyAdmin) à partir du référentiel officiel Ubuntu: apt-get install phpmyadmin.
  • Ensuite, accédez au répertoire usr/share: cd /usr/share.
  • Troisièmement, supprimez le répertoire phpmyadmin: rm -rf phpmyadmin.
  • Maintenant, nous devons télécharger la dernière version de PMA sur notre système (notez que vous avez besoin de wget: apt-get install wget): wget -P /usr/share/ "https://files.phpmyadmin.net/phpMyAdmin/4.8.2/phpMyAdmin-4.8.2-english.Zip" Laissez-moi vous expliquer les arguments de cette commande, -P définit le chemin et "le lien.Zip" est actuellement (7/17/18) la dernière version de PMA. Vous pouvez trouver ces liens ICI .
  • Pour cette étape suivante, vous devez décompresser (apt-get install unzip): unzip phpMyAdmin-4.8.2-english.Zip. Nous venons de décompresser PMA, nous allons maintenant le déplacer vers sa dernière maison.
  • Utilisons la commande cp (copy) pour déplacer nos fichiers! Notez que nous devons ajouter l'argument -r puisqu'il s'agit d'un dossier. cp -r phpMyAdmin-4.8.2-english phpmyadmin.
  • Il est maintenant temps de nettoyer: rm -rf phpMyAdmin-4.8.2-english.

Continue de lire!

Vous pouvez maintenant remarquer deux erreurs après vous être connecté à PMA.

the configuration file now needs a secret passphrase (blowfish_secret). phpmyadmin
The $cfg['TempDir'] (./tmp/) is not accessible. phpMyAdmin is not able to cache templates and will be slow because of this.

Cependant, ces problèmes sont relativement faciles à résoudre. Pour le premier numéro, tout ce que vous avez à faire est de saisir l'éditeur de votre choix et de modifier /usr/share/phpmyadmin/config.inc.php, mais il y a un problème, nous l'avons supprimé! C'est bon, tout ce que vous avez à faire est: cd /usr/share/phpmyadmin & cp config.sample.inc.php config.inc.php.

Exemple d'entrée de variable secrète phpMyAdmin Blowfish:

/*
 * This is needed for cookie based authentication to encrypt password in
 * cookie
 */
$cfg['blowfish_secret'] = '{^QP+-(3mlHy+Gd~FE3mN{gIATs^1lX+T=KVYv{ubK*U0V'; 
/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

Maintenant, enregistrez et fermez le fichier.

  • Nous allons maintenant créer un répertoire tmp pour PMA: mkdir tmp & chown -R www-data:www-data /usr/share/phpmyadmin/tmp. La dernière commande permet au serveur Web Apache de posséder le répertoire tmp et d’éditer son contenu.

EDIT 12 décembre 2018

Vous ne voulez pas que quelqu'un vole vos cookies, n'est-ce pas?

Il a été porté à mon attention que https://www.question-defense.com/tools/phpmyadmin-blowfish-secret-generator provoque des erreurs sur les anciennes versions de PMA. Cependant, la principale raison pour laquelle je vous déconseille d’utiliser des sites Web comme celui-ci est que vous ne savez pas s’ils utilisent un PRNG faible ( Nombre pseudo-aléatoire) (par exemple, Rand(), mt_Rand() et lcg_value()) ou l'une des fonctions de "réorganisation" (par exemple str_shuffle(), shuffle(), array_Rand()). En tant que tel, j'ai créé mon propre outil à cette fin. Il génère une chaîne cryptée de 32 caractères que vous pouvez utiliser sans vous soucier de la sécurité ou des erreurs! PHP page de manuel pour la fonction que j'utilise pour générer le caractère aléatoire http://php.net/manual/fr/function.random-int.php . J'ai remplacé l'ancien lien par celui-ci: https://www.motorsportdiesel.com/tools/blowfish-salt/pma/ .

34
CRIMSON 501

Je devais faire cela à cause de problèmes avec php7.2 et avoir reçu l'erreur count(): Parameter must be an array or an object that implements Countable.

La version d'apt était 4.5.4 et le ppa n'a pas les correctifs pour php7.2. Ma solution consistait à télécharger la dernière version à partir de https://www.phpmyadmin.net/ et à copier les fichiers dans /usr/share/phpmyadmin.

10
Jason Houle

Comme indiqué ci-dessus, vous devez mettre à jour les fichiers manuellement, mais j'ai cherché pendant une heure pour savoir où ils se trouvaient (/ usr/share) et je me suis gardé de voir qu'il allait être placé dans/var/www/html, ce qui est incorrect. . Si vous avez installé le logiciel avec apt-get install phpmyadmin après avoir ajouté le référentiel ci-dessus qui prétend être actuel, vous aurez au moins les librairies php7.2 nécessaires. Ensuite, vous devez installer la NOUVELLE version (4.8) dans/usr/share/phpmyadmin en accédant à/usr/share et en clonant le clone git: git https://github.com/phpmyadmin/phpmyadmin.git (j’ai fait rm -rf phpmyadmin d’abord) juste pour être sûr qu’il ne reste aucun ancien code. Ensuite, lorsque vous accédez à l'interface Web ..., vous voyez que la version la plus récente est maintenant utilisée. Ensuite, assurez-vous de vous connecter à phpmyadmin et d’exécuter: composer update --no-dev Ceci permet d’obtenir les bibliothèques supplémentaires nécessaires. Cela installe 4.9.0-dev qui fonctionne très bien et je suis sous Ubuntu 16.04.4. Merci espérons que cela aide quelqu'un à gagner du temps

3
Photo Larry

J'utiliserais l'archive personnelle de phpmyadmin si vous avez vraiment besoin de la dernière version. Attention, il y a une dépendance (vous avez aussi besoin d'un php plus récent):

Description du PPA

Derniers paquets phpMyAdmin - https://www.phpmyadmin.net/ . Basé sur les paquets disponibles dans Debian.

Il y a quelques changements notables:

2
Rinzwind

Vous pouvez simplement installer manuellement la dernière version de phpmyadmin.

Rendez-vous sur https://www.phpmyadmin.net/downloads et téléchargez la dernière version, mais assurez-vous de disposer de la version compatible PHP et de MySQL figurant sur le site Web.

Extrayez-le dans le dossier public de votre serveur et modifiez le fichier config.inc.php. Assurez-vous que votre auth_type est cookie et Host correspond à votre hôte. Ce paramètre vous fera entrer votre nom d'utilisateur et votre mot de passe lors de la connexion.

/*Authentication type*/
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['Host'] = 'localhost';
2
Timothy

La réponse de Crimson501 est parfaite, sauf si vous êtes sur Ubuntu. Pour résoudre le problème du fichier blowfish et tmp sous Ubuntu, vous devez modifier le fichier suivant afin de référencer la configuration existante et le répertoire tmp utilisé par Ubuntu.

En utilisant votre éditeur de fichier texte préféré, modifiez:

/usr/share/phpmyadmin/libraries/vendor_config.php
find TEMP_DIR
modify './tmp/' to '/var/lib/phpmyadmin/tmp/'
find CONFIG_DIR
modify '' to '/etc/phpmyadmin/'
save the changes

Maintenant, lorsque vous revenez en arrière et actualisez la page, les erreurs disparaissent.

0
user373310

Je conseillerais d'utiliser Docker pour exécuter le dernier phpmyadmin. Son installation est simple et toutes les dépendances sont gérées automatiquement et n'interagissent pas avec votre installation locale. Il utilise 25 Mo de RAM, donc ce n'est pas non plus une mémoire.

Il est très facile d’exécuter le dernier phphmyadmin sur n’importe quelle plate-forme.

https://docs.phpmyadmin.net/en/latest/setup.html#installing-using-docker

0
Peterdk