"액세스 거부: 사용자 @ 'localhost'의 데이터베이스에 대한 잘못된 액세스 해결"`
MySQL 사용자는 종종 실망스러운 오류 메시지를 접하게 됩니다. 사용자 ''@'localhost'의 데이터베이스 ''에 대한 액세스가 거부되었습니다." 이 문제는 잘못된 사용자 권한 또는 구성 설정으로 인해 발생합니다. 이 문제를 해결하려면 다음 단계를 따르십시오.
-
사용자 자격 증명 확인:
- $dbuser 변수에 MySQL 사용자가 지정되어 있는지 확인하세요. 존재합니다.
- 사용자에게 $dbname에 지정된 데이터베이스에 대한 적절한 액세스 권한이 있는지 확인하십시오.
-
사용자 권한 부여:
- 다음 SQL 명령을 사용하여 필요한 권한을 부여합니다.
GRANT ALL PRIVILEGES ON Database_name.* TO user_name@host_name;
- "database_name"을 실제 데이터베이스 이름으로 바꾸고 " user_name"을 $dbuser에 지정된 사용자로 바꿉니다.
- 로컬 컴퓨터에서 액세스 권한을 부여하려면 "host_name"을 "localhost"로 지정합니다.
-
MySQL 바인드 주소 구성:
- MySQL 구성 파일(일반적으로 my.cnf라는 이름)에서 "bind-address" 설정을 확인하고 모든 호스트의 연결을 허용하도록 수정합니다.
바인딩 주소 = 0.0.0.0
- 변경 사항을 적용하려면 MySQL 서비스를 다시 시작하세요.
-
업데이트 코드:
- mysql_connect() 함수에 사용자 이름과 비밀번호를 모두 포함하도록 PHP 코드를 수정하세요.
mysql_connect($dbhost, $dbuser, $dbpass) 또는 die(mysql_error());
-
원격 액세스 활성화(필요한 경우):
- 원격 호스트로부터의 액세스를 허용하려면 MySQL 서버가 포트에서 수신 대기하는지 확인하세요. 3306이며 방화벽 규칙은 해당 포트에 대한 연결을 허용하도록 구성되어 있습니다.
위 내용은 사용자 \'\'@\'localhost\'의 데이터베이스에 대한 \"액세스 거부\"가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!