>데이터 베이스 >MySQL 튜토리얼 >와일드카드 호스트 이름을 사용해도 MySQL 서버에 원격으로 연결할 수 없는 이유는 무엇입니까?

와일드카드 호스트 이름을 사용해도 MySQL 서버에 원격으로 연결할 수 없는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-08 00:46:12190검색

Why Can't I Connect to My MySQL Server Remotely Even with a Wildcard Hostname?

MySQL 원격 연결: 액세스 거부 문제 해결

문제 설명:

와일드카드를 사용하여 사용자를 생성했습니다. 호스트 이름('%')을 사용하여 원격으로 연결할 수 없습니다. user.

설명:

와일드카드 호스트 이름을 사용하여 사용자를 생성하면 모든 호스트에서의 연결이 허용되지만 MySQL에서 추가 구성이 필요합니다. server.

해결책:

  1. MySQL 바인딩 구성:

    MySQL 구성 파일을 편집합니다( my.cnf(Linux), my.ini(Windows))에 다음 줄을 추가하여 포트 3306을 바인딩합니다. 컴퓨터의 IP 주소:

    bind-address = xxx.xxx.xxx.xxx
  2. 'localhost'와 '%'를 모두 사용하여 사용자 생성 호스트:

    두 가지를 모두 사용하여 사용자 생성 'localhost' 및 '%' 호스트 이름:

    CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
    CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
  3. 권한 부여:

    로컬 호스트와 와일드카드 모두에 대해 모든 데이터베이스에 대한 권한 부여 호스트 이름:

    GRANT ALL ON *.* TO 'myuser'@'localhost';
    GRANT ALL ON *.* TO 'myuser'@'%';
  4. 권한 플러시 및 포트 열기:

    변경 사항을 적용하려면 권한 플러시:

    FLUSH PRIVILEGES;

    운영 체제에 따라 방화벽에서 포트 3306을 열어야 할 수도 있습니다. 원격 연결을 허용합니다.

위 내용은 와일드카드 호스트 이름을 사용해도 MySQL 서버에 원격으로 연결할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.