host xxx.xxx.xxx.xxx is not allowed to connect to this mysql server
Η προεπιλεγμένη ρύθμιση του MySQL server είναι να ακούει στο 127.0.0.1.
Για αλλαγή:
Στο my.ini (windows) ή my.cnf προσθέτουμε στο section [mysqld] τη γραμμή bind-address=
[mysqld]
# skip-networking
# enable-named-pipe
# The Pipe the MySQL Server will use
# socket=mysql
port=3306
# basedir=”C:/Program Files/MySQL/MySQL Server 5.6/”
datadir=”C:/WorkSpace/MySQLdatabases/data/”
# created and no character set is defined
character-set-server=utf8
# Αν θέλουμε να ακούει μόνο στην 172.10.20.4 τότε
bind-address=172.10.20.4
# Αν θέλουμε να ακούει σε όλες (και στην 127.0.0.1 και στην 172.10.20.4 κα) τότε
bind-address=0.0.0.0
Επίσης στα δικαιώματα της ΒΔ (Users and Privieges) θα πρέπει να έχουμε επιτρέψει ο χρήστης root να μπορεί να συνδέεται από την σχετική IP διεύθυνση ή απ’ όλες τις διευθύνσεις.
Έτσι :
στην τυπική περίπτωση (127.0.0.1) τα δικαιώματα είναι:
root 127.0.0.1
για συγκεκριμένη IP (172.10.20.4) μπορούμε να προσθέσουμε:
root 127.0.0.1
root 172.10.20.4
αν θέλουμε να ακούει σε όλες τις διευθύνσεις (περίπτωση bind-address=0.0.0.0) τότε αρκεί :
Αντίστοιχα προσθέτουμε και τους λοιπούς χρήστες.
Σχετικό
How to Allow MySQL Client to Connect to Remote MySQL server
MySQL Ρυθμίσεις για remote πρόσβαση.doc