Errore di connessione al database. installazione di magento


Risposte:


9

Prima di tutto, controlla il nome utente e la password del database. Prima di procedere con questo passaggio, è necessario aver già impostato il database in MySQL. Devi creare un utente e concedere i privilegi di accesso a quell'utente.

Quindi controlla la configurazione del tuo server MySQL. Il numero di porta predefinito è 3306. Tuttavia, l'amministratore di sistema potrebbe modificarlo in qualcos'altro. Oppure, se si utilizzano pacchetti software come MAMP / WAMP, il numero di porta potrebbe essere impostato su un valore diverso da 3306. In questi casi, è necessario inserire esplicitamente il numero di porta nel campo Host.

Se tutti questi sono corretti e si riscontra ancora un errore di connessione al database, è possibile provare a utilizzare l'account root per accedere al database. Se root funziona, significa che ci sono problemi con i privilegi nelle impostazioni di MySQL. Sebbene non sia consigliabile utilizzare l'account root per la futura distribuzione della produzione in quanto aggiunge rischi per la sicurezza al server.


hanno ancora errori di connessione al database.
Darshan Patel,

5

Questa è una domanda piuttosto vecchia, ma mi sono imbattuto di recente e spero che questa risposta aiuti qualcun altro. Il mio problema è arrivato a una vecchia versione di Magento in aggiunta a una nuova installazione di WAMP. Da MySQL 5.6.1, la variabile have_innodb è stata rimossa. Tuttavia, il programma di installazione di Magento verifica la presenza di quella variabile e genera un errore se non la trova. Se controlli effettivamente il registro delle eccezioni, vedrai un errore che il server di database non supporta InnoDB. Tuttavia nel gestore catch registra solo quell'eccezione e genera un messaggio generico "Errore di connessione al database".

La soluzione più semplice, se sei sicuro che il tuo DB supporti InnoDB, è semplicemente modificare app\code\core\Mage\Install\Model\Installer\Db.php, trovare il checkDatabasemetodo e commentare la parte alla fine del blocco try che controlla have_innodb. Normalmente, non consiglierei la modifica dei file core, ma questo serve solo a far funzionare l'installer, quindi direi che è abbastanza sicuro.


4

Per prima cosa crea un db http://localhost/phpmyadmin

supponiamo che il nome DB: testdb

Pagina di configurazione nome db: nome utente testdb: password di root: vuota (non inserire alcun valore)


4
  • Vai a app/code/core/Mage/Install/Model/Installer/Db.php
  • Trova la checkDatabase($data)funzione
  • Alla fine di questa funzione, c'è il seguente codice:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Modificalo come segue:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Vai al tuo browser, dove stai installando Magento, fai clic sul Continuepulsante

  • Ora dovresti essere in grado di vedere qualche messaggio di errore corretto

Nel mio caso, ho ricevuto il seguente messaggio di errore:

Il server di database non supporta il motore di archiviazione InnoDB.

Quindi, per risolvere questo, ho commentato il controllo InnoDB nella stessa checkDatabasefunzione.

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

Successivamente, sono stato in grado di installare Magento.


1

Puoi provare a utilizzare questo codice per trovare maggiori dettagli sul tipo di errore di connessione al database o per verificare se il nome utente e la password sono corretti

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

Salva questo script come file php e mettilo sul server. L'output sarà un errore di connessione, o se nessun errore l'output sarà "Connessione riuscita!". "host" - puoi inserire qui "localhost", "utente" - qui devi inserire il nome utente del database, "password" - qui devi inserire la password del database, "nome database" - qui devi inserire il nome del database.


0
  1. Hai dato il nome del database come magento
  2. Quindi, per favore controlla se hai creato quel database chiamato magento o no.
  3. In caso contrario, è necessario creare prima un db vuoto chiamato magento.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.