In questo rapido articolo imparerai come risolvere "ERRORE 1130 (HY000):l'host x.x.x.x non è autorizzato a connettersi a questo server MySQL ” errore nella distribuzione del database MySQL/MariaDB su un sistema Linux. Questo è uno dei comuni errori di connessione al database remoto riscontrati dagli utenti.
Ambiente di prova:
- IP del server delle applicazioni :24.10.96.5
- IP del server di database :24.10.96.6
Si è verificato l'errore durante il test della connessione al database da uno dei nostri server di app a un server di database, utilizzando mysql cliente come mostrato.
# mysql -u database_username -p -h 10.24.96.6
L'errore indica che l'host 10.24.96.5 da cui l'utente del database si sta connettendo non è autorizzato a connettersi al server MySQL. In questo caso, dobbiamo apportare alcune modifiche al server del database per consentire all'utente di connettersi in remoto.
Sul server del database, dobbiamo controllare l'host da cui l'utente sopra è autorizzato a connettersi.
# mysql -u root -p
Esegui i seguenti comandi SQL per controllare l'host dell'utente:
MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";
Dall'output del comando, l'utente può connettersi al server del database solo da localhost . Quindi, dobbiamo aggiornare gli host dell'utente come segue.
Esegui la seguente GRANT comando per abilitare l'accesso MySQL per l'utente remoto da un host remoto. Assicurati di sostituire "10.24.96.6 ” con l'indirizzo IP del sistema remoto e “database_password ” alla password che desideri “database_username ” da usare:
MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.5' IDENTIFIED BY 'database_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";
Per concedere a un utente l'accesso remoto da tutti gli host di una rete, utilizza la sintassi seguente:
MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.%' IDENTIFIED BY 'database_password';
Dopo aver apportato le modifiche di cui sopra, prova a connetterti in remoto al server del database MySQL ancora una volta. La connessione dovrebbe essere riuscita come mostrato nella schermata seguente.
# mysql -u database_username -p -h 10.24.96.6
Ci auguriamo che questa soluzione ti abbia aiutato a risolvere il tuo errore di connessione remota Mysql. In caso di domande, contattaci tramite il modulo di feedback sottostante.