PHP 서버가 원격 MySQL 서버에 연결할 수 없습니다

PHP 서버가 원격 MySQL 서버에 연결할 수 없습니다

우리는 두 개의 서버를 가지고 있습니다.

서버 1과 서버 2

Directadmin/CentOS6을 사용하여 실행 중입니다.

내 계획:

  • 서버 1은 PHP와 HTML, 이미지 등을 실행 중입니다.
  • 서버 2는 mysql과 phpmyadmin을 실행 중입니다.

모두 directadmin을 사용하여 설정됩니다.

서버 2의 mysql은 포트 4415에서 수신 대기 중입니다. 서버 1과 서버 2 방화벽에서 포트 4415를 활성화했습니다.

시험:

  1. 서버 2에 데이터베이스를 생성하고 directadmin에 "액세스 호스트"를 생성합니다.
  2. mysql(server2)에 연결하기 위해 server1에 PHP 파일을 업로드했습니다.

속도가 매우 느리고 다음 오류가 발생합니다.

'123.123.123.123'(4)에서 MySQL 서버에 연결할 수 없습니다.

"mysql workbench"(내 컴퓨터)에서 mysql(server2)에 연결하면 매우 빠르고 작동합니다!

어떡해? 나는 그것들을 모두 테스트했습니다.

답변1

mysql에 사용자를 추가하는 방법은 다음과 같다.

user@server1

이것이 MySQL이 연결을 삭제한 사용자의 기록을 얻는 방법입니다. 그리고 이 사용자가 PHP 애플리케이션에서 사용하는 데이터베이스를 관리하도록 허용합니다.

다음 명령을 사용하여 MySQL에서 사용자를 생성합니다.

CREATE USER 'user'@'server1' IDENTIFIED BY 'password';

다음 명령을 사용하여 사용자에게 권한을 부여할 수 있습니다.

GRANT ALL PRIVILEGES ON database.* TO 'user'@'server1';

여기서 "database"는 데이터베이스 이름입니다.

관련 정보