2012-05-26 63 views
44

Ho un problema con phpmyadmin su ubuntu 12.04. Ho già installato apache2, php5, mysql e phpmyadmin.L'estensione mysqli è mancante, phpmyadmin non funziona

Lo script phpinfo();, non mostra nulla sull'estensione mysqli o mysql.

Quando provo phpMyAdmin inizio questo errore visualizzato:

 
---- 
**phpMyAdmin - Error** 
------- 
**The mysqli extension is missing. Please check your PHP configuration.** 
---- 

Nel file php.ini, ho commentata extension=mysql.so linea, ma non funziona ...

Qualcuno ha un'altra soluzione posible?

+4

Hai riavviato apache dopo aver decommentato la linea? –

+1

Mi sento un po 'stupido dopo questo ..: P Grazie Henry, ho acceso il mio computer oggi e tutto il lavoro, grazie! – Jeremas

+1

Riavvia apache 'sudo /etc/init.d/apache2 restart' – vamsikrishnamannem

risposta

92

Le ultime versioni di phpMyAdmin richiedono l'estensione mysqli e non funzioneranno più con mysql (notare l'extra "i" alla fine del suo nome).

sudo apt-get install php5-mysql 

installerà il pacchetto contenente sia vecchio e quello nuovo, così dopo tutto quello che dovete fare è aggiungere

extension=mysqli.so 

nel tuo php.ini, riavviare apache e dovrebbe funzionare.

+1

Questo ha funzionato per me su Ubuntu 12.04. Grazie :) –

+2

Se il problema si ripresenta dopo questo, svuota la cache del tuo browser –

22

Se si esegue PHPMyAdmin su localhost rimuovere il commento nel file di /etc/php5/apache2/php.ini questa linea:

mysqli.allow_local_infile = On 

Riavviare Apache:

sudo /etc/init.d/apache2 restart 
+0

Grazie per questo. Questa soluzione viene utilizzata quando l'estensione MySQLi è installata correttamente, ma phpMyAdmin è in esecuzione su localhost. – PolishHurricane

0

Questo ha funzionato per me, fare un database con uno script PHP e MySQL e aperto su la console mysql e digita in user 'yourName'@'127.0.0.1' e poi inserisci tutti i privilegi su . a 'yourName'@'127.0.0.1', quindi apri un browser vai su localhost e dovrebbe essere creato un database e poi vai alla tua pagina phpmyadmin e lo vedrai apparire lì.

2

Ho risolto questo problema modificando /usr/local/zend/etc/php.ini.

(trovato eseguendo netstat -nlp | grep apache, quindi strace -p somepid | grep php.ini).

Alla fine del file, ho aggiunto:

extension=/usr/lib/php5/20090626+lfs/mysql.so 
extension=/usr/lib/php5/20090626+lfs/mysqli.so 
extension=/usr/lib/php5/20090626+lfs/mcrypt.so 

Aggiungendo senza il percorso non ha funzionato.

Quindi dopo un riavvio ha funzionato.

0

Il controllo di extension_dir è una delle cose che si desidera controllare da phpinfo(). Nel mio caso era extension_dir = "./" per impostazione predefinita che era sbagliato. Passalo a extension_dir = './ext/' o dove risiedono attualmente tutte le tue DLL di estensione.

5

Basta riavviare l'apache2 e MySQL:

  • apache2:sudo /etc/init.d/apache2 restart

  • mysql:sudo /etc/init.d/mysql restart

quindi aggiornare il browser, godono di phpMyAdmin :)

+1

È davvero così semplice. L'estensione viene installata con phpmyadmin e ha bisogno di un riavvio (apache, php5-fpm qualunque). Molte "soluzioni" qui hanno il ricarico del web server come passo finale e infatti - a mio parere questa è l'unica cosa necessaria. – DanielKhan

-3

questo funzionerà al 100%

file di configurazione aperto php con il notepad, trovare la linea: -

;extension=mysqli.dll 

cambiamento a

extension=mysqli.dll 

rimuovendo il ';'

salvarlo

quindi riavviare server Apache, ha funzionato per me su xp di vittoria

29
sudo apt-get install php5-mysql 
sudo apt-get install php5-mysqlnd 

provare entrambi alternativamente funziona per me

+0

Il secondo comando ha funzionato per me, felice di trovarlo. Cheers – ManBearPixel

+0

Il primo comando funziona per me ... Grazie –

+0

Il mio apt-get non riesce a trovare questi pacchetti. Qualcuno sa in che repository si trovano? – Peter

0

a Ubuntu 12.04 ho dovuto cambiare mssql.compatability_mode = On. messo su e funziona

1

Ho provato un sacco di risposte e nessuno di loro sembrava funzionare perché php7.0 non è l'impostazione predefinita.

sudo apt-get upgrade 

sembrava di fare il lavoro per me, ma ho dovuto reinstallare php7.0 e phpmyadmin dopo che:

sudo apt-get install php7.0 php7.0-mysql 
sudo apt-get install apache2 apache2-mod-php7.0 
sudo apt-get install phpmyadmin 

Speranza che aiuta!