l'indirizzo di collegamento a 0.0.0.0
è solo una parte dei passaggi per consentirgli di accettare connessioni remote. Questi passaggi includono la rimozione esplicita con # skip-networking
[mysqld]
bind-address = 0.0.0.0
# skip-networking
E un riavvio del server.
È quindi necessario un utente, una combinazione host per l'accesso e idealmente un GRANT
ad un db da utilizzare con diritti adeguati (non eccessivi).
Puoi vedere i tuoi utenti attuali con select user,host from mysql.user
Consulta la pagina del manuale MySQL su Sintassi GRANT .
Ho scritto una piccola risposta Qui
sul carattere jolly %
host e altri dettagli minori.
Di seguito un'illustrazione per un test:
create schema testDB007;
use testDB007;
create table t1
( id int not null
);
CREATE USER 'jeffrey123z'@'%' IDENTIFIED BY 'mypass123^';
-- note password is mypass123^
GRANT ALL ON testDB007.* TO 'jeffrey123z'@'%';
SHOW GRANTS FOR 'jeffrey123z'@'%';
Ora, la riga blu sopra (USAGE) significa quasi nient'altro che l'utente può accedere e basta. La seconda riga mostra i PRIVILEGES
per il db dal GRANT
cmd.
Visualizza utente in mysql.user
:
Per quanto riguarda l'immagine sopra,
select user,host,password from mysql.user where user='jeffrey123z';
select user,host,authentication_string from mysql.user where user='jeffrey123z';
La prima query sopra è per prima di MySQL 5.7. La seconda query è per 5.7 e successivi. La password è con hash. L'host è il carattere jolly %
significa accedere da qualsiasi host.