sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

phpMyAdmin-fejl (count, blowfish, osv.) efter php7.2-opgradering på Ubuntu 16

Opdater phpMyAdmin manuelt på Ubuntu

Når dette skrives, er phpMyAdmin-versionen tilgængelig i Ubuntu pakkehåndtering (4.5.4) understøtter ikke fuldt ud php7.2, hvilket fører til den irriterende count() advarsel. Løsningen er at opdatere til den seneste version af phpMyAdmin , hvilket er 4.7.9 i skrivende stund.

Ubuntu-pakken er bagud. Der er en phpMyAdmin PPA , men det ligger også bag:

"Bemærk:Dette lager er i øjeblikket en smule bagud, da jeg kæmper for at finde tid til at opdatere det til 4.7-serien."

Heldigvis kan vi manuelt opgradere fra den ældre version.

De grundlæggende trin er:

  1. Lav en sikkerhedskopi af den aktuelle installation
  2. Download og udpak den seneste version af phpMyAdmin
  3. Rediger vendor_config.php-filen til den relevante mappe for Ubuntu
  4. Tilføj en længere tilfældig streng for at løse blowfish-fejlmeddelelser og tillade korrekt cookie-godkendelse

Disse terminalkommandoer skal få arbejdet gjort (brug sudo, hvis det er relevant):

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
 

(Valgfrit ) Erstat wget-linjen med den seneste version eller foretrukne format efter eget valg. Besøg https://www.phpmyadmin.net/downloads/ .

Løs blowfish-fejlmeddelelsen

På dette tidspunkt vil du sandsynligvis få en blowfish-fejl, når du bruger phpMyAdmin . For at løse dette skal du opdatere en specifik konfigurationsfil:

  1. Åbn vendor_config.php i /usr/share/phpmyadmin/libraries/vendor_config.php
  2. På eller omkring linje 38 skal du erstatte define('CONFIG_DIR', ''); med define('CONFIG_DIR', '/etc/phpmyadmin/'); og gem filen.

Når du er færdig, linje 33-38 i vendor_config.php skal ligne:

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

På dette tidspunkt fungerer phpMyAdmin muligvis uden fejl, men du skal muligvis tilføje yderligere længde til blowfish_secret-konfigurationsstrengen .

  1. Åbn filen /var/lib/phpmyadmin/blowfish_secret.inc.php .

Du skal se:

<?php
$cfg['blowfish_secret'] = 'Something Short';
 
  1. Tilføj yderligere tilfældighed til $cfg['blowfish_secret'] streng, mindst 40 tegn og endnu længere kan være bedre (jeg bruger en streng på op til 100 tegn).

For eksempel (brug ikke dette, kun et eksempel):

$cfg['blowfish_secret'] = 'A much longer random string 7NfSjYezwmwGCfGDuDO7uWn4ESw2sCFCym1RatPjGCfGCym1RatPjGCfG';
 
  1. Gem filen.

På dette tidspunkt skal du opdatere phpMyAdmin (i din browser) og logge på igen . Alt burde fungere korrekt nu.

Hvis det ønskes, kan du fjerne sikkerhedskopien af ​​den gamle phpMyAdmin-version med:

rm -rfv /usr/share/phpmyadmin_old
 

Yderligere dokumentation

Til reference er følgende uddrag fra officiel phpMyAdmin-dokumentation om manuel opdatering til den seneste version (dette er ikke). Ubuntu specifik):

Advarsel

Udpak aldrig den nye version over en eksisterende installation af phpMyAdmin, fjern altid først de gamle filer, mens du kun beholder konfigurationen.

På denne måde vil du ikke efterlade gammel kode, der ikke længere fungerer, i biblioteket, hvilket kan have alvorlige sikkerhedsmæssige konsekvenser eller kan forårsage forskellige brud.

Og:

Den komplette opgradering kan udføres i få enkle trin:

  1. Download den seneste version af phpMyAdmin frahttps://www.phpmyadmin.net/downloads/ .

  2. Omdøb eksisterende phpMyAdmin-mappe (for eksempel til phpmyadmin-old).

  3. Pak nyoverførte phpMyAdmin ud til den ønskede placering (for eksempel phpmyadmin).

  4. Kopier config.inc.php` fra den gamle placering (phpmyadmin-gamle) til den nye (phpmyadmin).

  5. Test, at alt fungerer korrekt.

  6. Fjern backup af tidligere version (phpmyadmin-old).



  1. Kan ikke oprette forbindelse til Plesk v12 SQL Server eksternt fra SQL Server Management Studio

  2. Hvordan kan jeg indstille en standardsortering for tabeller i PHPMyAdmin (dvs. altid primær nøgle - faldende)

  3. Bekræft inden sletning/opdatering i SQL Management Studio?

  4. Konverter kolonne fra dato til datotid