본문 바로가기
IT/Tip

[MySQL] Shell 에서 쿼리 결과를 CSV 파일로 저장

by 여우요원 2022. 5. 11.

 

DB에 쿼리를 할 때 보통은 DB 클라이언트 프로그램을 사용한다. Workbench, DBeaver 와 같은..

그러면 해당 툴에서는 쿼리의 결과를 쉽게 csv 파일로 저장을 할 수 있다. 

 

하지만, 경우에 따라서 위 처럼 툴(tool)에서 쿼리 결과를 받을 수 없는 경우가 있을 수 있는데

이때는 Shell 에서 명령어로 그 결과를 CSV 로 저장할 수 있다. 아래와 같이...

 

 

mysql -u"계정명" -p "DB명" < "쿼리가 저장된 파일명" | sed 's/\t/","/g;s/^/"/;s/$/"/;' > "결과파일명"

$ mysql -uroot -p test_db < aa.sql | sed 's/\t/","/g;s/^/"/;s/$/"/;' > result.csv

 

각 항목마다 " " 로 감싸지 않을 경우는 아래와 같이 심플하게 할 수 도 있다.

$ mysql -uroot -p test_db < aa.sql | tr '\t' ',' > result.csv