MySQL 5.7에서 secure-file-priv가 작동하고 파일을 저장할 수없는 경우의 해결 방법 (windows 환경)

2575 단어 MySQLmysql5.7
MySQL 5.7 데이터를 CSV 파일 등에 저장하고 싶을 때 "The MySQL server is running with the --secure-file-priv option so it cannot execute this statement"라고 나와 파일 저장할 수 없는 경우의 대처법
(Windows 환경을 예로 설명합니다)

테이블 내용을 파일로 내보내기



test 테이블의 내용을 c:/temp/test.txt 에 저장하려고 하면,
mysql> SELECT * FROM test INTO OUTFILE 'c:/temp/test.txt';

다음과 같은 메시지가 나오고 파일 출력에 실패했을 때의 조치
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

my.ini를 열고 secure-file-priv를 비활성화합니다.



my.ini는 기본 설치 상태입니다.
C:\ProgramData\MySQL\MySQL Server 5.7에 있다.



다음과 같이 my.ini를 편집하여 secure-file-priv=""



MySQL 재부팅



우선, 전제로서 MySQL 5.7이 Windows 서비스로서 기동하고 있는 환경을 상정

1. 관리자 권한으로 명령 프롬프트를 시작합니다.

2. MySQL 5.7 bin 폴더로 이동
cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"

3. MySQL 5.7 shutdown

(루트 비밀번호는 "password"라고 가정합니다)
mysqladmin -u root shutdown -ppassword

이렇게하면 MySQL 서비스도 STOPPED 상태가됩니다.

4. MySQL 5.7 시작

MySQL 서비스 시작
NET START MYSQL57

실행 결과


테이블 내용을 파일로 내보내기(재시도)


mysql> SELECT * FROM exchange INTO OUTFILE 'c:/temp/test.txt';
Query OK, 86 rows affected (0.00 sec)

이번에는 무사히 성공!

좋은 웹페이지 즐겨찾기