기타

mysql에 csv파일 덤프

닥치고개돌 2021. 8. 4. 20:27
728x90

누군가에게 도움이 되길...

 

 

#shellscript로 csv -> mysql에 인서트

 

# oracle csv로 출력해서 위에 찌꺼기 찾아내서 컬럼으로 변경

#heading off 나 echo off 가 안먹어서 find명령어로 찾아 지워줌.

# 버젼에 따라 csv모드가 안돼서 문자열로 csv만들어줌  SELECT COL1||','||COL2||','||COL3 from TABLE;


find ${LOCAL_PATH}/sql/ -name "user.txt" -exec sed -i 's/SQL> SELECT COL1||','||COL2||','||COL3 from TABLE;/CHANGE1,CHANGE2,CHANGE3/' {} \;

 

#오라클 인코딩 변경할 수 없어 파일을 euc -> utf로 변경

iconv -c -f EUC-KR -t UTF-8 ${LOCAL_PATH}/sql/user.txt > ${LOCAL_PATH}/sql/user_utf.txt


mysql -u$OFFICE_DB_ID -p$OFFICE_DB_PW -h$OFFICE_DB_IP --port $OFFICE_DB_PORT --default-character-set=utf8 $DBNAME --local-infile -e "LOAD DATA LOCAL INFILE '${LOCAL_PATH}/sql/user_utf.txt' INTO TABLE USERS FIELDS TERMINATED BY ',' ENCLOSED BY '' LINES TERMINATED BY '\n';"

728x90

'기타' 카테고리의 다른 글

과제테스트 회고  (0) 2024.03.19
성능최적화(작성중)  (0) 2022.05.03
Mysql limit 사용법  (0) 2021.07.09
SSL(Secure Socket Layer)이란?  (4) 2020.09.03
MX 레코드란?  (0) 2020.08.31