리눅스 환경 세팅 - 4. CentOS 무선랜 설정하기 (https://noobnim.tistory.com/13) 에 이어서 진행합니다.

 

출처) https://suwoni-codelab.com/linux/2017/05/24/Linux-CentOS-MariaDB/

 

06. 리눅스(CentOS) 개발 놀이터 만들기 - MariaDB 설치

리눅스 CentOS에 MariaDB를 설치해봅니다.

suwoni-codelab.com

 

1. MariaDB 다운로드 및 설치

 

$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash

MariaDB를 설치하기 위한 사전 작업으로, 위의 명령을 실행합니다. 

 

$ cd /etc/yum/yum.repos.d/

위의 폴더로 이동하여 ls 또는 ll 로, mariadb.repo 라는 파일이 생성된 것을 확인할수 있습니다.

파일이 없을시 맨위의 명령을 다시 실행해주세요.

 

$ yum -y install MariaDB-server

yum을 이용하여 MariaDB 서버용을 설치하도록 합니다.

 

 

 

2. MariaDB 설정하기

 

$ systemctl enable mariadb

MariaDB를 자동으로 실행되도록 합니다.

 

$ systemctl start mariadb

MariaDB를 실행합니다.

 

$ mysql_secure_installation

MariaDB의 보안설정을 하기위해 위의 명령어를 입력합니다.

 

이후에 DB의 비밀번호를 지정할 수 있는 문구가 나오며,

비밀번호를 지정하고 나면 여러가지 설정 질문이 따라오게 됩니다.

 

1) switch to unix_socket authentication?

   - unix_socket 인증으로 전환하시겠습니까? 라는 질문입니다.

     사실 여기서 무엇을 선택해야 할지는 모르겠습니다... 저도 글을 작성하면서 설치중이기때문에

     해당 옵션 설정으로 문제가 생겨서 수정을 해야한다면 차후에 글을 수정하겠습니다.

     저는 Y를 선택!!!!!!

 

2) Change the root password?

   - root의 비밀번호를 설정할지에 대한 질문입니다.

 

3) Remove Anonymous users?

   - Anonymous user를 삭제할지에 대한 질문입니다.

 

4) Disallow root login remotely?

   - root의 로그인을 원격으로 허용할지에 대한 질문입니다.

 

5) Remove test database and access to it?

   - 모든 사용자가 접근할 수 있는 테스트 DB를 삭제할지에 대한 질문입니다.

 

6) Reload privilege tables now?

   - 설정한 권한 테이블을 적용할지에 대한 질문입니다.

 

Thanks for using MariaDB!

위의 메세지와 함께 MariaDB의 설치가 마무리 됩니다.

 

 

 

3. port 확인 및 변경

 

$ semanage port | grep mysqld_port_t

위의 명령을 통해 port 를 확인합니다.

semanage 의 명령어를 사용하지 못한다는 경고가 발생할 수 있습니다.

 

$ yum install policycoreutils-python

yum 을 이용하여 semanage명령어를 사용할 수 있는 패키지를 설치합니다.

 

mysqld_port_t						tcp			1186, 3306, 63132-63164

기본적으로는 포트번호가 3306이지만, 확인 절차를 거쳐서 나쁠건 없다고 생각합니다.

보안상으로 포트를 변경하고싶으신 분들은 위의 출처 블로그를 확인하시면 자세한 설명을 보실 수 있습니다.

 

 

 

4. 포트 방화벽 해제

 

$ systemctl restart mariadb

MariaDB를 재시작 해주도록 합니다.

 

$ firewall-cmd --permanent --add-port=3306/tcp

자신의 MariaDB 포트를 방화벽에서 열어도록 합니다.

 

firewall-cmd --reload

방화벽을 재시작하여 추가한 내용을 적용합니다.

 

 

 

5. 외부접속하기

 

$ mysql -u root -p

MariaDB를 실행합니다.

 

MariaDB [(none)]> use mysql

mysql 사용을 입력합니다.

 

MariaDB [(mysql)]> grant all privileges on *.* to 'root'@'%' identified by '비밀번호';

계정에 권한을 지정해 주도록 합니다.

 

MariaDB [(mysql)]> flush privileges; 

위의 명령어는 grant 테이블을 재조회 함으로써, 권한 변경사항을 즉시 적용하도록 합니다.

 

MariaDB [(mysql)]> exit

위의 명령으로 MariaDB를 종료합니다.

 

$ vi /etc/my.cnf.d/server.cnt

vi 명령으로 server.cnt 파일을 열도록 합니다.

 

[mysql]
port=3306

#bind-address=0.0.0.0

[mysql] 부분을 찾고 그 하단에 port=서버의 MariaDB 포트번호 를 입력합니다.

bind_address 라는 부분을 찾고 그앞에 # 를 붙여 주석처리 해주도록 합니다.

bind_address 는 접속허용할 IP를 입력하는 부분이며, 주석처리할 시 모두 허용 입니다.

 

$ systemctl restart mariadb

MariaDB를 재시작합니다.

 

이제 모든 설정이 끝났습니다!!

다른 PC에서 MariaDB 서버를 설치한 PC의 IP를 호스트로 지정하고

접속 시도하면 마무리됩니다.

 

설치와 포스팅을 동시에 하고나니 어마어마한 시간이 흐르는군요!

마치 투잡을 뛰는 느낌도 들지만 성공했을때의 성취감은 정말 피로가 싹 가십니다 ㅠㅠ

 

이상으로 MariaDB 설정을 마무리 하도록 하겠습니다.

 

 

+ Recent posts