Error de instalación de WordPress localhost: parece que a su instalación de PHP le falta la extensión MySQL que requiere WordPress

3 minutos de lectura

Sé que esta pregunta se ha hecho N cantidad de veces, pero parece que no puedo hacer que funcione. Estoy tratando de instalar wordpress en mi máquina virtual local. Tengo mysql funcionando bien como se muestra a continuación.

    vishal@ubuntu:/etc/apache2$ mysql -u root -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 39
    Server version: 5.1.41-3ubuntu12.10 (Ubuntu)

    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

     mysql>

A pesar de varios intentos, recibo el siguiente error: “Parece que a su instalación de PHP le falta la extensión MySQL que requiere WordPress”

He intentado descomentar extension_dir con la ruta exacta de myql.so y poner la extensión como mysql.so.

Tengo dos archivos php.ini que no estoy seguro si son correctos o no. Uno está presente en /etc/apache2 /phi.ini y el segundo está presente en /etc/php5/cli/php.ini.

No hay ningún archivo php.ini en /etc/php5. Intenté instalar muchas veces pero no aparece allí.

Ambos se refieren a la ruta real de la biblioteca mysql.so y mencionan la extensión como mysql.so

¿Alguien podría sugerir qué podría salir mal? Gracias !

  • Debe habilitar la extensión mysql en ambos php.ini (apache2 y cli). Luego reinicie apache. Mire la salida de phpinfo (), mysql debe estar allí. O intente ejecutar “php -v” desde la consola, tal vez haya algunos errores.

    – nkuhta

    17 de diciembre de 2013 a las 7:01


  • ¿Puede confirmar que estas extensiones existen y no están comentadas dentro de su archivo php.ini?

    – sas

    17 de diciembre de 2013 a las 7:08

Instale su biblioteca mysql para php, ejecute:

 sudo apt-get install php5-mysql

Y reinicie apache:

 sudo service apache2 restart

¡Vuelva a intentar la instalación de WordPress!

  • Lo hice, sin embargo, sigo recibiendo el mismo error. vishal@ubuntu:/etc/apache2$ localiza mysql.so /usr/lib/perl5/auto/DBD/mysql/mysql.so /usr/lib/php5/20090626+lfs/mysql.so /usr/lib/php5/ 20090626+lfs/pdo_mysql.so

    – Vishal

    17 de diciembre de 2013 a las 6:47


Primero, asegúrese de que el servidor MySQL se esté ejecutando. Escriba el siguiente comando en un indicador de shell:

/etc/init.d/mysql status

Si MySQL no se está ejecutando, ingrese:

/etc/init.d/mysql start

Si MySQL no está instalado, escriba el siguiente comando para instalar el servidor MySQL:

apt-get install mysql-server

Asegúrese de que el módulo MySQL para php5 esté instalado:

dpkg --list | grep php5-mysql

Para instalar el módulo php5-mysql ingrese:

apt-get install php5-mysql

A continuación, reinicie el servidor web Apache2:

/etc/init.d/apache2 restart

Ahora el soporte de PHP para MySQL debería funcionar sin problemas. También asegúrese de configurar localhost o 127.0.0.1 (recomendado) como nombre de host de MySQL mientras realiza la instalación de wordpress.

Esto se debe a que su apache no se cargó con el módulo mysql. Esto resolverá el problema:

yum install php-mysql -y 

una vez que se complete la instalación. Hacer un reinicio del servicio

service httpd restart

Lo que me ayudó es ejecutar:

$ php -v

Que mostró comentarios como:

PHP Warning:  PHP Startup: Unable to load dynamic library './msql.so' - ./msql.so: cannot open shared object file: No such file or directory in Unknown on line 0

Indica que los archivos .so no existen o que el directorio contenedor especificado es incorrecto (es decir, no es ‘./’). Despues de correr:

$ find /usr/lib -name "*.so" | grep mysql

Pude encontrar los archivos .so en un directorio php, /usr/lib/php5/20131226/ :

$ ls
gd.so  json.so  mysqli.so  mysql.so  opcache.so  pdo_mysql.so  pdo.so  readline.so  ssh2.so

Mi solución fue cambiar mi archivo php.ini (/etc/php5/apache2/php.ini) a:

extension=mysql.so
...
extension_dir = "/usr/lib/php5/20131226"

¿Ha sido útil esta solución?