집 >데이터 베이스 >MySQL 튜토리얼 >'%' 와일드카드를 사용하여 MySQL에 원격으로 연결할 수 없는 이유는 무엇입니까?
질문:
MySQL 데이터베이스에 원격으로 연결을 시도하는 경우 'user@'%' 계정을 사용하면 'user@'localhost'를 사용하여 성공적으로 연결되었음에도 불구하고 연결 문제가 발생합니다. '%'가 모든 호스트로부터의 연결을 허용하지 않는 이유는 무엇입니까?
답변:
원격 연결을 설정하려면 다음 단계를 따르십시오.
1. MySQL 바인드 주소 구성:
my.cnf(Windows의 경우 my.ini) 파일을 편집하고 바인드 주소 매개변수를 시스템의 IP 주소로 설정합니다.
bind-address = xxx.xxx.xxx.xxx
2. 와일드카드 사용자 생성 및 권한 부여:
다음 명령을 실행합니다:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass'; CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
GRANT ALL ON *.* TO 'myuser'@'localhost'; GRANT ALL ON *.* TO 'myuser'@'%';
FLUSH PRIVILEGES;
3. 원격 연결 포트 열기:
운영 체제에 따라 원격 연결을 허용하려면 포트 3306을 열어야 할 수도 있습니다.
설명:
'%'는 모든 호스트의 연결을 허용합니다. 그러나 원격 연결의 경우 MySQL은 적절한 IP 주소에 바인딩되도록 구성되어야 합니다. 또한 모든 데이터베이스에 대해 부여된 'localhost' 및 '%' 와일드카드 권한을 모두 사용하여 사용자를 생성해야 합니다.
위 내용은 '%' 와일드카드를 사용하여 MySQL에 원격으로 연결할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!