У меня есть экземпляр Amazon AWS EC2 под управлением Ubuntu 14.04. где я установил MYSQL 5.5.
Я пытаюсь подключиться к MYSQL, запущенному на этом экземпляре, с моей локальной машины Windows10, на которой запущен Navicat.
Состояние env:
3306 прослушивает
netstat -an | grep 3306 -> tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
MYSQL запущен
ubuntu@ip-***-**-**-**:/$ sudo service mysql status
mysql start/running, process 28015
выберите пользователя, хоста из mysql .user;
| blog | % |
| blog | localhost |
mysql> show grants for 'blog'@'%';
+--------------------------------------------------+
| Grants for blog@% |
+--------------------------------------------------+
| GRANT USAGE ON *.* TO 'blog'@'%' |
| GRANT ALL PRIVILEGES ON `blogdb`.* TO 'blog'@'%' |
+--------------------------------------------------+
2 rows in set (0.00 sec)
telnet from my PC to the server does not work -> need to sleep. will come back tomorrow :)
Я подключен к экземпляру Ubuntu через SSH, используя закрытый ключ.
Прежняя проблема:
При попытке подключения из окон с помощью Navicat к MYSQL, запущенному на моем экземпляре AWS, я получаю следующую ошибку:
Не удается подключиться к серверу Mysql на «41,42,434,169» (10061 «Неизвестная ошибка») -> указанный здесь IP не мой
Имя хоста / IP-адрес, который я использую, является публичным IP-адресом моего экземпляра AWS.
Это было исправлено, комментируя # bind-address = 127.0.0.1
в my.cnf
Теперь телнет с моего ПК работает
РЕДАКТИРОВАТЬ
Теперь я получаю следующую ошибку:
Доступ запрещен для пользователя blog@myIPprovider.com (используется пароль: ДА)
Для удаленного доступа:
Проверка etc\mysql\my.cnf, чтобы видеть, что связывание адресного не установлено на 127.0.0.1. Или набор это к 0.0.0.0, или, чтобы быть более безопасным, добавляет Ваш IP-адрес:
bind-address = 127.0.0.1
bind-address = your_public_ip
Создают пользователя в mysql таблице:
CREATE USER 'non-root-user'@'localhost' IDENTIFIED BY 'any_password_u_like';
CREATE USER 'non-root-user'@'%' IDENTIFIED BY 'any_password_u_like';
GRANT ALL ON *.* TO 'non-root-user'@'localhost';
GRANT ALL ON *.* TO 'non-root-user'@'%';
AWS КОНКРЕТНЫЙ
Удостоверяются, что у Вас есть входящее правило для порта 3306