sql >> Base de Datos >  >> Database Tools >> phpMyAdmin

Errores de phpMyAdmin (recuento, pez globo, etc.) después de la actualización de php7.2 en Ubuntu 16

Actualizar manualmente phpMyAdmin en Ubuntu

Al momento de escribir esto, la versión de phpMyAdmin disponible en el administrador de paquetes de Ubuntu (4.5.4) no es totalmente compatible con php7.2, lo que lleva a la molesta advertencia count(). La solución es actualizar a la última versión de phpMyAdmin , que es 4.7.9 en el momento de escribir este artículo.

El paquete de Ubuntu está detrás. Hay un phpMyAdmin PPA , pero también está detrás:

"Nota:este repositorio actualmente está un poco atrasado, ya que me cuesta encontrar tiempo para actualizarlo a la serie 4.7".

Afortunadamente, podemos actualizar manualmente desde la versión anterior.

Los pasos básicos son:

  1. Hacer una copia de seguridad de la instalación actual
  2. Descargue y extraiga la última versión de phpMyAdmin
  3. Modifique el archivo vendor_config.php al directorio apropiado para Ubuntu
  4. Agregue una cadena aleatoria más larga para resolver los mensajes de error de Blowfish y permitir la autenticación de cookies adecuada

Estos comandos de terminal deberían hacer el trabajo (use sudo si corresponde):

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

(Opcional ) Reemplace la línea wget con la última versión o el formato preferido de su elección. Visite https://www.phpmyadmin.net/downloads/ .

Resuelva el mensaje de error del pez globo

En este punto, probablemente obtendrá un error de pez globo cuando use phpMyAdmin . Para resolver esto, debe actualizar un archivo de configuración específico:

  1. Abra vendor_config.php en /usr/share/phpmyadmin/libraries/vendor_config.php
  2. En o alrededor de la línea 38, reemplace define('CONFIG_DIR', ''); con define('CONFIG_DIR', '/etc/phpmyadmin/'); y guarde el archivo.

Cuando haya terminado, las líneas 33-38 de vendor_config.php debería verse algo como:

/**
 * 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/');

En este punto, phpMyAdmin puede funcionar sin errores, pero es posible que deba agregar una longitud adicional a la cadena de configuración blowfish_secret .

  1. Abra el archivo /var/lib/phpmyadmin/blowfish_secret.inc.php .

Deberías ver:

<?php
$cfg['blowfish_secret'] = 'Something Short';
  1. Agregue aleatoriedad adicional al $cfg['blowfish_secret'] cadena, al menos 40 caracteres e incluso más podría ser mejor (uso una cadena de hasta 100 caracteres).

Por ejemplo (no use esto, solo un ejemplo):

$cfg['blowfish_secret'] = 'A much longer random string 7NfSjYezwmwGCfGDuDO7uWn4ESw2sCFCym1RatPjGCfGCym1RatPjGCfG';
  1. Guarde el archivo.

En este punto, actualice phpMyAdmin (en su navegador) y vuelva a iniciar sesión . Todo debería funcionar correctamente ahora.

Si lo desea, puede eliminar la copia de seguridad de la versión anterior de phpMyAdmin con:

rm -rfv /usr/share/phpmyadmin_old

Documentación adicional

Como referencia, los siguientes son extractos de documentación oficial de phpMyAdmin sobre la actualización manual a la última versión (esto no Específico de Ubuntu):

Advertencia

Nunca extraiga la nueva versión sobre una instalación existente de phpMyAdmin, siempre elimine primero los archivos antiguos manteniendo solo la configuración.

De esta forma, no dejará código antiguo que ya no funciona en el directorio, lo que puede tener graves implicaciones de seguridad o puede causar diversas roturas.

Y:

La actualización completa se puede realizar en unos simples pasos:

  1. Descargue la última versión de phpMyAdmin desde https://www.phpmyadmin.net/downloads/ .

  2. Cambie el nombre de la carpeta phpMyAdmin existente (por ejemplo, a phpmyadmin-old).

  3. Descomprima phpMyAdmin recién descargado en la ubicación deseada (por ejemplo, phpmyadmin).

  4. Copie config.inc.php` de la ubicación anterior (phpmyadmin-old) a la nueva (phpmyadmin).

  5. Prueba que todo funcione correctamente.

  6. Eliminar la copia de seguridad de la versión anterior (phpmyadmin-old).