본문 바로가기
프로젝트/정보

[MySQL] MySQL data processing

by Tarra 2022. 6. 14.

 

 

먼저 DBMS란?


"데이터베이스" 라는 데이터의 집합을 만들고, 저장 및 관리할 수 있는 기능들을 제공하는 응용 프로그램이다.

즉, 데이터의 관리에 특화된 프로그램이라고 생각하면 편하다.

이번 README에서는 실무에서 가장 많이 쓰이는 (csv, xls) 형태의 텍스트 데이터를 import하는 방법을 정리하고자 한다.

MySQL 설치 관련 문서

 

윈도우10 MySQL Community 8.0 버전 다운로드 및 설치 방법 가이드

윈도 10 MySQL Community 8.0 버전 다운로드 및 설치 방법 가이드 안녕하세요. 요즘 SQLD, SQLP 취득을 목표로 하시거나, 아니면 업무적으로 SQL 공부를 하기 위해서 MySQL을 본인의 윈도 PC에 설치를 하시려

stricky.tistory.com

 

 

import 하기 위한 문서는 코로나 선별진료소의 공공 데이터를 활용하도록 한다.

 

코로나19 선별진료소 엑셀파일 데이터

 

전체 선별진료소 목록 - 보건복지부

코로나바이러스감염증-19,선별진료소, 선별진료소검색, 선별진료소 지도검색, 선별진료소 목록다운로드, 전체선별진료소,

www.mohw.go.kr

 


 

 

MySQL Workbench를 이용한 방법.

 


사용자 등록

기본적인 등록이 끝나있는 상태라면 일단 root 계정으로 들어간다.

나오는 첫 화면에서

Administration 탭의 Navigator - MANAGEMENT - User and Privileges 를 들어간다.

 

 

 

나오는 탭의 Add Acount를 누르고 로그인 아이디, 패스워드등을 설정한 뒤 Apply를 누르면 손쉽게 사용자를 등록 할 수 있다.

 

 

 

계정 등록이 끝나면 해당 사용자가 건드릴 수 있는 스키마를 지정해야 하는데,

이 README의 경우에는 모든 스키마를 수정할 수 있도록 지정해보았다.

Schema Privileges -> Add Entry...를 누른 후

 

 

All Schema를 선택하여 해당 사용자가 모든 스키마를 선택할 수 있도록 했다.

(특정 스키마만 사용도록 하는 것도 가능하다.)

 

 

 

이후 MySQL의 메인화면으로 돌아와

 

 

 

설정을 적어주면 메인화면에서 사용자를 바꾸어 해당 데이터 베이스에 진입할 수 있게 된다.

 

 

 

사용자가 등록된 모습을 확인할 수 있다.

 

 

 


 

 

스키마 생성

DB계정을 지정해 로그인한 뒤 ,

해당 버튼을 눌러 스키마를 생성한다.

 

 

알아보기 쉽도록 코로나 선별 진료소에 대한 스키마인 만큼 COVID로 설정해 주었다.

 

 

다음 나오는 창에 대해 Apply를 눌러주면 해당 스키마가 생성되게 된다.

 

 

왼쪽 상단 스키마 창에 해당 스키마가 생성된 것을 확인할 수 있다.

 

 

여기서 해당 스키마에 우클릭을 사용하여 데이터를 넣어보도록 하자.

 

 

여기서 잠깐!

MySQL은 csv, json파일만 읽을 수 있으므로, 해당 엑셀 파일 가공을 해주어야 한다.
따라서 해당 엑셀 파일에 접근하여 필요한 데이터를 가공한 후, csv파일로 변환하여 저장해 주어야 한다.

 

 

Table Data Import를 진행하면 다음과 같은 창을 만날 수 있는데,

우리는 새로운 table를 만들 것이므로 밑의 선택지를 선택해주었다.

 

 

이후 여러 데이터에 따라 필드 타입을 지정해주고, 필요한 컬럼만 챙기면 된다.

 

 

이제 해당 테이블이 잘 입력되었는지 확인해보도록 하자

 

 

해당 버튼을 누르면 테이블이 잘 등록되어 있는 것을 확인 할 수 있다.

추가적으로 밑의 입력창에 쿼리문을 적은 후 , 번개모양을 클릭하면 해당 데이터를 수정할 수도 있다.

 

 


 

 

테이블 수정

해당 버튼을 클릭해 테이블을 수정해보도록 하자.

 

 

해당 버튼을 통해 진입하는 창에서 컬럼의 이름과 데이터 타입등 여러가지 설정을 바꿀 수 있다.

본인은 다음과 같이 설정해주었다.

 

 

그럼 다음과 같은 테이블을 얻을 수 있다.

 

 

여기에 일괄적으로 Creatd_nm에 데이터를 넣어보자,

위의 입력창에 쿼리문을 통해 데이터를 입력하면 된다.

왼쪽 창에서 해당 스키마를 더블 클릭 한 뒤, 해당 쿼리문을 입력하면

safe 모드에 대한 에러를 확인할 수 있다.

 

 

이는 다음과 같은 루트를 통해 해결할 수 있다.

 

 

 

이후 서버 새로고침

 

 

 

 

이후 해당 쿼리문을 다시 실행시켜 보면 데이터의 수정이 잘 되어 있는 것을 확인할 수 있다.

 

 

마찬가지로 reg_dt 또한 해당 쿼리문을 통해 현재 시간을 설정해줄 수 있다.

 

 

 


csv 파일로 스키마 내보내기

원하는 데이터 테이블을 완성했다면,

해당 테이블을 오른쪽 클릭하여 Export Wizard를 통해 csv 파일로 내보낼 수 있다.

 

 

이 또한 원하는 데이터만을 선정하여 csv 또는 json파일로 내보낼 수 있다.

 

 

csv 파일로 잘 내보내진 모습을 확인할 수 있다.