het bindadres naar 0.0.0.0
is slechts een deel van de stappen om het mogelijk te maken om externe verbindingen te accepteren. Die stappen omvatten het expliciet verwijderen met # skip-networking
[mysqld]
bind-address = 0.0.0.0
# skip-networking
En een server herstart.
Je hebt dan een gebruiker-hostcombinatie nodig om in te loggen en idealiter een GRANT
naar een db om te gebruiken met voldoende (niet buitensporige) rechten.
U kunt uw huidige gebruikers zien met select user,host from mysql.user
Zie de MySQL-handleidingpagina op GRANT-syntaxis .
Ik schreef een klein antwoord Hier
over het jokerteken %
host en andere kleine details.
Een illustratie voor een test staat hieronder:
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'@'%';
Nu betekent de blauwe rij hierboven (GEBRUIK) bijna niets anders dan dat de gebruiker kan inloggen en dat is het dan. De 2e rij toont de PRIVILEGES
voor de db van de GRANT
cmd.
Bekijk gebruiker in mysql.user
:
Wat betreft de bovenstaande foto,
select user,host,password from mysql.user where user='jeffrey123z';
select user,host,authentication_string from mysql.user where user='jeffrey123z';
De eerste vraag hierboven is voor MySQL 5.7. De tweede vraag is voor 5.7 en later. Het wachtwoord is gehasht. De host is het jokerteken %
wat betekent inloggen vanaf elke host.