Mysql
 sql >> Base de données >  >> RDS >> Mysql

L'adresse de liaison de configuration MYSql est définie sur 0.0.0.0 mais netstat est différent sur Ubuntu

l'adresse de liaison à 0.0.0.0 n'est qu'une partie des étapes pour lui permettre d'accepter les connexions à distance. Ces étapes incluent le rappel explicite avec # skip-networking

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

Et un redémarrage du serveur.

Vous avez ensuite besoin d'un combo utilisateur, hôte pour la connexion et idéalement d'un GRANT à une base de données à utiliser avec des droits adéquats (pas excessifs).

Vous pouvez voir vos utilisateurs actuels avec select user,host from mysql.user

Veuillez consulter la page du manuel MySQL sur GRANT Syntax .

J'ai écrit une petite réponse Ici à propos du joker % l'hôte et d'autres détails mineurs.

Une illustration pour un test est ci-dessous :

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

Maintenant, la ligne bleue au-dessus (USAGE) signifie presque rien d'autre que l'utilisateur peut se connecter et c'est tout. La 2ème ligne affiche les PRIVILEGES pour la base de données du GRANT cmd.

Afficher l'utilisateur dans mysql.user :

Concernant l'image ci-dessus,

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

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

La première requête ci-dessus concerne les versions antérieures à MySQL 5.7. La deuxième requête concerne la version 5.7 et ultérieure. Le mot de passe est haché. L'hôte est le caractère générique % ce qui signifie se connecter depuis n'importe quel hôte.