MySQL의 LOAD DATA INFILE에 대한 액세스 거부
MySQL에서 LOAD DATA INFILE 문을 사용하면 다음과 같은 액세스 거부 오류가 발생할 수 있습니다. "#1045 - 'user'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES)."
이 오류는 일반적으로 쿼리를 실행하는 현재 사용자에게 데이터를 로드할 충분한 권한이 없음을 나타냅니다. 테이블에 파일을 넣습니다. 이 문제를 해결하려면 해당 사용자에게 필요한 권한이 있는지 확인하세요.
특히 해당 사용자에게 FILE 권한이 부여되어야 합니다. 이 권한을 통해 사용자는 서버의 파일 시스템에서 파일을 읽을 수 있습니다. 이 권한이 없으면 사용자는 지정된 파일에 액세스할 수 없습니다.
사용자에게 FILE 권한을 부여하려면 다음 쿼리를 실행하십시오.
<code class="sql">GRANT FILE ON *.* TO user_name;</code>
user_name을 사용자 이름으로 바꾸십시오. 권한을 부여하려는 사용자의
또한 LOAD DATA INFILE 문에 LOCAL 키워드를 추가하는 것을 고려하세요. LOCAL 키워드는 MySQL에게 서버의 파일 시스템 대신 클라이언트 시스템에서 파일을 읽도록 지시합니다. 경우에 따라 이는 더 효율적이고 안전할 수 있습니다.
다음은 LOCAL을 사용하여 수정된 문의 예입니다.
<code class="sql">LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;</code>
위 내용은 MySQL에서 LOAD DATA INFILE을 사용할 때 \'액세스 거부\'가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!