Page 1 sur 1
[MySQL] Communication entre 2 serveurs
Posté : 24 sept. 2013, 05:43
par rimie
Bonjour,
Si je suis sur un serveur avec une IP (aaa.bbb.ccc.ddd) est ce que je peux acceder a un autre serveur (eee.fff.ggg.hhh), et effectuer les operations quotiediennes (insert, select,..)
Merci
Re: [MySQL] Communication entre 2 serveurs
Posté : 24 sept. 2013, 10:31
par Mazarini
Oui, si le serveur l'autorise. Lors de la connexion, il y a un paramètre pour indiquer le serveur. Il faut juste remplacer localhost (ou 127.0.0.1) par le nom du serveur (ou son adresse IP).
Pour que le serveur accepte la connexion, il faut qu'il écoute l'extérieur et non pas uniquement les requêtes locales (voir fichier my.conf). Il faut également que l'utilisateur soit autorisé à se connecter depuis le serveur appelant (voir les colonnes user et host la table user dans la base mysql) et qu'il ait les privilèges pour faire les opérations nécessaire.
Re: [MySQL] Communication entre 2 serveurs
Posté : 25 sept. 2013, 03:37
par rimie
J'ai change bind-address par l'IP du serveur autorise
Code : Tout sélectionner
bind-address = 127.0.0.1
service mysql restart
mysql stop/waiting
start: Job failed to start
et quand je commente la ligne bind, le service mysql se redemarre
Re: [MySQL] Communication entre 2 serveurs
Posté : 25 sept. 2013, 12:02
par Mazarini
C'est l'adresse du serveur mysql qu'il faut mettre. Celle associée à eth0 en général.
Edit : Par contre, tu peux faire un filtrage sur l'adresse du serveur qui fait l'accès via iptables
Re: [MySQL] Communication entre 2 serveurs
Posté : 25 sept. 2013, 15:30
par rimie
en gros c'est:
Serveur distante:
Se connecter au MySQL
$ mysql -u root -p
mysql> GRANT ALL ON DATABASE.* TO USERNAME@'FROM_IP' IDENTIFIED BY 'PASSWORD';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.03 sec)
Edition du fichier my.conf de MySQL
Code : Tout sélectionner
vim /etc/mysql/my.cnf
#bind-address = 127.0.0.1
service mysql restart
Autoriser l'IP du serveur local:
Code : Tout sélectionner
iptables -A INPUT -i eth0 -s 176.31.243.9 -p tcp --destination-port 3306 -j ACCEPT
Serveur Local: on teste
J'espere me confirmer les etapes, et que je n'ai zappe aucune