티스토리 뷰

목차


    데이터 분석가 취업을 위한 포트폴리오를 만들거나 개인 토이 프로젝트를 진행할 때, 가장 먼저 방문하게 되는 곳이 바로 '공공데이터포털'입니다. 이곳에서는 전국의 교통, 상권, 부동산, 날씨 등 무궁무진하고 가치 있는 진짜 실무 데이터를 무료로 제공합니다. 하지만 엑셀(Excel)이나 CSV 형태로 다운로드받은 수만 건의 방대한 데이터를 눈으로만 훑어볼 수는 없습니다. SQL을 활용해 데이터를 자유자재로 추출하고 의미 있는 인사이트를 도출하기 위해서는, 내 컴퓨터에 설치된 데이터베이스(MySQL, Oracle 등) 안으로 이 파일들을 밀어 넣는 작업이 선행되어야 합니다. 이 과정을 IT 실무 용어로 '임포트(Import)'라고 부릅니다. 얼핏 들으면 파일 열기처럼 아주 간단해 보이지만, 초보자들은 엑셀 파일을 DB에 넣는 이 첫 단계에서부터 글자가 외계어로 깨지거나 데이터 크기가 맞지 않아 발생하는 수많은 에러 메시지를 마주하고 멘탈이 붕괴되곤 합니다. 오늘은 복잡한 코딩이나 명령어 입력 없이, 우리가 설치한 워크벤치(Workbench)나 DBeaver 같은 그래픽 툴(GUI)을 활용하여 마우스 클릭 몇 번만으로 공공데이터 CSV 파일을 DB에 완벽하고 깔끔하게 밀어 넣는 실전 임포트 방법을 상세히 안내해 드립니다. 데이터 분석 마스터를 향한 첫 단추를 완벽하게 꿰어 보세요.

     

     

     

     

     

    1. DB에 넣기 전 필수 작업: 엑셀(CSV) 파일 전처리하기

    공공데이터포털에서 다운로드받은 CSV 파일을 데이터베이스에 무작정 밀어 넣으면 십중팔구 에러가 발생합니다. 데이터베이스는 엑셀보다 훨씬 엄격한 규칙을 요구하기 때문입니다. 따라서 임포트 전, 엑셀 프로그램을 열어 데이터를 가볍게 '전처리(Pre-processing)'해 주는 과정이 필수적입니다. 첫째, 엑셀의 1행에 있는 '컬럼명(열 이름)'을 정리해야 합니다. 한글로 된 컬럼명이나 띄어쓰기, 특수문자가 포함되어 있다면 DB가 인식하지 못할 수 있으므로 'store_name', 'address'처럼 직관적인 영문 소문자와 언더바(_)의 조합으로 변경해 주는 것이 좋습니다. 둘째, 데이터베이스에 들어갈 필요가 없는 불필요한 열이나 텅 빈 행이 있다면 미리 삭제하여 용량을 가볍게 만들어 줍니다. 마지막으로 가장 중요한 것은 저장 방식입니다. [다른 이름으로 저장]을 누른 뒤, 파일 형식을 반드시 **'CSV UTF-8 (쉼표로 분리)'**로 선택하여 저장해야만 추후 DB에 들어갔을 때 한글 데이터가 네모 박스나 물음표로 깨지는 끔찍한 대참사를 미연에 방지할 수 있습니다.

     

    요약: 임포트 에러를 막기 위해 엑셀 1행의 컬럼명을 영문과 언더바로 수정하고, 파일 저장 시 인코딩 형식을 반드시 'CSV UTF-8'로 선택해야 합니다.

     

    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드
    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드

     

     

    2. MySQL 워크벤치(Workbench)를 활용한 마우스 클릭 임포트

    전처리가 끝났다면 MySQL의 공식 툴인 워크벤치를 활용해 데이터를 넣어보겠습니다. 워크벤치를 실행하고 좌측 'SCHEMAS(데이터베이스 목록)' 창에서 데이터를 집어넣을 데이터베이스(스키마) 이름을 마우스 우클릭합니다. 메뉴 중 **'Table Data Import Wizard(테이블 데이터 가져오기 마법사)'**를 클릭하면 파일 선택 창이 열립니다. 여기서 앞서 예쁘게 다듬어둔 CSV 파일을 선택하고 'Next'를 누릅니다. 다음 화면에서는 'Create new table(새 테이블 생성)'을 선택하여 파일 이름으로 새로운 테이블을 만들 것인지, 아니면 이미 만들어둔 기존 테이블에 데이터를 밀어 넣을 것인지 결정합니다. 보통은 새 테이블 생성이 훨씬 편리합니다. 이후 엑셀의 각 열이 DB의 어떤 데이터 타입(INT, 텍스트, 날짜 등)으로 들어갈지 결정하는 매핑(Mapping) 화면이 나오는데, 워크벤치가 파일 내용을 분석해 자동으로 타입을 추천해 주므로 가볍게 확인한 뒤 'Next'를 끝까지 눌러주면 수만 건의 데이터가 순식간에 내 DB 테이블 안으로 쏙 들어갑니다.

     

    요약: 워크벤치 좌측 스키마에서 우클릭 후 'Table Data Import Wizard'를 실행하면, 복잡한 쿼리 없이 클릭 몇 번으로 새 테이블을 생성하고 데이터를 넣을 수 있습니다.

     

     

     

     

    3. 최강의 호환성, DBeaver에서 데이터 가져오기 (Data Transfer)

    만약 오라클이나 PostgreSQL 등 다른 DB를 사용 중이거나 범용 툴인 DBeaver(디비버)를 사용하고 있다면, 임포트 과정은 더욱 직관적이고 쾌적합니다. DBeaver 좌측 데이터베이스 내비게이터에서 'Tables(테이블)' 폴더를 우클릭하고 **'데이터 가져오기(Import Data)'** 메뉴를 선택합니다. 소스 포맷을 'CSV'로 선택하고 다음으로 넘어가 전처리한 파일을 불러옵니다. DBeaver의 가장 강력한 점은 바로 '컬럼 매핑(Column Mapping)' 기능입니다. 엑셀의 열 이름과 DB 테이블의 컬럼 이름이 살짝 다르더라도, 사용자가 드롭다운 메뉴를 통해 수동으로 짝을 지어줄 수 있습니다. 또한 데이터에 쉼표(,)나 따옴표(")가 포함되어 있어 열 구분이 망가지는 것을 막기 위해 '구분자(Delimiter)' 옵션을 상세하게 조절할 수 있습니다. 모든 설정을 마치고 '진행(Proceed)' 버튼을 누르면, 백그라운드 작업 탭에서 실시간으로 데이터가 들어가는 속도와 남은 시간을 애니메이션으로 친절하게 보여줍니다.

     

    요약: DBeaver의 '데이터 가져오기' 기능을 사용하면 직관적인 컬럼 매핑과 상세한 구분자 설정이 가능하여, 복잡한 형태의 CSV 파일도 안전하게 임포트 할 수 있습니다.

     

    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드
    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드

     

     

    4. 임포트 실패의 주범: Data Truncation(길이 초과) 오류 해결법

    데이터를 밀어 넣다 보면 팝업창에 붉은색 글씨로 **'Data truncated for column'** 혹은 **'Data too long'**이라는 치명적인 에러 메시지가 뜨면서 작업이 중단되는 경우가 대단히 많습니다. 이는 데이터베이스가 허용하는 '그릇의 크기'보다 엑셀에 적힌 '글자의 길이'가 더 길어서 넘쳐버렸다는 뜻입니다. 예를 들어 DB 테이블을 만들 때 가게 주소가 들어갈 컬럼의 데이터 타입을 'VARCHAR(50)'으로 설정해 두었는데, 실제 엑셀 데이터 안에는 50자를 초과하는 아주 긴 도로명 주소가 포함되어 있을 때 발생하는 오류입니다. 이 문제를 해결하려면 임포트 작업을 잠시 멈추고, 에러가 발생한 컬럼의 데이터 타입을 `VARCHAR(255)`나 `TEXT`와 같이 넉넉하고 아주 큰 사이즈로 수정한 뒤 다시 임포트를 시도해야 합니다. 혹은 툴의 임포트 마법사 설정에서 에러가 발생한 행은 무시하고(Skip) 나머지 데이터만 계속 집어넣도록 옵션을 체크하는 것도 임시방편이 될 수 있습니다.

     

    요약: 데이터 길이가 테이블 설정값보다 커서 발생하는 'Data too long' 에러는, 해당 컬럼의 데이터 타입(VARCHAR) 크기를 넉넉하게 늘려주면 완벽히 해결됩니다.

     

     

     

     

    5. 데이터를 품은 DB, 나만의 분석 포트폴리오 쿼리 작성하기

    에러 없이 수만 건의 공공데이터가 내 데이터베이스 테이블 안에 무사히 안착했다면, 이제 드디어 갈고닦은 SQL 실력을 마음껏 뽐낼 시간입니다. SQL 편집기를 열고 `SELECT * FROM 테이블명 LIMIT 10;` 명령어를 날려 데이터가 예쁘게 들어갔는지 첫인사를 나눠보세요. 만약 전국 상권 데이터를 넣었다면, `GROUP BY`와 `COUNT` 함수를 활용하여 어느 지역에 특정 업종의 카페가 가장 많이 밀집해 있는지 통계를 낼 수 있습니다. 날씨 데이터를 넣었다면 일자별 기온 변화에 따른 매출 증감률을 조인(JOIN)하여 심도 있게 분석해 볼 수도 있습니다. 이렇게 날것의 엑셀 파일을 DB에 직접 임포트하고, 복잡한 쿼리를 통해 유의미한 비즈니스 인사이트를 도출해 내는 일련의 과정 전체가 바로 면접관들이 가장 보고 싶어 하는 '진짜 실무형 데이터 분석 포트폴리오'의 핵심입니다. 오늘 배운 임포트 스킬을 바탕으로 여러분만의 흥미로운 데이터 분석 세계를 개척해 나가시길 적극 응원합니다.

     

    요약: 성공적으로 임포트된 데이터를 바탕으로 SELECT, GROUP BY, JOIN 등 다양한 SQL 쿼리를 활용해 인사이트를 추출하면 훌륭한 실무형 포트폴리오가 완성됩니다.

     

    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드
    MySQL & DBeaver 활용 꿀팁: 엑셀 데이터를 데이터베이스 테이블에 완벽하게 넣는 가이드