View

 프로그램의 개발/테스트를 위해서 로컬환경에 가벼운 DB를 설치해야 하는 경우가 있다. 
상용DB를 사용할 수 없기 때문에 오픈소스DB를 사용해야 하는데 개발에 따라 RDBMS가 필요할 수도 NoSQL DB가 필요할 수도 있다. 
오픈소스 DB는 종류가 많기 때문에 각 장단점을 고려하여 선정해야 한다 (참고: https://blog.capterra.com/free-database-software/)

이번에는 Spring 공부를 위해 DB를 구성할 예정이며, Java 기반으로 프로그램이 작성되기 때문에 MariaDB를 JDBC로 접근할 생각이다. 
MySQL이 아닌 MariaDB를 선정한 이유는 내 노트북에서도 가볍게 돌아가기 때문이다. 그리고 기본적인 RDBMS 기능들은 모두 제공한다. 
관리툴인 HeidiSQL 또한 가볍고 사용하기 쉽다. 


* 설치 
MariaDB의 설치파일은 간단하게 다운 받을 수 있다. (https://mariadb.com/)
- 다운로드 후 설치를 진행한다. 이때 root 패스워드를 설정할 수 있다. 
- 설치될 기능들을 선택 하는데 HeidiSQL은 왠만하면 설치하도록 한다. (default) 
- 그 다음으로 서비스와 DB리스너가 떠있을 포트(default :3306) 을 설정하게 된다. 


* 설정

1) 서비스 자동시작 변경
- 설치를 default값으로 수행한다면 자동으로 서비스가 MySQL로 등록되는데, 기본값으로 자동시작으로 되어 있다. 
OS부팅 후 자동으로 DB가 기동되게 됨으로 사용하지 않는다면 불필요하게 리소스가 낭비된다. 따라서 설치 후 '서비스' 에서 
MySQL 시작으로 자동->수동 으로 변경하는 것이 좋다.  MariaDB는 MySQL기반으로 만들어진 가벼운 DB임으로 MariaDB의 많은 부분이 
MySQL과 비슷하다. (명령어, 서비스 명, 설정 값 등) 


2) 한글 설정(my.ini 수정)
- my.ini 파일은 mariaDB의 설정파일로 기본적으로 아래와 같은 경로에 설치된다. (windows 기준)
> (예시) C:\Program Files\MariaDB 10.3\data\my.ini


(https://mariadb.com/kb/en/library/configuring-mariadb-with-mycnf/)

- my.ini 파일 대신 my.cnf 파일을 사용해도 되며, 기능상의 차이는 없다. 
- my.ini 파일은 여러 group 으로 나누어져 설정값을 입력하도록 되어 있는데 group 종류는 아래와 같다. 


-가장 처음에 설정해야 할 것들 중 하나가 바로 character set 설정이다. 현재 인코딩은 아래와 같이 확인할 수 있다. 

>[mysql] show variables like 'c%';

위의 인코딩 값을 utf8로 설정하여 mariaDB에서 한글입출력을 할 수 있도록 설정하기 위해서는 아래 값들을 my.ini 에 추가해줘야 한다. 

[client]

default-character-set=utf8


[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci

init_connect=SET collation_connection=utf8_general_ci

init_connect=SET NAMES utf8


[mysql]

default-character-set=utf8


- 저장 후 mariaDB를 서비스에서 재시작 해준다.



3) cmd 에서 mysql 명령 수행 

- mariaDB 를 설치하고 난 후 윈도우 cmd에서 mysql 명령 수행 시 정상적으로 수행되지 않는다. 이는 환경변수에 mariaDB\bin 경로가 없기 때문이다.
- 시스템 환경변수 Path 값에 %MYSQL_HOME%\bin 값을 추가하고 cmd 창을 새로 열어 수행하면 정상적으로 mysql 명령이 수행된다. 
> (예시) C:\Program Files\MariaDB 10.3\bin






Share Link
reply
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31