it-swarm.com.de

Php - Dein PHP Bei der Installation fehlt anscheinend die MySQL-Erweiterung, die für WordPress erforderlich ist

Ich habe einige Probleme mit dem folgenden Fehler:

"In Ihrer PHP -Installation fehlt anscheinend die für WordPress erforderliche MySQL-Erweiterung."

Ich habe jetzt ungefähr eine Woche lang gesucht, aber ich kann es nicht herausfinden.

Ich verwende mein NAS mit einer Telnet-Verbindung. Ich habe FFP 0.7 installiert

Meine php.ini befindet sich in: ffp/etc/php.ini und ich habe alles, was ich für nützlich gehalten habe, auskommentiert.

;If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
extension=msql.dll
;
; ... or under UNIX:
;
extension=msql.so
;
; ... or with a path:
;
extension=/ffp/lib/extensions/no-debug-non-zts-20100525/mysql.so
;


extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so

Das, was jedoch auffällt, ist, dass ich in php info das Modul MYSQLI aktiviert sehe, aber nicht MYSQL.

MySQL funktioniert, PHP funktioniert, LightTPD funktioniert. (Ich habe Phpmyadmin arbeiten).

Es ist auf einem Zyxel NSA310.

Kennt ihr eine Lösung?

Und ich könnte mich in eine andere Frage schleichen:

Wenn Mysqld gestartet wird, erstellt es eine Verknüpfung von meinem Stammverzeichnis zu: ffp/opt/mysql. Jedes Mal, wenn ich mein NAS neu starte, wird die Verknüpfung gelöscht. Kennt jemand vielleicht einen Trick dafür?

Vielen Dank

Es ist am: http://www.volunteeringnews.com/

25

Die PHP-Mysql-API ist veraltet. Es ist kaput - weggehen - nicht benutzt werden, finito.

Wenn Sie eine moderne Version von PHP (> 5.6) haben, sollte Wordpress automatisch zur Verwendung von mysqli wechseln. Das sollte dein erster Versuch sein.

Wenn Sie Ihr PHP nicht aktualisieren können, anstatt zu versuchen, etwas wiederzubeleben, das von PHP nicht mehr unterstützt wird, patchen Sie einfach Ihre WordPress-Datei: http://wordpress.org/plugins/mysqli/

22
gview

am ende fand ich eine lösung Stellen Sie zunächst sicher, dass der MySQL-Server läuft. Geben Sie an einer Shell-Eingabeaufforderung den folgenden Befehl ein: # /etc/init.d/mysql status

Wenn MySQL nicht ausgeführt wird, geben Sie Folgendes ein: # /etc/init.d/mysql start

Wenn MySQL nicht installiert ist, geben Sie den folgenden Befehl ein, um den MySQL-Server zu installieren: # apt-get install mysql-server

Stellen Sie sicher, dass das MySQL-Modul für PHP5 installiert ist: # dpkg - list | grep php5-mysql

Um das php5-mysql-Modul zu installieren, geben Sie Folgendes ein: # apt-get install php5-mysql

Starten Sie anschließend den Apache2-Webserver neu: # /etc/init.d/Apache2 Neustart

35
marcboffin

Diese MySQL-Bibliothek hat für mich funktioniert:

Sudo apt-get install php5-mysqlnd-ms
9

Überprüf den

extension_dir =

entferne es, wenn es da ist. das sollte das Problem beheben.

7
pravchuk

Wenn Sie gemeinsam genutztes Linux-Hosting mit cPanel (Godaddy, Reseller Club, Hostgator oder einem anderen gemeinsam genutzten Hosting) verwenden, versuchen Sie Folgendes:

Auf der Registerkarte Software und Dienste -> Wählen Sie PHP Version -> PHP Selektoren | Erweiterungen  

Kreuzen Sie alle MySQL-relevanten Erweiterungen an, speichern Sie sie und Sie sind fertig. Bitte überprüfen Sie das angehängte Bild.

Image showing the extensions in cPanel

4
subhash Porje

Dieser Fehler wird von der WP -Kerndatei /wp-includes/load.php erstellt und der Funktionsname ist wp_check_php_mysql_versions().

Die älteren Versionen von WP unterstützen MySqli nicht. Die neuesten Versionen von WP unterstützen jedoch sowohl die MySql- als auch die MySqli-Erweiterung , ohne die installierten Versionen von PHP zu stören.

Mein Problem zu 100% gelöst

In meinem Fall habe ich einfach die Wordpress-Kerndateien manuell aktualisiert und das Problem gelöst :)

4
Reza Mamun

Wenn Sie das Wordfence-Plugin installiert haben, habe ich festgestellt, dass das Auskommentieren der suPHP_ConfigPath-Zeilen in der .htaccess-Datei die Website wieder zum Leben erweckt:

# Wordfence WAF
#<IfModule mod_suphp.c>
#   suPHP_ConfigPath '/home/a1614947/public_html'
#</IfModule>

Ich habe das auch Wordfence gemeldet.

4
Dan Snik

Ich benutze Fedora 25

Sudo dnf search php | grep mysql

php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
php-pear-MDB2-Driver-mysqli.noarch : MySQL Improved MDB2 driver mysqli

Sudo dnf install php-mysqlnd.x86_64
3
Ng Zhong Qin

Wenn Sie Ihre PHP-Version verbessern, stellen Sie sicher, dass Apache2 folgt . Sie können eine phpinfo () -Datei erstellen, die zeigen könnte, dass Apache noch die alte PHP-Version verwendet.

In diesem Fall sollten Sie die Befehle a2dismod php-old-version und a2enmon php-mod-version verwenden

Beispiel:

in Ubuntu greifen Sie auf die alte Version von/etc/Apache2/mods-enabled oder auf die Version zurück, die in der phpinfo-Datei angezeigt wird, und die neue Version von/etc/Apache2/mods-available

> Sudo a2dismod php5.6
> Sudo a2enmod php7.1
> Sudo service Apache2 restart
3
amine

Vielleicht ist es der Grund. Die PHP-MySQL-API ist veraltet. Wenn Sie <PHP5.5 verwenden, aktualisieren Sie einfach in Ihrem Server auf 5.6 und höher. 

3
Raj008

In meinem Fall hat die Verwendung von CPanel PHP Selector und die Auswahl von mysqli und mysqlnd funktioniert. Stellen Sie sicher, dass Sie einmal speichern und erneut prüfen

2
Francis DSouza

Ich hatte das gleiche Problem wie bei "Ihre PHP -Installation scheint die MySQL-Erweiterung zu fehlen, die für WordPress erforderlich ist" im Resellerclub-Hosting. 

Ich ging diesen Thread durch und erfuhr, dass die PHP-Version größer als> 5.6 sein sollte, sodass WordPress automatisch in Mysqli konvertiert wird

Dann loggte sich mein cpanel in phpan in cpanel ein, um nach der Version zu suchen. Glücklicherweise konnte ich feststellen, dass meine Version von php 5.2 war, und diese auf 5.6 geändert, indem sichergestellt wurde, dass mysqli im Optionsfenster markiert ist jetzt.

1
Mallesh.N

Einfach install apt-get installieren php5-mysqlnd ApacheDienst neu starten Apache2 restart

1
user145132

Als ich meine Website PHP von Version 5.6 auf 7.2 aktualisiert habe, ist das Problem aufgetreten, dass bei der Installation von PHP anscheinend die für WordPress erforderliche MySQL-Erweiterung fehlt. Es stellt sich heraus, dass die mysql-Erweiterung in PHP Version 7.2 nicht mehr unterstützt wird. Es verwendet jetzt die mysqli-Erweiterung. Ich verwende eine alte Version von WordPress, die immer noch die Erweiterung mysql verwendet, weshalb das Problem bestand. Also, was ich getan habe, ist das WordPress auf den Kern aktualisiert. Dies löst das Problem.

Hier sind die Schritte, die ich beim manuellen Aktualisieren von WordPress ausgeführt habe.

  1. Zuerst habe ich eine vollständige Sicherung meiner Website erstellt. Dies ist im Fehlerfall sehr wichtig.
  2. Ich lade die neueste WordPress Zip-Datei von wordpress.org herunter.
  3. Ich habe die Datei in ein lokales Verzeichnis meines Computers entpackt.
  4. Ich habe das Stammverzeichnis meiner Website aufgerufen und die Verzeichnisse "wp-includes" und "wp-admin" gelöscht. Ich habe eine sFTP-Verbindung mit der Filezilla-Software verwendet.
  5. Ich habe die neuen Verzeichnisse wp-includes und wp-admin aus der neuen Version von WordPress hochgeladen. Ich habe sie in das Stammverzeichnis meiner Website entpackt und die soeben gelöschten Verzeichnisse ersetzt.
  6. Ich habe weder das Verzeichnis wp-content noch eine der Dateien in diesem Verzeichnis gelöscht. Ich habe gerade die Dateien aus dem Verzeichnis wp-content in der neuen Version von WordPress in mein vorhandenes Verzeichnis wp-content kopiert. Alle vorhandenen Dateien mit demselben Namen wurden überschrieben.
  7. Ich habe alle Dateien aus dem Stammverzeichnis (‘/’) der neuen Version von WordPress kopiert, die ich in das Stammverzeichnis meiner Website (oder in das Stammverzeichnis Ihrer WordPress -Installation) entpackt habe. Bestehende Dateien wurden überschrieben und neue Dateien wurden kopiert. Die wp-config.php-Datei war nicht betroffen, da WordPress nie mit einer wp-config.php-Datei verteilt wurde.
  8. Ich vergleiche die Datei wp-config-sample.php, die mit WordPress ausgeliefert wurde, fand aber keine Änderungen, also habe ich nur die alte verwendet.
  9. Ich habe meinen Browser-Cache geleert, um sicherzustellen, dass alle Änderungen sichtbar sind.
  10. Ich habe die Website überprüft und es liegt kein Fehler vor. Das Upgrade wurde abgeschlossen.
1

Vergewissern Sie sich, dass Sie Mysqli und mysqlnd ankreuzen, wie im Screenshot gezeigt  enter image description here

1
csandreas1

Dieses Problem war auf fehlende Datenbank zurückzuführen. Wenn es sich um eine Neuinstallation handelt, müssen Sie manuell eine erstellen und dem Benutzer Berechtigungen zuweisen. 

Überprüfen Sie in der wp-config.php nach fehlerhaften Konfigurationen und stellen Sie sicher, dass Datenbank und Tabellen nicht fehlen oder beschädigt sind.

1

2019-08-28

Nach fast sieben Jahren gibt es immer wieder andere Antworten. † Viele sind ähnlich - aber keine identisch - mit dem, was bei mir funktioniert hat. Folgendes hat bei mir funktioniert (Ubuntu-Server).

Verschieben einer Site auf einen neuen Server, vergessen, das PHP MySQL-Modul/Erweiterung. Ich habe eine kurze

apt-get install php-mysql

und dann

apachectl restart

Bada Bing. Kein php5, php7; ohne alles php-mysql.


† Aufdecken eines der wenigen Nachteile von StackExchange: Eine Antwort ist momentan möglicherweise exquisit und erhält eine Million positive Stimmen. Leider funktioniert diese perfekte Antwort manchmal einfach nicht mehr, wenn die Technologie, die hinter der Antwort steckt (Projekte setzen sich ab und ändern den Fokus, Plugins verkümmern, Ziele verschieben sich). Aber es hat alle positiven Stimmen, also ist es das, was wir zuerst sehen. Ich bin mir nicht sicher, was die Lösung ist - wenn wir überhaupt eine brauchen; Es ist nicht unglaublich häufig ein Problem.

0
zedmelon

Ich habe gerade benutzerdefinierte PHP-Ini entfernt, die ich überhaupt nicht benutze. Das Problem ist behoben, die Website funktioniert einwandfrei.

0
Imran Hossain

Ich habe das Problem durch Hinzufügen des folgenden Codes in der .htaccess-Datei behoben. Ich hoffe, dass das auch für euch funktioniert.

Schritt 1: Ändern Sie die PHP Version vom Server.

Schritt 2: Fügen Sie den folgenden Code entsprechend Ihrer PHP Version (vom Server ausgewählt)) in Ihre .htaccess-Datei ein.

m zu PHP 4.4: zu wechseln

AddHandler application/x-httpd-php4 .php

m zu PHP 5.0: zu wechseln

AddHandler application/x-httpd-php5 .php

m zu PHP 5.1: zu wechseln

AddHandler application/x-httpd-php51 .php

m zu PHP 5.2: zu wechseln

AddHandler application/x-httpd-php52 .php

m zu PHP 5.3: zu wechseln

AddHandler application/x-httpd-php53 .php

m zu PHP 5.4: zu wechseln

AddHandler application/x-httpd-php54 .php

m zu PHP 5.5: zu wechseln

AddHandler application/x-httpd-php55 .php

m zu PHP 5.6: zu wechseln

AddHandler application/x-httpd-php56 .php

m zu PHP 7: zu wechseln

AddHandler application/x-httpd-php7 .php

m zu PHP 7.1: zu wechseln

AddHandler application/x-httpd-php71 .php 
0
Mr. HK

Für mich (Ubuntu 16.04) war der Gewinner:

Sudo apt install php7.0-mysql
0
veggiebenz

Auf Oracle Linux 7.x mit PHP Version 7.3.x) müssen Sie Sudo yum install php-mysqlnd Ausführen, um die fehlende MySQL-Erweiterung für PHP zu installieren.

Denken Sie daran, PHP und/oder Ihren Server neu zu starten, damit die Änderungen wirksam werden.

0
nyedidikeke

Für php 5.6 Sudo apt-get install php5.6-mysqlnd-ms und starten Sie Ihren Apache neu

/etc/init.d/Apache2 restart
0
Pranoy Sarkar

Die Quelle dieser Nachricht hatte in meinem Fall nichts mit der Lösung zu tun.

Meine IP-Adresse meines Servers hat sich geändert und ich änderte die <VirtualHost>-Direktive in meiner httpd.conf des Apache-Servers nicht.

Nachdem ich sie auf die richtige IP-Adresse geändert hatte, verschwand die Nachricht und Wordpress funktioniert wieder.

0
Tinus Tate