Erreur de connexion à la base de données. installation de magento

10

J'ai essayé d'installer magento, mais lorsque j'essaie d'installer magento à partir du navigateur, il affiche " Erreur de connexion à la base de données " lors de l'installation de Magento.

entrez la description de l'image ici

Darshan Patel
la source
vous devez créer une base de données dans phpmyadmin et donner son nom d'utilisateur et son mot de passe.
Akhilesh Patel

Réponses:

9

Tout d'abord, vérifiez le nom d'utilisateur et le mot de passe de votre base de données. Avant de passer à cette étape, vous devez avoir déjà configuré la base de données dans MySQL. Vous devez créer un utilisateur et accorder des privilèges d'accès à cet utilisateur.

Vérifiez ensuite la configuration de votre serveur MySQL. Le numéro de port par défaut est 3306. Cependant, votre administrateur système peut le changer pour autre chose. Ou si vous utilisez des progiciels tels que MAMP / WAMP, le numéro de port peut être défini sur autre chose que 3306. Dans ces cas, vous devez explicitement mettre le numéro de port dans le champ Hôte.

Si tout cela est correct et que vous avez toujours une erreur de connexion à la base de données, vous pouvez essayer d'utiliser le compte root pour accéder à la base de données. Si root fonctionne, cela signifie qu'il y a des problèmes avec les privilèges dans vos paramètres MySQL. Bien qu'il ne soit pas recommandé d'utiliser un compte root pour un déploiement de production futur car cela ajoute des risques de sécurité au serveur.

kebugcheck
la source
ont encore une erreur de connexion à la base de données.
Darshan Patel
5

C'est une question assez ancienne mais je l'ai rencontrée récemment et j'espère que cette réponse aidera quelqu'un d'autre. Mon problème est dû à une ancienne version de Magento en plus d'une nouvelle installation WAMP. Depuis MySQL 5.6.1, la variable have_innodb a été supprimée. Cependant, le programme d'installation de Magento vérifie cette variable et génère une erreur s'il ne la trouve pas. Si vous vérifiez réellement le journal des exceptions, vous verrez une erreur indiquant que le serveur de base de données ne prend pas en charge InnoDB. Pourtant, dans le gestionnaire de captures, il enregistre uniquement cette exception et génère un message générique "Erreur de connexion à la base de données".

La solution la plus simple, si vous êtes sûr que votre base de données prend en charge InnoDB, consiste simplement à modifier app\code\core\Mage\Install\Model\Installer\Db.php, à trouver la checkDatabaseméthode et à commenter la partie à la fin du bloc try qui vérifie have_innodb. Normalement, je ne recommanderais pas la modification des fichiers de base, mais cela ne sert qu'à faire fonctionner l'installateur, donc je dirais que c'est assez sûr.

Sejda Hajji
la source
4

Créez d'abord un db http://localhost/phpmyadmin

supposons que le nom de la base de données: testdb

Page de configuration nom de la base de données: testdb nom d'utilisateur: mot de passe root: vide (ne saisissez aucune valeur)

Magento 2
la source
4
  • Aller à app/code/core/Mage/Install/Model/Installer/Db.php
  • Trouvez la checkDatabase($data)fonction
  • À la fin de cette fonction, il y a le code suivant:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Modifiez-le comme suit:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Accédez à votre navigateur, où vous installez Magento, cliquez sur le Continuebouton

  • Maintenant, vous devriez pouvoir voir un message d'erreur approprié

Dans mon cas, j'ai reçu le message d'erreur suivant:

Le serveur de base de données ne prend pas en charge le moteur de stockage InnoDB.

Donc, pour résoudre ce problème, j'ai commenté la vérification InnoDB dans la même checkDatabasefonction.

// 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.'));
}*/

Après cela, j'ai pu installer Magento.

Mukesh Chapagain
la source
1

Vous pouvez essayer d'utiliser ce code pour trouver plus de détails sur le type d'erreur de connexion à la base de données ou pour vérifier si le nom d'utilisateur et le mot de passe sont corrects.

<?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!";
      }
?>

Enregistrez ce script en tant que fichier php et placez-le sur le serveur. La sortie sera une erreur de connexion ou, si aucune erreur, la sortie sera "Connexion réussie!". "hôte" - vous pouvez entrer ici "localhost", "utilisateur" - ici vous devez entrer le nom d'utilisateur de la base de données, "mot de passe" - ici vous devez entrer le mot de passe de la base de données, "nom de la base de données" - ici vous devez entrer le nom de la base de données.

Mancius Mancius
la source
0
  1. Vous avez donné le nom de la base de données comme magento
  2. Donc, veuillez vérifier si vous avez créé cette base de données nommée magento ou non.
  3. Sinon, vous devez d'abord créer une base de données vide appelée magento.
Stevie G
la source