Error de conexión a la base de datos. instalación de magento


10

He intentado instalar magento, pero cuando intento instalar magento desde el navegador, muestra " Error de conexión de la base de datos " durante la instalación de Magento.

ingrese la descripción de la imagen aquí


necesitas crear una base de datos en phpmyadmin y darle su nombre de usuario y contraseña.
Akhilesh Patel

Respuestas:


9

En primer lugar, verifique el nombre de usuario y la contraseña de su base de datos. Antes de continuar con este paso, ya debería haber configurado la base de datos en MySQL. Debe crear un usuario y otorgar privilegios de acceso a ese usuario.

Luego verifique la configuración de su servidor MySQL. El número de puerto predeterminado es 3306. Sin embargo, el administrador del sistema puede cambiarlo por otro. O si está utilizando paquetes de software como MAMP / WAMP, el número de puerto puede establecerse en algo diferente a 3306. En estos casos, debe poner explícitamente el número de puerto en el campo Host.

Si todo esto es correcto y aún tiene un error de conexión a la base de datos, puede intentar usar la cuenta raíz para acceder a la base de datos. Si la raíz funciona, eso significa que hay problemas con los privilegios en la configuración de MySQL. Aunque no se recomienda usar la cuenta raíz para la futura implementación de producción, ya que agrega riesgos de seguridad al servidor.


Todavía tiene error de conexión de base de datos.
Darshan Patel

5

Esta es una pregunta bastante antigua, pero la encontré recientemente y espero que esta respuesta ayude a alguien más. Mi problema se redujo a una versión anterior de Magento sobre una nueva instalación de WAMP. Desde MySQL 5.6.1, la variable have_innodb ha sido eliminada. Sin embargo, el instalador de Magento busca esa variable y arroja un error si no la encuentra. Si realmente verifica el registro de excepciones, verá un error que indica que el servidor de la base de datos no es compatible con InnoDB. Sin embargo, en el controlador catch solo registra esa excepción y genera un mensaje genérico de "Error de conexión de la base de datos".

La solución más simple, si está seguro de que su base de datos admite InnoDB, es simplemente editar app\code\core\Mage\Install\Model\Installer\Db.php, encontrar el checkDatabasemétodo y comentar la parte al final del bloque try que verifica have_innodb. Normalmente, no recomendaría editar archivos principales, pero esto es solo para que el instalador funcione, por lo que diría que es lo suficientemente seguro.


4

Primero crea un db http://localhost/phpmyadmin

supongamos el nombre de DB: testdb

Nombre de la página de configuración db: nombre de usuario testdb: contraseña de root: vacía (no ingrese ningún valor)


4
  • Ir app/code/core/Mage/Install/Model/Installer/Db.php
  • Encuentra la checkDatabase($data)función
  • Al final de esta función, hay el siguiente código:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Cámbielo a lo siguiente:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Vaya a su navegador, donde está instalando Magento, haga clic en el Continuebotón

  • Ahora, debería poder ver algún mensaje de error apropiado

En mi caso, recibí el siguiente mensaje de error:

El servidor de bases de datos no es compatible con el motor de almacenamiento InnoDB.

Entonces, para resolver esto, comenté la verificación de InnoDB en la misma checkDatabasefunción.

// check InnoDB support
/*if (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') {
    Mage::throwException(Mage::helper('install')->__('Database server does not support the InnoDB storage engine.'));
}*/

Después de eso, pude instalar Magento.


1

Puede intentar usar este código para encontrar más detalles sobre el tipo de error de conexión de la base de datos o para verificar si el nombre de usuario y la contraseña son correctos

<?php
      $mysqli=mysqli_connect("host","user","password","database name");

      if(mysqli_connect_errno()){
          printf("Connect failed: %s\n", mysqli_connect_error());
          exit();
      }else{
          echo "Connection succesfull!";
      }
?>

Guarde este script como un archivo php y póngalo en el servidor. La salida será un error de conexión, o si no hay error, la salida será "¡Conexión exitosa!". "host" - puede ingresar aquí "localhost", "usuario" - aquí debe ingresar el nombre de usuario de la base de datos, "contraseña" - aquí debe ingresar la contraseña de la base de datos, "nombre de la base de datos" - aquí debe ingresar el nombre de la base de datos.


0
  1. Has dado el nombre de la base de datos como magento
  2. Por lo tanto, compruebe si creó esa base de datos con nombre magento o no.
  3. Si no, debe crear un db en blanco llamado magentoprimero.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.