웹사이트 검색

오류 1130(HY000) 수정 방법: 호스트가 이 MySQL 서버에 연결할 수 없습니다.


이 빠른 기사에서는 Linux 시스템에서 MySQL/MariaDB 데이터베이스 배포 시 발생하는 "ERROR 1130 (HY000): Host x.x.x.x is not allowed to connect to this MySQL server " 오류를 해결하는 방법을 알아봅니다. 이는 사용자가 직면하는 일반적인 원격 데이터베이스 연결 오류 중 하나입니다.

테스트 환경:

  • 애플리케이션 서버 IP: 10.24.96.5
  • 데이터베이스 서버 IP: 10.24.96.6

표시된 대로 mysql 클라이언트를 사용하여 앱 서버 중 하나에서 데이터베이스 서버로의 데이터베이스 연결을 테스트하는 동안 오류가 발생했습니다.

mysql -u database_username -p -h 10.24.96.6

이 오류는 데이터베이스 사용자가 연결하는 호스트 10.24.96.5MySQL 서버에 연결할 수 없음을 나타냅니다. 이 경우 사용자가 원격으로 연결할 수 있도록 데이터베이스 서버를 일부 변경해야 합니다.

데이터베이스 서버에서 위의 사용자가 연결이 허용된 호스트를 확인해야 합니다.

mysql -u root -p

다음 SQL 명령을 실행하여 사용자의 호스트를 확인하십시오.

MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

명령 출력에 따르면 사용자는 localhost에서만 데이터베이스 서버에 연결할 수 있습니다. 따라서 다음과 같이 사용자의 호스트를 업데이트해야 합니다.

원격 호스트에서 원격 사용자가 MySQL 액세스를 활성화하려면 다음 GRANT 명령을 실행하세요. "10.24.96.6"을 원격 시스템의 IP 주소로 바꾸고 "database_password"를 원하는 비밀번호 "database_username "으로 바꾸세요. ”를 사용하려면:

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.5' IDENTIFIED BY 'database_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> SELECT host FROM mysql.user WHERE user = "database_username";

사용자에게 네트워크의 모든 호스트에서 원격 액세스를 제공하려면 아래 구문을 사용하십시오.

MariaDB [(none)]> GRANT ALL ON database_name.* to 'database_username'@'10.24.96.%' IDENTIFIED BY 'database_password';

위와 같이 변경한 후 다시 한 번 MySQL 데이터베이스 서버에 원격으로 연결해 보십시오. 다음 스크린샷과 같이 연결이 성공해야 합니다.

mysql -u database_username -p -h 10.24.96.6

이 솔루션이 Mysql 원격 연결 오류를 해결하는 데 도움이 되기를 바랍니다. 문의사항이 있는 경우 아래 피드백 양식을 통해 문의해 주세요.