Ubuntu 14.04를 실행하는 Amazon AWS EC2 인스턴스가 있습니다. MYSQL 5.5를 설치했습니다.
Navicat을 실행하는 로컬 Windows10 머신에서이 인스턴스에서 실행중인 MYSQL에 연결하려고합니다.
환경 상태 :
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 :)
개인 키를 사용하여 SSH를 통해 Ubuntu 인스턴스에 연결되어 있습니다.
전자 문제 :
Navicat 을 사용하여 Windows에서 AWS 인스턴스에서 실행중인 MYSQL 로 연결하려고 하면 다음 오류가 발생합니다.
'41 .42.434.169 '(10061 "알 수없는 오류")에서 Mysql 서버에 연결할 수 없습니다 .-> 여기에 명시된 IP가 내 것이 아닙니다.
내가 사용하는 호스트 이름 / IP 주소는 내 AWS 인스턴스의 퍼블릭 IP입니다.
이것은 # bind-address = 127.0.0.1
my.cnf 에 주석을 달아 해결 되었습니다.
이제 내 PC의 텔넷이 작동합니다.
편집하다
이제 다음 오류가 발생합니다.
사용자 [email protected]에 대한 액세스가 거부되었습니다 (비밀번호 사용 : YES).
원격 액세스의 경우 :
etc \ mysql \ my.cnf를 확인하여 bind-address가 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에 대한 인바운드 규칙이 있는지 확인
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다