Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MYSql config bind-address auf 0.0.0.0 gesetzt, aber netstat zeigt unter Ubuntu etwas anderes an

die Bindungsadresse an 0.0.0.0 ist nur ein Teil der Schritte, um Remote-Verbindungen zu akzeptieren. Diese Schritte umfassen das explizite Ausblenden mit # skip-networking

[mysqld]
bind-address    = 0.0.0.0
# skip-networking

Und ein Serverneustart.

Sie benötigen dann eine Benutzer-Host-Kombination für die Anmeldung und idealerweise einen GRANT zu einer Datenbank, um sie mit angemessenen (nicht übermäßigen) Rechten zu verwenden.

Sie können Ihre aktuellen Benutzer mit select user,host from mysql.user sehen

Weitere Informationen finden Sie auf der MySQL-Handbuchseite unter GRANT-Syntax .

Eine kleine Antwort habe ich hier geschrieben über den Platzhalter % Gastgeber und andere kleinere Details.

Eine Illustration für einen Test ist unten:

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'@'%';

Jetzt bedeutet die blaue Zeile oben (NUTZUNG) fast nichts anderes, als dass sich der Benutzer anmelden kann, und das war's. Die 2. Zeile zeigt die PRIVILEGES für die db aus dem GRANT cmd.

Benutzer in mysql.user anzeigen :

Zum obigen Bild,

select user,host,password from mysql.user where user='jeffrey123z';

select user,host,authentication_string from mysql.user where user='jeffrey123z';

Die erste obige Abfrage gilt für Versionen vor MySQL 5.7. Die zweite Abfrage gilt für 5.7 und höher. Das Passwort ist gehasht. Der Host ist der Platzhalter % bedeutet Login von jedem Host.