본문 바로가기
개발이야기/개발환경설정

#3. MariaDB 설치 및 설정

by dev.josh 2020. 2. 8.
반응형

Contents

#1. CentOS7 서버 생성 및 설정(With 네이버 클라우드 플랫폼)

#2. Root 계정 설정

#3. MariaDB 설치 및 설정

#4. Nginx 설치 및 설정

#5. SSL 인증서 설정

 

 

3. MariaDB 설치 및 설정

https://downloads.mariadb.org/mariadb/repositories/#mirror=dotsrc

 

MariaDB - Setting up MariaDB Repositories - MariaDB

To generate the entries select an item from each of the boxes below. Once an item is selected in each box, your customized repository configuration will appear below. 1. Choose a Distro SLES openSUSE Arch Linux Mageia Fedora CentOS RedHat Mint Ubuntu Debia

downloads.mariadb.org

해당 사이트에서 MariaDB를 설치하려는 서버 종류를 선택하여 리포지터리 내용을 나의 서버에 저장해야 한다.

 

 

MariaDB.repo 파일 생성 및 설정

vi /etc/yum.repos.d/MariaDB.repo

 

vi 명령어로 해당 경로에 MariaDB.repo 파일을 생성한 후,  리포지터리 내용을 저장한다.

 

- MariaDB 설치 명령어

yum install –y mariadb

yum install –y mariadb-server

 

※ 리포지터리 파일 내용 버전과 다른 버전의 MariaDB가설치되는 경우가 있었다.

나는 분명 10.4버전을 설정해놨는데  설치후 버전을 확인해보니 5.5버전...?

sudo yum clean metadata

해당 명령어 후에 yum install -y mariadb 명령어를 실행하면 10.4버전으로 설치된다.

 

 

- MariaDB 명령어

# systemctl start mariadb     = MariaDB 실행

# systemctl stop mariadb     = MariaDB 정지

# systemctl enable mariadb  = MariaDB 자동 실행

systemctl start mariadb

systemctl stop mariadb

systemctl enable mariadb

 

- root 계정 설정

mysql_secure_installation

 

- 스키마 생성 및 계정 생성

스키마 생성 명령어

CREATE DATABASE jo_db DEFAULT CHARACTER SET utf8; 

CREATE DATABASE [Schema Name] DEFAULT CHARACTER SET utf8;  

 

- jo_db 스키마에서 사용하는 jo 계정 생성 명령어

GRANT ALL PRIVILEGES ON jo_db.* TO 'jo'@'%' IDENTIFIED BY 'jo' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON iap_pw_mnt.* TO '[ID]'@'%' IDENTIFIED BY '[Password]' WITH GRANT OPTION;

 

- 접속 확인

MySQL Workbench로 접속하면 'jo_db'스키마가 생성된것을 확인할 수있다~

 

- 대소문자 구분 설정

show variables like 'lower%';        =         현재 설정 확인

lower_case_table_names 0 으로 되어있다면 아래 단계 진행

 

mysql 설정파일 접근 및 수정

vi /etc/my.cnf

[mysql] 아래에 해당 구문 추가   lower_case_table_names = 1

 

MariaDB 재시작

systemctl stop mariadb

systemctl start mariadb

show variables like 'lower%';        =         설정 확인

lower_case_table_names 1로 되어있으면 완료

 

1의 의미는 mysql에서 대소문자를 구분하지 않는다는 의미이다.

다른 설정과 더 자세한 설명은 해당 링크에서...

https://dev.mysql.com/doc/refman/8.0/en/identifier-case-sensitivity.html

 

MySQL :: MySQL 8.0 Reference Manual :: 9.2.3 Identifier Case Sensitivity

9.2.3 Identifier Case Sensitivity In MySQL, databases correspond to directories within the data directory. Each table within a database corresponds to at least one file within the database directory (and possibly more, depending on the storage engine). Tri

dev.mysql.com

 

 

- etc

3306 포트는 mysql 기본 포트이며 #1. CentOS7 서버 생성 및 설정 게시물의 ACG 설정을 통해야지 접근이 가능하다.

https://dev-josh.tistory.com/3

 

#1. CentOS7 서버 생성 및 설정(With 네이버 클라우드 플랫폼)

Contents #1. CentOS7 서버 생성 및 설정(With 네이버 클라우드 플랫폼) 1-1 서버 생성 2-2 공인IP 생성 #2. Root 계정 설정 #3. MariaDB 설치 및 설정 #4. Nginx 설치 및 설정 #5. SSL 인증서 설정 1. CentOS7 서..

dev-josh.tistory.com

 

반응형