The mysql extension was not found

How do I fix the error below?

Your PHP installation appears to be missing the MySQL extension which is required by WordPress.

I use my NAS with a telnet connection.

I installed FFP 0.7

My php.ini is in: ffp/etc/php.ini and I uncommented everything I thought to be of use.

Below is a portion of my php.ini file;

;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

The outstanding issue is that when I run in phpinfo(), I see the module MySQLi activated but not MySQL.

MySQL is working as expected just as PHP and Lighttpd web server.

I equally have phpmyadmin working.

It's on a Zyxel NSA310.

Also, when mysqld is started, it creates a shortcut from my root to: ffp/opt/mysql.. and every time I restart my NAS the shortcut is deleted.

Does anyone might know a trick for this?

The mysql extension was not found

nyedidikeke

6,2227 gold badges43 silver badges53 bronze badges

asked Jul 17, 2013 at 8:15

0

in the end i found a solution First, make sure MySQL server is running. Type the following command at a shell prompt:

/etc/init.d/mysql status

If MySQL is not running, enter:

/etc/init.d/mysql start

If MySQL is not installed, type the following command to install MySQL server:

apt-get install mysql-server

Make sure MySQL module for php5 is installed:

dpkg --list | grep php5-mysql

To install php5-mysql module enter:

apt-get install php5-mysql

Next, restart the Apache2 web server:

/etc/init.d/apache2 restart

answered Apr 1, 2014 at 7:58

The mysql extension was not found

5

The php mysql api is deprecated. It's kaput --- going away -- not to be used, finito.

If you have a modern version of PHP (> 5.6) then Wordpress should automatically switch to make use of mysqli. That should be your first attempt.

If you can not update your php, rather than attempting to resurrect something that php no longer supports, just patch your wordpress: http://wordpress.org/plugins/mysqli/

If you are already running a modern version of PHP, then this is likely because you don't have the mysqli extension in your version of PHP. You can check this using php -i from your server OS, or make a page with <php phpinfo(); and navigate to that page with your browser. There will be section for all the extensions.

If you don't have the mysqli extension installed, follow the instructions from the official PHP documentation.

answered Jul 17, 2013 at 8:23

gviewgview

14.3k3 gold badges43 silver badges49 bronze badges

4

This MySQL library worked for me:

sudo apt-get install php5-mysqlnd-ms

The mysql extension was not found

Downgoat

13.2k5 gold badges43 silver badges69 bronze badges

answered May 18, 2016 at 14:47

1

After nearly seven years this keeps getting different answers.† Many are similar--but none identical--to what worked for me. Here's what worked for me (Ubuntu server).

Moving a site to a new server, forgot to install the PHP MySQL module/extension. I ran a quick

apt-get install php-mysql

and then

apachectl restart

Bada bing. No php5, php7; just plain php-mysql.

The mysql extension was not found

brasofilo

24.9k15 gold badges89 silver badges177 bronze badges

answered Aug 29, 2019 at 0:54

zedmelonzedmelon

3732 silver badges10 bronze badges

6

Check the

extension_dir =

remove it if it is there. that should fix the problem.

answered Nov 28, 2013 at 4:27

The mysql extension was not found

pravchukpravchuk

7759 silver badges13 bronze badges

3

If people are using shared Linux hosting with cPanel (Godaddy, Reseller club, Hostgator or any Shared Hosting), try the following:

Under Software and Services tab -> Select PHP Version -> PHP Selectors | Extentions

Tick all MySQL related extensions, save it and you are done. Please check the attached image.

The mysql extension was not found

Burgi

4248 silver badges24 bronze badges

answered Jan 5, 2017 at 16:57

The mysql extension was not found

1

When you upgarde your php version, make sure, apache2 follows. You can create a phpinfo() file which could show that apache is still using the old php version.

In this case you should use the a2dismod php-old-version and a2enmon php-mod-version commands

Exemple :

in ubuntu, your grab the old version from /etc/apache2/mods-enabled, or from the version shown by the phpinfo file, and you grab the new one from /etc/apache2/mods-available

> sudo a2dismod php5.6
> sudo a2enmod php7.1
> sudo service apache2 restart

answered May 9, 2017 at 16:36

amineamine

3203 silver badges7 bronze badges

It maybe the reason The php mysql api is deprecated. if your using below < PHP5.5 just update in your server to 5.6 and above.

answered Mar 14, 2017 at 10:04

Raj008Raj008

3,4912 gold badges27 silver badges25 bronze badges

I'm using 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

Burgi

4248 silver badges24 bronze badges

answered Jan 24, 2017 at 13:36

The mysql extension was not found

Ng Zhong QinNg Zhong Qin

1,1712 gold badges14 silver badges28 bronze badges

1

When I upgraded my website PHP from version 5.6 to 7.2, I encountered this problem “Your PHP installation appears to be missing the MySQL extension which is required by WordPress”. It turns out that mysql extension is no longer supported in PHP version 7.2. It is now using mysqli extention. I am using old version of WordPress which still using mysql extension that is why the problem existed. So what I did is upgraded the WordPress to the core. This solve the problem.

Here's the steps I followed when upgrading WordPress manually.

  1. First I created a full backup of my website. This is very important in case of mistake.
  2. I download the newest WordPress ZIP file from wordpress.org.
  3. I unzipped the file into a local directory of my computer.
  4. I went to my website root directory and deleted your ‘wp-includes’ and ‘wp-admin’ directories. I used sFTP connection using Filezilla software.
  5. I uploaded the new wp-includes and wp-admin directories from the new version of WordPress I unzipped to my website root directory and replaced the directories I just deleted.
  6. I did not delete the wp-content directory or any of the files in that directory. I just copied over the files from the wp-content directory in the new version of WordPress to my existing wp-content directory. All existing files with the same name have been overwritten.
  7. I copied all files from the root (‘/’) directory of the new version of WordPress that I unzipped into my website root directory (or the root directory of your WordPress installation). Existing files has been overwritten and new files has been copied across. wp-config.php file was not be affected because WordPress has never distributed with a wp-config.php file.
  8. I compare wp-config-sample.php which was distributed with WordPress but did not find anything to change so I just used the old one.
  9. I cleared my browser cache to ensure I can see all changes.
  10. I checked the site and there is no error now. The upgrade was completed.

The mysql extension was not found

halfer

19.6k17 gold badges92 silver badges175 bronze badges

answered Apr 4, 2019 at 21:19

If you have Wordfence plugin installed I found commenting out the suPHP_ConfigPath lines in the .htaccess file brought the website back to life:

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

I've reported this to Wordfence too.

answered Jul 2, 2016 at 13:18

0

Make sure you tick Mysqli and mysqlnd as shown in the screenshot

The mysql extension was not found

answered Oct 4, 2018 at 15:16

The mysql extension was not found

csandreas1csandreas1

2,35424 silver badges44 bronze badges

I had same issue as mentioned " Your PHP installation appears to be missing the MySQL extension which is required by WordPress" in resellerclub hosting.

I went through this thread and came to know that php version should be greater than > 5.6 so that wordpress will automatically gets converted to mysqli

Then logged into my cpanel searched for php in cpanel to check for the version, luckly was able to find that my version of php was 5.2 and changed that to 5.6 by making sure mysqli is tick marked in the option window and saved it is working fine now.

answered Jun 8, 2017 at 11:53

This issue was due to lack of database. If it is a fresh installation, you need to manually create one and assign user with privileges.

Please check in wp-config.php for any bad configurations and make sure that database and tables are not missing or corrupted.

answered Jun 22, 2017 at 4:52

2

Just install apt-get install php5-mysqlnd Restart Apache service apache2 restart

answered Sep 13, 2017 at 7:19

The mysql extension was not found

Make sure msqli and mysqlnd are checked in your php selector. Then go over change the name of your .htaccess file to .htaccess_old. See if your site can load now.

If it works, then go to your dashboard and save your permalinks, it will create a new .htaccess file.

This worked for me.

The mysql extension was not found

Mark Tickner

1,0132 gold badges15 silver badges26 bronze badges

answered Sep 12, 2019 at 15:40

For php 5.6 sudo apt-get install php5.6-mysqlnd-ms and restart your apache

/etc/init.d/apache2 restart

answered Jan 10, 2019 at 16:54

The mysql extension was not found

The source of this message was unrelated to the solution in my case.

My ip address of my server changed and i didn't change the <VirtualHost> directive in my httpd.conf of the apache server.

Once i changed it to the correct ip address the message disappeared and Wordpress is working again.

answered Feb 28, 2019 at 8:37

The mysql extension was not found

Tinus TateTinus Tate

2,1362 gold badges11 silver badges30 bronze badges

I have resolved the issue just adding following code in .htaccess file. I hope this will work for you guys also.

Step 1: Change the PHP version form the server.

Step 2: Add the following code in your .htaccess file according to your PHP version (Selected from the server).

To switch to PHP 4.4:

AddHandler application/x-httpd-php4 .php

To switch to PHP 5.0:

AddHandler application/x-httpd-php5 .php

To switch to PHP 5.1:

AddHandler application/x-httpd-php51 .php

To switch to PHP 5.2:

AddHandler application/x-httpd-php52 .php

To switch to PHP 5.3:

AddHandler application/x-httpd-php53 .php

To switch to PHP 5.4:

AddHandler application/x-httpd-php54 .php

To switch to PHP 5.5:

AddHandler application/x-httpd-php55 .php

To switch to PHP 5.6:

AddHandler application/x-httpd-php56 .php

To switch to PHP 7:

AddHandler application/x-httpd-php7 .php

To switch to PHP 7.1:

AddHandler application/x-httpd-php71 .php 

answered Mar 29, 2019 at 7:56

The mysql extension was not found

Mr. HKMr. HK

2,1611 gold badge17 silver badges28 bronze badges

On Oracle Linux 7.x running PHP version 7.3.x you need to run sudo yum install php-mysqlnd in order to install the missing MySQL extension for PHP.

Remember to restart PHP and or your server for the changes to take effect.

answered May 26, 2019 at 19:12

The mysql extension was not found

nyedidikekenyedidikeke

6,2227 gold badges43 silver badges53 bronze badges

For me (ubuntu 16.04) the winner was:

sudo apt install php7.0-mysql

answered Jun 13, 2019 at 0:58

The mysql extension was not found

veggiebenzveggiebenz

3794 silver badges11 bronze badges

I just removed custom php ini, which I don't use at all. The problem gone, site is working fine.

answered Jul 18, 2019 at 18:23

As few people shared to tick mark the checkbox for mysqli and mysqlind

but Hostgator (webhosting site) now does not give that option to select extension via the cpanel as that option is removed select PHP and now it gives the option for php manager

You can just select the Php version you want and not the extension.

Solution :- Called the hostgator , first time they said get in touch with your developer, ( i asked my brother and he downloaded the files locally and verified it was working fine on local system) <-- this was not needed though

Again called the hostgator and their backend team installed the missing extension and it was solved.

Below is the code which gives this error when it does not find the extension and you can find this line in load.php via ftp.

if ( ! extension_loaded( 'mysql' ) && ! extension_loaded( 'mysqli' ) && ! extension_loaded( 'mysqlnd' ) && ! file_exists( WP_CONTENT_DIR . '/db.php' ) ) {
    require_once ABSPATH . WPINC . '/functions.php';
    wp_load_translations_early();
    $args = array(
        'exit' => false,
        'code' => 'mysql_not_found',
    );
    wp_die(
        __( 'Your PHP installation appears to be missing the MySQL extension which is required by WordPress.' ),
        __( 'Requirements Not Met' ),
        $args
    );
    exit( 1 );
}

}

answered May 13, 2020 at 8:58

Gaurav KhuranaGaurav Khurana

3,0061 gold badge24 silver badges32 bronze badges

I got the same issue.

I have checked my website's php version and it was old. I have corrected and reset it to the latest one.

The issue has been resolved by resetting php version.

answered May 25, 2021 at 19:38

The mysql extension was not found

One common scenario for such cases is when upgrading to PHP 7.4 or higher, there is conflict is because of nd_mysqli is enabled.

Fix: disable nd_mysqli extension and enable mysqli extension in [cPanel > Select PHP Version]

Enable the following mysqli extensions:

mysqlnd
nd_mysqli
nd_pdo_mysql

Disable following extensions:

mysqli
pdo_mysql

answered Nov 17, 2021 at 15:35

The mysql extension was not found

Deepak RajpalDeepak Rajpal

7051 gold badge6 silver badges11 bronze badges

How do you check if MySQL extension is installed?

Check PHP MySQL Extension is Installed Under the MySQL Support, find the Client API version cell check the PHP version. Tip: Use Ctrl+F and type MySQL Support to find this section instead of scrolling through the file. Restart the server to apply the changes.

What is MySQL extension?

Your PHP installation appears to be missing the MySQL extension which is required by WordPress. It means the PHP installation on your server doesn't have the required MySQL extension to connect WordPress to your MySQL database. Support for this extension was deprecated in versions of PHP 7.0 and beyond.

How do I enable MySQL extension in WHM?

install mysqli on cPanel/WHM using EasyApache.
Login to WHM as 'root' user..
Either search for "EasyApache" or go to Software > EasyApache..
Scroll down and select a build option (Previously Saved Config).
Click Start "Start customizing based on profile".
Select the version of Apache and click "Next Step"..

How do I install PHP?

How to Install PHP.
Step 1: Download the PHP files. You'll need the PHP Windows installer. ... .
Step 2: Extract the files. ... .
Step 3: Configure php. ... .
Step 4: Add C:\php to the path environment variable. ... .
Step 5: Configure PHP as an Apache module. ... .
Step 6: Test a PHP file..