Apache2를 통해 연결하는 동안에만 원격 MySqli Connection 시간 초과
Ubuntu 18.04 Apache EC2 Machine/Server - 172.2.27.1에서 mysqli가 MariaDB Server - 172.2.27.2(원격 mysqli 서버)에 연결되지 않지만 로컬 호스트(현재 172.2.27.1 Machine에도 MariaDB가 설치되어 있으므로 172.2.27에 대한 원격 연결)를 통해 연결됩니다.2가 터미널을 통해 구축 중입니다.
mysql -h 172.2.27.2 -u test -p
(172.2.27.1 기계의 경우)
정확한 문제가 무엇인지 알 수 없습니다.가능한 모든 위치를 디버깅해 보았지만 찾을 수 없었습니다.
Apache에 연결하는 동안 다음 오류가 발생합니다.
Object
(
[affected_rows] =>
[client_info] =>
[client_version] => 50012
[connect_errno] => 2002
[connect_error] => Connection timed out
[errno] =>
[error] =>
[error_list] =>
[field_count] =>
[host_info] =>
[info] =>
[insert_id] =>
[server_info] =>
[server_version] =>
[stat] =>
[sqlstate] =>
[protocol_version] =>
[thread_id] =>
[warning_count] =>
)
PS: 컴퓨터나 EC2 인스턴스에서 방화벽 규칙 문제가 발생하지 않습니다.저는 그것을 이미 확인했습니다.인터넷 상의 원격 MariaDB 서버에 연결하기 위해 사용 가능한 모든 코드는 동일한 결과를 제공합니다.코드 문제가 아니라 아파치 확장 문제나 PHP 문제일 수도 있습니다.서버 172.2.27.1은 인터넷 상의 다른 MariaDB 서버에 연결할 수 없습니다.다른 건 아니고 로컬 호스트에서만 작동합니다.
방화벽 규칙이 연결을 차단하고 있을 가능성이 높습니다. (연결 시간 초과)
확인.Security groups
Mysql/MariaDB 인스턴스에 할당되어 있는지 확인합니다.Mysql port (3306)
MariaDB 설정에 적절하게 허용되어 있습니다.inbound
로부터의 연줄172.2.27.2
구체적으로, 또는 전체 서브넷에서.
원격 주소에 대한 DB를 구성하지 않은 것 같습니다.set my.cnf
[mysqld]
skip-networking=0
skip-bind-address
그런 다음 mysql.user를 설정합니다.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.2.27.%'
IDENTIFIED BY 'password' WITH GRANT OPTION;
이후 모든 프로세스 다시 시작참조를 위해 이 내용을 살펴봅니다. https://mariadb.com/kb/en/configuring-mariadb-for-remote-client-access/
언급URL : https://stackoverflow.com/questions/63975567/remote-mysqli-connection-timeout-only-while-connecting-via-apache2
'programing' 카테고리의 다른 글
내가 파워셸인지 cmd인지 어떻게 판단합니까? (0) | 2023.10.27 |
---|---|
트래비스가 도커 컨테이너를 구축하는 동안 phpunit 테스트를 실행하려면 어떻게 해야 합니까? (0) | 2023.10.27 |
"pre_option_upload_url_path" WordPress 4.7에서 필터가 더 이상 점화되지 않습니다. (0) | 2023.10.27 |
AngularJs 유닛 테스트 메모리 누수 (0) | 2023.10.27 |
이벤트가 사람에 의해 트리거되었는지 확인합니다. (0) | 2023.10.27 |