Mysql
 sql >> Database >  >> RDS >> Mysql

Connettiti al database MySQL remoto

No, Charter non sarebbe in grado di fare nulla al riguardo, perché è un errore in arrivo direttamente dal server MySQL , perché il tuo indirizzo IP non è tra gli host configurati per l'accesso.

Error: 1130 SQLSTATE: HY000 (ER_HOST_NOT_PRIVILEGED)
Message: Host '%s' is not allowed to connect to this MySQL server

La soluzione corretta implica comprendere che il MySQL Access Privilege System tratta nome utente + indirizzo IP host o nome da cui ha origine la connessione come "account" - non nome utente di per sé.

'foo'@'localhost'   # username foo connecting from the server machine
'foo'@'192.168.1.1' # username foo from IP address 192.168.1.1
'foo'@'192.168.1.%' # username foo from IP address 192.168.1.*
'foo'@'192.168.%'   # username foo from IP address 192.168.*.*
'foo'@'%'           # username foo from any IP address

Nel sistema dei privilegi di MySQL, questi sono 5 "utenti" diversi, potenzialmente con 5 password diverse. Se nessun utente è autorizzato a connettersi dal tuo indirizzo IP o da qualsiasi indirizzo jolly che corrisponda al tuo, questo sarebbe il messaggio che riceverai. Questo è spiegato ulteriormente, qui e qui .

Non c'è niente che tu possa fare con mysql client della riga di comando per sovrascrivere la configurazione del server, anche se potresti usare un tunnel SSH in modo che il server pensi che ti stai connettendo da localhost o un altro host affidabile, come suggerito in un commento.

La soluzione è che il tuo amico ti concede i privilegi al tuo indirizzo con una GRANT dichiarazione . cPanel potrebbe fornire un'interfaccia per farlo -- non ne ho idea, dal momento che lavoro direttamente con MySQL -- ma se lo fa, sarebbe cPanel che essenzialmente scriverebbe lo stesso GRANT istruzione e inviandola al server MySQL per l'esecuzione.