MySQL 대용량 데이터 업로드 / 다운로드

2024. 11. 5. 10:14·MySQL
728x90

MySQL 대용량 데이터 업로드

INSERT INTO movietbl
 VALUES(1, '쉰들러 리스트', '스필버그', '리암 니슨',
    LOAD_FILE('C:/SQL/movies/Schindler.txt'),
    LOAD_FILE('C:/SQL/movies/Schindler.mp4'));
  • LOAD_FILE(PATH) : 해당 경로의 파일을 업로드

문제 상황

LONGTEXT, LONGBLOB의 대용량 데이터 INSERT 시 NULL 값 발생

원인

  1. ** LONGTEXT, LONGBLOG의 MAX 값 조정 필요**
    => max_allowed_packet
    SHOW VARIABLES LIKE 'max_allowed_packet' 로 원래 값 확인 가능

  2. ** LOAD_FILE(PATH) 사용시 해당 경로를 보안 폴더로 지정 필요**
    => secure-file-priv
    SHOW VARIABLES LIKE 'secure-file-priv' 로 원래 값 확인 가능

해결 방안

  1. cmd를 관리자 모드로 실행
  2. C:\ProgramData\MySQL\MySQL Server 8.0로 이동
  3. notepad my.ini로 파일을 열어서 두 설정 값을 수정

1. max_allowed_packet 조정

max_allowed_packet의 값을 파일이 들어갈만큼 큰 값으로 수정

2. secure-file-priv에 경로 추가

업로드하려는 파일이 있는 경로를 추가
secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads" 아랫줄에
secure-file-priv="경로" 를 추가.

이후 my.ini를 저장하고 닫기

MySQL 재시작

cmd에서 NET STOP MySQL을 입력해 MySQL을 종료
종료가 완료되면 NET START MySQL을 입력해 MySQL을 재시작

이제 my.ini에 설정한 내용이 MySQL에 적용된다.

MySQL 대용량 데이터 다운로드

  • txt : OUTFILE
  • mp4 : DUMPFILE

txt 파일

SELECT ~ INTO OUTFILE 'PATH' 명령어 사용

SELECT movie_script from movietbl where movie_id = 1
 INTO OUTFILE 'C:/SQL/movies/Schindler_out.text'
 LINES TERMINATED BY '\\n'; -- 필수

mp4 파일

SELECT ~ INTO DUMPFILE 'PATH' 명령어 사용

SELECT movie_film from movietbl where movie_id = 3
 INTO DUMPFILE 'C:/SQL/movies/Mohican_out.mp4';
728x90

'MySQL' 카테고리의 다른 글

MySQL SQL 프로그래밍(스토어드 프로그램)  (0) 2024.11.05
MySQL Pivot, JSON  (0) 2024.11.05
MySQL 명령어 정리 (5) - MySQL 내장함수  (0) 2024.11.05
INSERT 중복키 문제 처리  (0) 2024.11.05
MySQL 명령어 정리 (4) 시스템 변수, AUTO_INCREMENT, 형변환  (0) 2024.11.05
'MySQL' 카테고리의 다른 글
  • MySQL SQL 프로그래밍(스토어드 프로그램)
  • MySQL Pivot, JSON
  • MySQL 명령어 정리 (5) - MySQL 내장함수
  • INSERT 중복키 문제 처리
suhsein
suhsein
티끌모아 태산
  • suhsein
    기억 못 할 거면 기록이라는 좋은 수단이 있다
    suhsein
  • 전체
    오늘
    어제
    • 분류 전체보기
      • ASAC
      • Next.js
      • Docker
      • MySQL
      • Java
      • Spring-Proxy, AOP
      • Spring Boot, JPA
      • Spring Security
      • DB
      • 알고리즘
      • PS
      • TOPCIT
      • AWS 자격증
      • 비공개
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • 안녕하세요
  • 인기 글

  • 태그

    Alias
    tsp
    포인터
    해시
    오블완
    외판원순회
    티스토리챌린지
    동적프로그래밍
    DP
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
suhsein
MySQL 대용량 데이터 업로드 / 다운로드
상단으로

티스토리툴바