Ottenete oggi il miglior plugin per il backup e la migrazione di WordPress
Ottenere Duplicator ora

Documentazione del Duplicatore

Documentazione, materiali di riferimento ed esercitazioni per Duplicator

Come risolvere i problemi di connessione al database

Avete problemi di connessione al database durante l'installazione? Questa guida illustra i problemi più comuni di connessione al database e fornisce soluzioni passo-passo per risolverli.

Problema A: la convalida fallisce

Nella fase 1 (Pro) e nella fase 2 (Lite) del programma di installazione, quando si fa clic su "Test Database", si riceve uno stato di fallimento.

Soluzione 1: lista di controllo di convalida

Assicurarsi che le credenziali e le autorizzazioni del database siano impostate correttamente:

  • Verificare che il database e l'utente del database siano stati creati.
  • Verificare che la password corrisponda all'utente del database utilizzato.
  • Assicurarsi che l'utente del database sia assegnato al database con le autorizzazioni corrette.
  • Cambiare temporaneamente la password dell'utente del database in 'test123' per convalidare l'immissione di caratteri.
  • Contattare il proprio provider di hosting per conoscere i parametri esatti richiesti.

Soluzione 2: Convalida del nome host

Il nome host predefinito "localhost" funziona nella maggior parte dei casi, ma può variare a seconda del provider di hosting. Confermate le impostazioni esatte con il vostro host. Alcune varianti comuni sono:

  • mysql.yourname.com
  • mysql.hostingcompany.com
  • mysql.hostingcompany.com:1400

Se viene visualizzato un errore del tipo "Impossibile connettersi al server MySQL locale attraverso il socket '/var/lib/mysql/mysql.sock' (2)", è probabile che il problema sia dovuto a un hostname errato.

Correzione rapida:

Contattare il provider di hosting per confermare le credenziali corrette per le connessioni al database. Fate riferimento a queste risorse di supporto:

  • GoDaddy
  • HostMonster
  • Bluehost
  • HostGator
  • DreamHost
  • Cerca su Google: "[Your host] database setup"

Soluzione 3: Conflitti in modalità SQL

Se viene visualizzato il messaggio "Errore nella lettura delle variabili del database", è possibile che l'istanza di MySQL abbia attivato la modalità SQL "ANSI_QUOTES". Poiché in questa modalità MySQL tratta i doppi apici come identificatori invece che come stringhe, ciò può causare problemi. Per risolvere il problema, rimuovere la modalità SQL ANSI_QUOTES.

Messaggi di errore comuni:

  • Unknown column ‘wp_table’ in ‘where clause’

Problema B: Accesso negato

Se si riceve un errore come Access denied for user 'myuser'@'localhost' (using password: YES) Quando si verifica la connessione al database, seguire le seguenti soluzioni.

Messaggi di errore comuni:

  • Error: 'Access denied; you need (at least one of) the PROCESS privilege ...
  • The database user for this WordPress site does NOT have sufficient permissions to write stored procedures ...

Soluzione 1: Assegnazione di privilegi completi

Assicurarsi che l'utente del database sia assegnato al database con privilegi completi:

  • Il modo più semplice per confermare le autorizzazioni è contattare il provider di hosting.
  • Seguire la guida del Codex di WordPress per creare un database e un utente.
  • Per una demo di cPanel, consultare questo articolo.
  • Per MySQL 8+: Eseguire il seguente comando per concedere tutti i privilegi richiesti: GRANT SHOW_ROUTINE ON *.* TO <USER>@<LOCATION>;

Soluzione 2: Creare un nuovo utente del database

Se l'assegnazione dei privilegi completi non funziona, creare un nuovo utente del database, concedere i permessi completi e assegnarlo al database. Questo può risolvere i problemi di cache memorizzati nel database.

Soluzione 3: Spostamento dei database tra i server

Durante la migrazione di un sito tra server MySQL, le diverse versioni di MySQL potrebbero non supportare le stesse direttive, causando un errore del tipo:

  • mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege ...'

Soluzioni:

  • Costruire in modalità PHP: Utilizzare PHP per evitare conflitti con le direttive MySQL.
  • Modificare lo script SQL: Rimuovere le direttive non supportate dal file SQL prima di eseguire il programma di installazione.

Problema C: Timeout del database

Se al passaggio 2 si verificano timeout della connessione SQL o errori di memoria, seguire le seguenti soluzioni.

Soluzione 1: Abilitare il chunking del database

Questo processo multi-thread suddivide l'installazione del database in query più piccole.

  1. Eseguire il programma di installazione e attivare la modalità avanzata facendo clic sul pulsante "Avanzate".
  2. Al punto 1, in Opzioni " Scheda Database " Elaborazione, attivare la "Modalità di raggruppamento".
  3. Continuare l'installazione.

Soluzione 2: Saltare l'estrazione del database

Invece di creare nuove tabelle del database, importate manualmente il database.

Passi:

  1. Estratto database.sql dall'archivio.
  2. Utilizzare phpMyAdmin per rimuovere le tabelle esistenti e importare il file SQL.
  3. Nel programma di installazione, selezionare "Salta estrazione del database" in Opzioni avanzate.

Soluzione 3: Problemi specifici di Duplicator Lite

Duplicator Lite (v1.4.7.2 o precedente) supporta solo un'importazione di database a thread singolo, che può causare problemi su server condivisi molto trafficati.

Soluzioni:

  • Eseguire l'installatore nelle ore non di punta.
  • Cambiare la modalità di costruzione nelle impostazioni di Duplicator in "PHP".
  • Contattare il proprio host per aumentare i limiti di timeout del server.
  • Aggiornare Duplicator Pro per utilizzare il chunking dei file SQL.

Messaggi di errore comuni:

  • MySQL Server has gone away, out of memory, or 500 Error

Risoluzione dei problemi

Se i problemi di connessione persistono, utilizzare il codice PHP per isolare il problema. Creare un file chiamato db-test.php nella stessa cartella del programma di installazione e inserire il seguente codice:

<?php
$servername = "your_server";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Success: Connected to MySQL!";
?>

Se lo script non funziona, condividetelo con il vostro provider di hosting per un ulteriore debugging.

Questo script è disponibile anche nella cartella Directory degli strumenti di Duplicator Pro a /plugins/duplicator-pro/tools/db-test.php.

Seguendo queste soluzioni, è possibile risolvere i problemi di connessione al database e garantire un processo di installazione senza problemi.

Questo articolo è stato utile?

Articoli correlati