J'essaie de déplacer une base de données mysql sur un serveur mis à niveau avec une version plus récente d'ubuntu en cours d'exécution (15.04), et après l'installation de LAMP, je suis allé modifier l'adresse de liaison dans le fichier my.cnf. Ce qui suit est tout ce que je vois dans /etc/mysql/my.cnf. J'ai ajouté [mysqld] et l'adresse bind = nouvelle adresse mais rien ne semble autoriser mon client distant à se connecter à cette base de données. C'est en ligne et l'adresse IP devrait être correcte. Qu'est-ce que je rate? Pourquoi ce fichier my.cnf est-il si dépouillé?
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
stupide moi, apparemment dans cette version c'est le mysqld.cnf sous/etc/mysql/mysql.conf.d /. Tant pis. Publier ceci au cas où quelqu'un aurait des problèmes .....
Dans Ubuntu 15.04, le fichier de configuration du serveur MySQL se trouve dans:
/etc/mysql/mysql.conf.d/mysqld.cnf
Vous pouvez trouver bind-address
ici.Comment, et redémarrez votre serveur MySQL utiliser:
service mysql restart
Ensuite, vous pouvez accéder à votre MysqlServer depuis un autre ordinateur. Si vous ne le faites pas, vous devrez peut-être accorder un droit à l'utilisateur que vous utilisez.
Vous pouvez voir l'utilisation de l'adresse de liaison du serveur MySQL:
netstat -tap | grep mysql
Donc, vous savez si la configuration prend effet.
Selon votre distribution linux, votre fichier my.cnf (ainsi que le reste de votre répertoire de données) peut se trouver dans le dossier/var/lib/mysql.
Vous pouvez également exécuter la commande find pour rechercher le fichier: find -name 'my.cnf'
. Je suggère d'exécuter cette commande en tant que root, dans votre répertoire racine.
Une fois que vous avez localisé le bon fichier my.cnf, il y aura un paramètre dans la section [mysqld]
qui ressemblera à ceci:
bind-address = 127.0.0.1
Commentez ce paramètre avec un #
et enregistrez le fichier my.cnf modifié. Redémarrez le serveur Mysql et vous devriez pouvoir vous connecter à distance à partir de n'importe quelle adresse IP tant que l'utilisateur avec lequel vous essayez de vous connecter possède les autorisations et l'hôte appropriés (%
).
Vous pouvez le vérifier en lançant: select user, Host from mysql,user;
et show grants for 'youruser'@'yourhost';
subventions et privilèges pour Mysql .