![MySQL은 포트 3306에서 수신 대기하지 않습니다.](https://rvso.com/image/747363/MySQL%EC%9D%80%20%ED%8F%AC%ED%8A%B8%203306%EC%97%90%EC%84%9C%20%EC%88%98%EC%8B%A0%20%EB%8C%80%EA%B8%B0%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
MySQL에 문제가 있습니다. 로컬에서(웹 phpmyadmin을 통해) 액세스할 수 있지만 원격 컴퓨터에서는 액세스할 수 없습니다.
구성:
- 운영체제: CentOS7
- MySQL: MySQL 커뮤니티 8
서비스에 대한 포트가 방화벽에서 열려 있습니다. 이 명령을 통해 확인할 수 있습니다.
또한 MySQL에는 두 명의 사용자가 있습니다(호스트가 localhost인 사용자와 호스트가 %인 사용자).
하지만 다른 네트워크에서 포트를 확인할 때. 접근할 수 없어요
제가 잊어버린 게 있나요? 아니면 제가 실수한 걸까요? 어떤 도움이라도 매우 감사하겠습니다
답변1
/etc/my.cnf
일반적으로 파일(CentOS 7의 위치)을 편집 하고 다음과 같이 변경합니다.
- 다음 줄을 추가하세요.
bind-address = 0.0.0.0
- 앞에
skip-networking
를 배치하여 해당 행을 주석 처리합니다 .#
즉:
[mysqld]
bind-address = 0.0.0.0
# skip-networking
첫 번째 줄은 이것이 MySql 데몬용임을 정의합니다. 두 번째 줄은 MySql이 네트워크 인터페이스에 바인딩하도록 지시하며 0.0.0.0
이는 모든 인터페이스를 의미합니다. 세 번째 줄은 MySql에 네트워킹 구성 루틴을 건너뛰지 말라고 지시합니다.
다른 배포판에는 다른 폴더 위치에 MySQL 구성 파일이 있을 수 있습니다.
답변2
방화벽이 열려 있는지 확인하십시오. 이것이 당신을 붙잡을 수 있습니다.
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
이렇게 하면 포트 3306이 서버에 열려 있는지 확인하고 MySQL에 대한 연결을 허용합니다.
업데이트: 포트가 열려있는 부분은 못봤습니다. 이 응답 취소