"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > MySQL에서 LOAD DATA INFILE을 사용할 때 \"액세스 거부\"가 발생하는 이유는 무엇입니까?

MySQL에서 LOAD DATA INFILE을 사용할 때 \"액세스 거부\"가 발생하는 이유는 무엇입니까?

2024-11-04에 게시됨
검색:293

Why Am I Getting \

MySQL의 LOAD DATA INFILE에 대한 액세스 거부

MySQL에서 LOAD DATA INFILE 문을 사용하면 다음과 같은 액세스 거부 오류가 발생할 수 있습니다. "#1045 - 'user'@'localhost' 사용자에 대한 액세스가 거부되었습니다(비밀번호 사용: YES)."

이 오류는 일반적으로 쿼리를 실행하는 현재 사용자에게 데이터를 로드할 충분한 권한이 없음을 나타냅니다. 테이블에 파일을 넣습니다. 이 문제를 해결하려면 사용자에게 필요한 권한이 있는지 확인하십시오.

특히 사용자에게 FILE 권한이 부여되어야 합니다. 이 권한을 통해 사용자는 서버의 파일 시스템에서 파일을 읽을 수 있습니다. 이 권한이 없으면 사용자는 지정된 파일에 액세스할 수 없습니다.

사용자에게 FILE 권한을 부여하려면 다음 쿼리를 실행합니다:

GRANT FILE ON *.* TO user_name;

user_name을 권한을 부여하려는 사용자의 사용자 이름으로 바꾸십시오.

또한 LOAD DATA INFILE 문에 LOCAL 키워드를 추가하는 것을 고려하십시오. LOCAL 키워드는 MySQL에게 서버의 파일 시스템 대신 클라이언트 시스템에서 파일을 읽도록 지시합니다. 이는 경우에 따라 더 효율적이고 안전할 수 있습니다.

다음은 LOCAL을 사용하는 수정된 문의 예입니다.

LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3