Cara Memperbaiki Kesalahan: “Instalasi PHP Anda Tampaknya Kehilangan Ekstensi MySQL yang Diperlukan oleh WordPress”

Diterbitkan: 2022-11-01

Pesan kesalahan “Instalasi PHP Anda tampaknya tidak memiliki ekstensi MySQL yang diperlukan oleh WordPress” dapat membingungkan baik bagi pemula maupun pengguna berpengalaman. Meskipun sepertinya yang harus Anda lakukan hanyalah menginstal ekstensi WordPress MySQL yang hilang, instalasi dan konfigurasi PHP di sisi server jauh lebih rumit. Selain itu, ada beberapa driver database yang berbeda tersedia untuk PHP, masing-masing melayani tujuan yang sama.

Dalam panduan komprehensif untuk memperbaiki kesalahan "Instalasi PHP Anda Tampaknya Hilang Ekstensi MySQL yang Diperlukan oleh WordPress", Anda akan belajar bagaimana WordPress berkomunikasi dengan database-nya dan bagaimana memastikan instalasi PHP Anda memiliki ekstensi MySQL yang benar diinstal untuk itu .


Bagaimana WordPress Berkomunikasi Dengan Basis Datanya?

Situs web WordPress Anda adalah aplikasi web dinamis yang digerakkan oleh basis data. Ini pada dasarnya berarti dua hal: sebagian besar dari semua konten situs web disimpan dalam database WordPress, dan WordPress benar-benar bergantung pada kemampuan untuk berkomunikasi dengan databasenya agar berfungsi dengan benar. Setiap kali Anda memuat halaman apa pun di situs web Anda, WordPress melakukan serangkaian manipulasi di balik layar.

Karena semua posting, halaman, dan informasi penting lainnya disimpan dalam database sebagai lawan dari file di server, yang akan kita lihat di situs web statis. WordPress PHP perlu mengambil konten yang diminta dengan mengirimkan kueri SQL, dan menggabungkannya dengan file template untuk membuat halaman HTML yang akan dikirim ke pengunjung situs web. Dengan kata lain, WordPress mem-parsing alamat yang Anda buka di browser untuk membentuk satu set parameter kueri, yang kemudian akan digunakan untuk kueri database.

Jadi apa peran PHP dalam proses ini? Instalasi WordPress, atau inti WordPress, adalah seperangkat skrip PHP yang, disatukan, membangun situs web dinamis. PHP sebagai bahasa pemrograman menjadi inti dari arsitektur WordPress, yang berarti instalasi PHP Anda harus dikonfigurasi dengan benar untuk berkomunikasi dengan database WordPress. Salah satu aspek kuncinya adalah menginstal dan mengaktifkan ekstensi PHP yang diperlukan.

Ekstensi PHP MySQL untuk WordPress

PHP menggunakan ekstensi khusus, atau driver database, untuk memastikan bahwa WordPress dapat membuat koneksi ke databasenya menggunakan kredensial yang disediakan dalam file wp-config.php. Tapi apa sebenarnya ekstensi ini? Anda mungkin pernah melihat versi yang berbeda: mysql, mysqli, mysqlnd, pdo_mysql, libmysql, dan bahkan lebih. Sangat mudah untuk menjadi bingung, jadi mari kita bahas sekali dan untuk semua.

Dari versi 5.3, PHP menggunakan MySQL Native Driver untuk berkomunikasi dengan server database. MySQL Native Driver dapat juga disebut sebagai mysqlnd, dan merupakan pengganti MySQL Client Library (libmysql) yang didistribusikan oleh MySQL. Tiga ekstensi MySQL – mysql, mysqli, dan pdo_mysql – dikompilasi untuk menggunakan MySQL Native Driver, dan banyak digunakan dengan situs web yang dibangun di atas PHP.

PHP tidak lagi menggunakan ekstensi mysql dalam versi 5.5 dan menghapus dukungan untuknya di PHP 7+ demi mysqli. Menyelaraskan jalannya dengan keputusan ini, WordPress menggunakan ekstensi mysqli dari versi 3.9. Karena pdo_mysql tidak didukung oleh WordPress, driver database yang dirujuk dalam pesan kesalahan "Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress" adalah ekstensi mysqli PHP.

Instalasi PHP Anda Tampaknya Kehilangan Ekstensi MySQL

Apa Arti Kesalahan "Instalasi PHP Anda Tampaknya Tidak Ada Ekstensi MySQL yang Diperlukan oleh WordPress"?

Kesalahan “Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress” berarti bahwa versi PHP yang digunakan oleh situs WordPress Anda tidak memiliki ekstensi mysqli yang diinstal atau dikonfigurasi dengan benar. Hal ini menyebabkan WordPress tidak dapat berkomunikasi dengan basis datanya, yang pada gilirannya menyebabkan variasi pesan kesalahan koneksi basis data WordPress ini terlihat di situs web Anda.

Kesalahan Koneksi Basis Data WordPress

WordPress dapat menampilkan kesalahan koneksi database karena berbagai alasan. Pesan kesalahan yang dipilih WordPress untuk ditampilkan tergantung pada tahap apa yang mengalami masalah selama upaya koneksi. Penting untuk memahami perbedaan antara dua kesalahan utama yang terkait dengan ketidakmampuannya untuk berkomunikasi dengan database WordPress.

Pesan “Kesalahan membuat koneksi database” akan muncul di situs web Anda jika informasi database di file wp-config.php salah, pengguna database Anda tidak memiliki hak yang memadai, database Anda rusak, atau server MySQL/MariaDB Anda ditolak koneksi. Dalam hal ini, WordPress dapat menggunakan ekstensi mysqli, tetapi mengalami masalah tertentu pada tahap selanjutnya.

Jika Anda melihat pesan kesalahan "Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress" di situs web Anda, ekstensi PHP mysqli tidak diinstal atau tidak dimuat oleh instalasi PHP Anda. Driver database memastikan bahwa WordPress dapat menggunakan kelas global wpdb(), yang merupakan langkah pertama dalam membuat koneksi database.

3 Alasan Utama Dibalik Kesalahan Hilangnya Ekstensi WordPress MySQL

Saat Anda menginstal WordPress untuk pertama kalinya atau memindahkan situs WordPress Anda ke infrastruktur hosting baru, Anda perlu memastikan bahwa semua layanan dikonfigurasi dengan benar. Ini termasuk server web Anda yang akan menerima permintaan HTTP, penangan PHP Anda yang akan mengontrol eksekusi kode PHP, dan MySQL/MariaDB Anda yang akan menerima dan memproses permintaan basis data.

Panel kontrol hosting web modern memungkinkan Anda menginstal beberapa versi PHP di server secara bersamaan. Tidak demikian halnya dengan pendekatan tradisional untuk instalasi PHP, ketika untuk menggunakan versi baru PHP, Anda harus menghapus yang sebelumnya sepenuhnya. Anda juga dapat menginstal semua ekstensi PHP yang diperlukan dari antarmuka pengguna grafis tanpa harus melakukannya dari baris perintah.

Anda dapat memilih versi PHP yang ingin Anda gunakan untuk situs WordPress Anda, dan bahkan penangan PHP, jika Anda telah mendaftar ke VPS atau hosting khusus. Kebebasan ini menyederhanakan proses menjalankan situs web dan membuatnya jauh lebih rumit bagi seseorang yang tidak terbiasa dengan cara kerja PHP di sisi server.

Di bawah ini, kami akan meninjau situasi umum yang menyebabkan PHP tidak dapat berkomunikasi dengan server MySQL/MariaDB Anda. Berikut adalah tiga alasan utama di balik pesan kesalahan "Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress" di situs web Anda:

  • Ekstensi PHP mysqli hilang dari versi PHP yang digunakan oleh situs web Anda.
  • Ekstensi PHP mysqli tidak dikonfigurasi dengan benar.
  • Anda menggunakan WordPress versi lama dengan PHP 7+.

Alasan 1: Ekstensi PHP mysqli hilang dari versi PHP yang digunakan oleh situs web Anda

Ada kemungkinan bahwa ekstensi mysqli tidak diinstal sama sekali, terutama jika Anda baru saja membuat versi PHP baru tersedia. Jika WordPress tidak dapat menggunakan ekstensi mysqli, ia akan mencoba menggunakan ekstensi mysql lama pada versi PHP yang lebih rendah dari 7.0. Kuncinya adalah menginstal dan mengonfigurasi Driver Asli MySQL untuk versi PHP yang dipilih.

Cara Mengatasi

Instal Driver Asli MySQL dari panel kontrol hosting web Anda atau menggunakan antarmuka baris perintah untuk mengaktifkan ekstensi mysqli WordPress. Untuk PHP 8.1, paket tersebut akan disebut php81-php-mysqlnd atau ea-php81-php-mysqlnd.x86_64 jika Anda menggunakan cPanel.

Pada server CentOS tanpa panel kontrol, jalankan yum install php81-php-mysqlnd dari antarmuka baris perintah. Untuk server Ubuntu, Anda dapat menginstal mysqlnd. Sistem akan secara otomatis mengaktifkan dukungan untuk mysqli dan pdo_mysql.

Alasan 2: Ekstensi PHP mysqli tidak dikonfigurasi dengan benar

Setelah Driver Asli MySQL PHP yang diperlukan diinstal, mysqli dan pdo_mysql harus diaktifkan dan tersedia untuk digunakan WordPress. Agar ekstensi dimuat dengan versi PHP yang Anda gunakan, file PHP khusus dibuat di direktori konfigurasi global PHP. Jika karena alasan tertentu ekstensi mysqli tidak dapat dimuat untuk versi PHP yang dipilih, WordPress akan menampilkan pesan kesalahan “Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress”.

Cara Mengatasi

Pastikan Driver Asli MySQL, atau mysqlnd, telah diinstal dengan benar, dan PHP telah menambahkan file .ini untuk mysqlnd dan mysqli. Pada server cPanel, Anda dapat menemukan file konfigurasi 30-mysqli.ini dan 20-mysqlnd.ini di direktori /opt/cpanel/ea-php81/root/etc/php.d, di mana PHP 8.1 adalah versi PHP yang digunakan oleh situs WordPress Anda. File harus berisi baris di bawah ini agar ekstensi dimuat dengan benar.

Alasan 3: Anda menggunakan WordPress versi lama dengan PHP 7+

Tidak mungkin, tetapi Anda mungkin masih menggunakan versi WordPress yang sangat ketinggalan zaman dengan versi PHP yang lebih baru. Tidak hanya menggunakan versi perangkat lunak yang ketinggalan zaman membuatnya lebih mungkin untuk menghadapi berbagai masalah WordPress, itu juga membuka kemungkinan yang hampir tak terbatas bagi peretas untuk mendapatkan akses ke situs web Anda dan melakukan tindakan jahat.

Cara Mengatasi

Biasakan untuk selalu memperbarui semua perangkat lunak yang Anda gunakan ke versi terbaru. Perbarui WordPress, tema aktif, dan semua plugin. Selalu gunakan versi PHP terbaru untuk menghindari masalah apa pun yang berasal dari ketidakcocokan kode dan kerentanan keamanan yang belum ditambal.

Karena Anda tidak memiliki akses ke dasbor admin WordPress, gunakan Antarmuka Baris Perintah WordPress untuk melakukan semua pembaruan. Anda dapat menggunakan perintah berikut:

  • pembaruan inti wp. Perbarui inti WordPress.
  • pembaruan plugin wp <nama plugin>. Perbarui plugin tertentu atau gunakan — semua bendera untuk memperbarui semua plugin sekaligus.
  • pembaruan tema wp <nama tema aktif>. Perbarui tema aktif Anda.

Jika WordPress menunjukkan kepada Anda pesan kesalahan ekstensi MySQL yang hilang, itu adalah tanda untuk menganggap situs WordPress Anda lebih serius. Ambil pendekatan proaktif untuk mengelola semua aspeknya, terutama dalam hal keamanan. iThemes Security Pro dan BackupBuddy, solusi industri terkemuka untuk keamanan WordPress dan perlindungan data, dapat membuat prosesnya mudah dan bebas sakit kepala.

Menggunakan iThemes Security Pro seperti memiliki pakar keamanan di tim Anda yang akan memantau situs WordPress Anda 24/7, memungkinkan Anda untuk fokus mengembangkan bisnis Anda. Melindungi lebih dari satu juta situs WordPress di seluruh dunia, BackupBuddy secara otomatis mencadangkan situs web Anda secara berkala untuk menyimpan salinannya di lokasi yang aman untuk pemulihan satu klik kapan pun Anda membutuhkannya. Dengan cara ini, Anda dapat dengan mudah memulihkan dari semua kesalahan WordPress dan infeksi malware, tetapi ingat – pencegahan serangan selalu lebih baik daripada menangani konsekuensinya.

Fitur Pemindaian Situs memeriksa area kritis situs web Anda dan secara otomatis menerapkan perbaikan untuk menjaga situs web Anda bebas dari plugin dan tema usang yang menempatkannya pada risiko besar. Dengan iThemes Security Site Scan, Anda dapat secara signifikan mengurangi permukaan serangan dan menjaga situs web Anda tetap aman dari segala jenis serangan jaringan.

Manajemen Versi Keamanan iThemes memungkinkan Anda untuk mengonfigurasi pembaruan otomatis untuk inti WordPress, plugin, dan tema untuk memanfaatkan fitur baru dan tetap terlindungi dari kerentanan yang diketahui.
Menjaga WordPress tetap up to date sangat penting dan dapat menghemat banyak waktu untuk menangani berbagai masalah WordPress yang disebabkan oleh perangkat lunak yang sudah ketinggalan zaman.

Alasan lain

Sama seperti masalah WordPress lainnya, kesalahan "Instalasi PHP Anda tampaknya tidak memiliki ekstensi MySQL yang diperlukan oleh WordPress" dapat ditampilkan di situs web Anda karena berbagai alasan yang melampaui apa yang kami uraikan di atas. Namun, sebagian besar waktu mereka terkait dengan kesalahan konfigurasi penangan PHP atau menggunakan sistem operasi CloudLinux yang memiliki caranya sendiri dalam mengonfigurasi PHP di sisi server.

Pemilih PHP CloudLinux

Menggunakan Cloudlinux, Anda dapat memanfaatkan CageFS, solusi tangguh untuk isolasi total pengguna, yang mencegah serangan symlink lintas-akun dan mengamankan situs web Anda. Jika Anda menggunakan CageFS, Anda perlu menggunakan CloudLinux PHP Selector, yang sering kali menimbulkan komplikasi tambahan bagi pengguna cPanel yang biasanya mengelola PHP sisi server dari MultiPHP Manager. Lihat panduan CloudLinux untuk menggunakan PHP Selector dengan cPanel atau hubungi penyedia hosting Anda untuk mendapatkan bantuan.

Cara Memperbaiki "Instalasi PHP Anda Tampaknya Hilang Ekstensi MySQL Yang Diperlukan oleh WordPress" Kesalahan

Untuk memperbaiki kesalahan "Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress", Anda harus memastikan bahwa instalasi PHP Anda memiliki Driver Database MySQL (mysqlnd) dan ekstensi mysqli diinstal dan dikonfigurasi dengan benar. Hanya dengan begitu Anda akan dapat memulihkan koneksi normal antara WordPress dan database WordPress dan membuat situs web Anda berfungsi kembali.

Ikuti langkah-langkah di bawah ini untuk memperbaiki kesalahan ekstensi WordPress MySQL yang hilang:

  • Buat halaman informasi PHP untuk meninjau konfigurasi PHP Anda.
  • Verifikasi bahwa ekstensi mysqli diinstal dan dikonfigurasi dengan benar.
  • Pulihkan kemampuan WordPress untuk terhubung ke databasenya dan cegah kesalahan di masa mendatang.

Langkah 1. Buat halaman informasi PHP untuk meninjau konfigurasi PHP Anda

Cara termudah untuk memeriksa konfigurasi instalasi PHP Anda adalah dengan membuat halaman info PHP. Buat file bernama phpinfo.php di direktori root dokumen situs WordPress Anda dan masukkan kode berikut ke dalamnya:

<?php
phpinfo( );
?>

Atau, jalankan yang berikut ini jika Anda masuk ke situs web Anda melalui SSH. Ini akan membuat file phpinfo.php dan menyesuaikan izinnya.

echo "<?php phpinfo(); ?>" > phpinfo.php ; chown $(stat -c %U .). phpinfo.php

Buka halaman phpinfo.php yang baru dibuat di browser dengan mengetik yourwebsite.com/phpinfo.php di address bar. Ganti yourwebsite.com dengan nama domain sebenarnya dari situs WordPress Anda. Bahkan jika tidak ada konten yang dimuat karena kesalahan ekstensi MySQL yang hilang, Anda tidak akan mengalami masalah saat membuka halaman informasi PHP.

Anda akan melihat halaman yang mirip dengan yang di bawah ini, yang akan berisi semua konfigurasi untuk versi PHP yang Anda gunakan untuk situs WordPress Anda. Dalam hal ini, ini adalah PHP 8.1. Memiliki halaman informasi PHP berguna untuk mengatasi berbagai kesalahan WordPress, termasuk pesan “Ada Kesalahan Kritis di Situs Web Anda” di WordPress.

Di bagian atas halaman, Anda akan melihat versi PHP yang digunakan oleh situs WordPress Anda. Berikut adalah beberapa aspek terpenting dari instalasi PHP Anda yang harus Anda periksa terlebih dahulu:

  • pengendali PHP. Handler PHP yang digunakan oleh situs web Anda akan ditampilkan sebagai Server API. Pada tangkapan layar di atas, itu adalah FPM/FastCGI.
  • File konfigurasi yang dimuat. File konfigurasi utama dimuat untuk versi PHP yang digunakan.
  • File .ini tambahan diurai. Daftar ini akan berisi semua file konfigurasi PHP lainnya yang dimuat, termasuk yang memuat Driver Asli MySQL (20-mysqlnd.ini), dan ekstensi mysqli (30-mysqli.ini).

Pastikan daftar file .ini tambahan yang diuraikan berisi file 20-mysqlnd.ini dan 30-mysqli.ini yang diperlukan yang memastikan ekstensi PHP WordPress MySQL mysqli yang diperlukan dimuat dengan benar dan dapat digunakan oleh situs web Anda.

Langkah 2. Verifikasi bahwa ekstensi mysqli diinstal dan dikonfigurasi dengan benar

Gulir ke bawah halaman informasi PHP atau gunakan opsi pencarian di browser untuk meninjau bagian mysqli dan mysqlnd di dalamnya. Mereka harus pergi satu demi satu.

Perhatikan bahwa ekstensi mysqli dikompilasi untuk menggunakan MySQL Native Driver karena versi Library API Klien menunjukkan kepada kita mysqlnd. Informasi ekstensi PHP menunjukkan kepada kita beberapa detail tambahan, termasuk port MySQL/MariaDB.

Periksa Ekstensi API apa bagian mysqlnd dari daftar file informasi PHP. Pada tangkapan layar di atas, kami mengaktifkan mysqli dan pdo_mysql.

Langkah 3. Kembalikan kemampuan WordPress untuk terhubung ke databasenya

Halaman informasi PHP akan menunjukkan kepada Anda apakah versi PHP yang Anda gunakan untuk situs WordPress Anda memiliki ekstensi mysqli yang diinstal dan dikonfigurasi. Jika tidak ada, instal dari antarmuka manajemen PHP yang disediakan oleh panel kontrol hosting web Anda atau menggunakan antarmuka baris perintah.

Periksa referensi 20-mysqlnd.ini dan 30-mysqli.ini untuk melihat apakah mereka memuat ekstensi dengan benar. Jika Anda menggunakan WordPress versi lama, perbarui instalasi dan semua plugin dan tema.

Langkah-langkah yang kami uraikan dalam panduan ini akan membantu Anda memulihkan fungsionalitas situs web WordPress Anda di sebagian besar kasus. Namun, seperti yang kami sebutkan, mungkin ada masalah lain, termasuk kesalahan konfigurasi handler PHP, yang dapat menyebabkan melihat pesan kesalahan "Instalasi PHP Anda tampaknya kehilangan ekstensi MySQL yang diperlukan oleh WordPress" di situs web Anda. Sebaiknya hubungi tim dukungan hosting web Anda untuk bantuan lebih lanjut jika tidak jelas apa yang menyebabkan masalah tersebut.

Membungkus

Kesalahan ekstensi WordPress MySQL yang hilang adalah salah satu masalah WordPress yang terkait dengan kemampuannya untuk berkomunikasi dengan database-nya. Ini menunjukkan bahwa ekstensi PHP mysqli yang diperlukan tidak ada atau tidak dikonfigurasi dengan benar, yang mengakibatkan PHP tidak dapat mengirim kueri SQL ke database WordPress Anda. Mulai dari PHP 7.0, ekstensi mysql yang lebih lama telah dihapus demi mysqli, ekstensi WordPress MySQL baru dikompilasi untuk menggunakan MySQL Native Driver.

Sama seperti kesalahan WordPress kritis lainnya, melihat kesalahan "Instalasi PHP Anda tampaknya tidak memiliki ekstensi MySQL yang diperlukan oleh WordPress" berarti Anda perlu meninjau konfigurasi WordPress Anda dan memastikan praktik keamanan terbaik sudah diterapkan.

Mengambil pendekatan proaktif untuk administrasi dan keamanan situs WordPress akan membantu Anda mencegah sebagian besar kesalahan dan mengurangi permukaan serangan secara signifikan. Konfigurasikan pemantauan, pembaruan perangkat lunak otomatis, dan pencadangan rutin agar situs web Anda terlindungi dari kerentanan keamanan dan serangan jaringan Biarkan iThemes Security Pro dan BackupBuddy menjadi tim pakar keamanan dan pemulihan data Anda yang akan memastikan situs web Anda tidak pernah offline.