2016-09-23 3 views
1

Ich habe eine Wordpress-Website auf Windows-Server. Ich habe es auf den Ubuntu-Server verschoben, erhalte aber einen Fehler "Ihre PHP-Installation scheint die MySQL-Erweiterung zu verpassen, die von WordPress benötigt wird."brauche ich installieren php5-mysql

Ich habe einige Nachforschungen für die Reparatur und gründete "Sie müssen PHP5-Mysql Pacakage installieren". Warum? Ich habe bereits PHP-MySQL-Paket installiert.

Wichtiger Hinweis: Es funktioniert gut eine andere Wordpress-Site auf dem gleichen Server.

Wichtiger Hinweis: Nginx - MySql - Php7.0 auf Ubuntu Server mir

bitte helfen installiert ist?

+0

Wenn Sie PHP5 verwenden, sollten Sie php5-mysql installieren. – Evgeniy

+0

nein ich habe php7 benutzt. –

+0

@Evgeniy Nur als ein FYI, es ist besser zu verwenden mysqlnd – Machavity

Antwort

0

Sie müssen eine Möglichkeit haben, mit MySQL zu sprechen. Es gibt nur zwei Möglichkeiten, das zu tun

  1. Durch den MySQL-Client (d. H. php5-mysql). Dies ist der ältere Weg, es zu tun. PHP entbündelte MySQL, so dass diese Route auch erfordert, dass Sie (oder was auch immer Ihre Entsprechung verwendet) installieren, da es mit MySQL über den Client spricht.
  2. Durch die MySQL Native Driver (d.h. php5-mysqlnd). Dieser Weg wird bevorzugt, da es jetzt ein zentraler Teil von PHP ist. Auf diese Weise kommuniziert PHP direkt und ohne Zwischenhändler mit MySQL. Auch einige Teile von mysqli funktionieren besser mit dieser installierten

Es klingt wie dies Ubuntu und PHP7 ist. So benötigen Sie möglicherweise etwas wie php7-mysqlnd

+0

Hallo, wie kann ich es installieren? –

+0

Ich denke: sudo apt-get installieren php7-mysqlnd – Evgeniy

+0

ich erhielt "Kann nicht finden, Paket php7-mysqlnd" –

0

Wordpress überprüft nur die Verfügbarkeit von mysql_* Funktionen. Wenn Sie diesen Fehler erhalten, sind sie nicht verfügbar.

Wenn Sie wirklich php-mysql metapackage installiert (was ich eigentlich hoffen installiert php7.0-mysql) und Sie haben mysql mod in Apache mods_available Ordner, es ist nicht einfach nicht aktiviert. Sie müssen einen Link zu mods_enabled hinzufügen und den Server neu starten.

BTW, können Sie aktiviert Mods mit php_info() überprüfen.

Hoffe, das hilft.

+0

Ich benutze keinen Apache-Server, ich benutze nginx –

+0

Dann sollte der MySQL-Mod in NGINX aktiviert werden. –

+0

wie kann ich es tun? @ Boris ich habe eine wichtige Anmerkung "Es ist gut, eine andere Wordpress-Website auf dem gleichen Server zu arbeiten." –

0

Ich habe das Gefühl, dass Sie 2 PHP-Installationen auf Ihrem Server haben, nämlich php5.6 und php7.0. Da php7.0 vorhanden ist und Sie (basierend auf der Art und Weise, wie Sie das Problem beschrieben haben) keine benutzerdefinierte source.list verwendet haben, nehme ich an, dass Sie Ubuntu 16.04 installiert haben.

Die folgenden Befehle auf Ihrem Ubuntu 16.04 Server sollte dieses Problem für Sie lösen:

apt install php7.0-mysql 
service php7.0-fpm restart 
service nginx restart 

Wenn Sie jedoch in der Tat aktiv php5 installiert und aktiviert ist, sollten Sie überprüfen, ob Ihr php-fpm Pool ist ein mit andere Version.Sie können dies überprüfen, indem Sie in der Datei:

/etc/php/7.0/fpm/pool.d/www.conf 

Zusätzlich können Sie Ihre Frage mit zusätzlichen Details aktualisieren, indem Sie die folgenden Befehle auf dem Server ausgeführt wird und der Austausch mit uns ihren Ausgang:

lsb_release -a (determines Ubuntu version) 
which php (determines which php is loaded in the command line) 
service --status-all (shows installed services and their status) 

Based Bei den Angaben, die Sie zur Verfügung gestellt haben, gehe ich davon aus, dass es zu Verwechslungen mit den PHP-Paketen kommt, was Ihnen helfen sollte, das Problem loszuwerden. Bitte beachten Sie, dass der folgende Befehl höchstwahrscheinlich andere Webseiten auf dem gleichen Server beeinflussen wird, und Sie sollten wissen, was dieser Befehl tut, bevor Sie ihn ausführen. Im Wesentlichen wird es alle php-Pakete, die Sie gerade haben, entfernen und dann nur php7.0-Pakete installieren.

apt update 

apt purge --auto-remove php-common php-fpm php-mysql php7.0-cli php7.0-common php7.0-fpm php7.0-json php7.0-mysql php7.0-opcache php7.0-readline 

apt autoremove -y 
apt autoclean -y 

apt install php7.0-fpm php7.0-mbstring php7.0-xml php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl 
+0

Hallo, installierte Pakete; php-common installieren php-fpm php-mysql installieren php7.0-cli installieren installieren php7.0-common php7.0-fpm install Installieren php7.0-json php7.0-mysql Installation installieren php7.0-opcache installieren php7.0-readline installieren –

+0

Ich aktualisierte Antwort basierend auf Ihrer Eingabe, aber ich muss immer noch wissen, welche Ubuntu-Version Sie ausführen .. und welche Dienste Sie installiert haben/run .. – Cninroh

+0

danke euch allen , mein Problem wurde gelöst. Ich habe die letzte Version meiner Wordpress-Site aktualisiert, bevor ich die Site wechselte. :) –