Linux

VMware-리눅스 DB서버(MariaDB)

YBban 2025. 3. 5. 18:49

안녕하세요 이번 포스팅부터 VMware를 통해서 다양한 서버를 구축해 보겠습니다.

먼저 구축해 볼 서버는 DB서버 그중에서 MariaDB를 통해서 구축해 보도록 하겠습니다.


1. mariaDB

 

mariaDB는 MySQL에서 파생된 오픈소스로 관계형 데이터베이스 관리 시스템입니다.

MySQL과 높은 호환성을 유지하면서도 성능과 보안이 강화된 데이터 베이스입니다.

현재가 제가 실습용으로 사용하는 CentOS 9에서 기본적으로 MySQL 대신 MariaDB가 제공된다 합니다.


2. 설치 과정

위에서 설명했던 대로 CentOS 9에서는  MariaDB가 제공된다고 합니다.

그래서 특별히 패키지를 다운로드하거나 하는 일 없이 간단한 명령어를 통해서 설치를 하겠습니다.

sudo yum install mariadb-server.x86_64

해당 명령어를 통해서 간단하게 db가 설치가 되었습니다.

이번 포스팅에서 는 설치과정보다는 테이블을 생성하고 외부에서

접속하는 것을 중점으로 작성하겠습니다.

설치가 완료되고 나서는

systemctl start mariadb.service
systemctl enable mariadb.service

명령어를 통해서 db를 실행시켜주어야 합니다. 
상태를 확인해 보면 실행된 것을 확인가능합니다. 

추가적으로 항상 실행을 위해서 enable 명령어 또한 같이 적용했습니다.

 


3.DB접속 후 데이터베이스 작성과 테이블 만들기

먼저 간단하게 보안과 접속 하도록 하겠습니다.

mysql -u root -p

해당 명령어로 mariaDB에 접속 가능합니다.

먼저 간단한 DATABASE를 만들어보도록 하겠습니다.

create DATABASE testDB;

해당 명령어로 testDB라는 데이터베이스를 만들 수 있습니다.

그리고 주의할 점은 DB명령어의 경우는 마지막에 ;를 적어야 명령어가 끝난 것으로 인식합니다.

명령어가 적용되어서 데이터베이스가 생성된 것을 확인가능합니다.

저는 testDB를 사용하려 합니다.

use testDB;

명령어가 적용되어서 none이라 적혀있던 부분이 testDB가 된 것을 확인가능합니다.

이번에는 테이블을 만들어보도록 하겠습니다.

테이블의 내용은 id, name, Email, phone을 열로 테이블을 작성했습니다.

create TABLE testTable(
id VARCHAR(50) PRIMARY KEY,
name VARCHAR(50),
Email VARCHAR(100),
phone VARCHAR(20)
);

명령어를 통해서 테이블을 작성하였고

INSERT INTO testTable (id, name, Email, phone) VALUES ( 'suji20', '수지', 'suji2020@naver.com', '010-2020-2020');
INSERT INTO testTable (id, name, Email, phone) VALUES ( 'YB55', '영빈', 'YB5865@naver.com', '010-8888-7777');
INSERT INTO testTable (id, name, Email, phone) VALUES ( 'GH76', '근호', 'LEE7611@gmail.com', '010-777-6666');
INSERT INTO testTable (id, name, Email, phone) VALUES ( 'JS83', '지성', 'PARK8344@gmail.com', '010-1234-5678');

테이블 조건에 맞게 데이터를 입력하였습니다.

최종적으로 위와 같은 테이블에 테이터가 작성된 것을 확인 가능합니다.

 


4. 접속 관련 설정

현재 저는 root계정을 통해서 테이블을 작성했습니다.

sudo mysql_secure_installation

명령어를 통해서 보안 관련 설정을 수정해 주어야 합니다.

명령어를 실행하면 다음과 같은 질문을 합니다.

 

  1. root비밀번호 보안옵션 설정: 저는 간단한 비밀번호를 사용할 예정이어서 n
  2. 루트 비밀번호 설정: y
  3. 익명 사용자 삭제: y
  4. 원격 루트 로그인 차단 : n
  5. 테스트 데이터베이스 삭제 : y
  6. 권한 테이블 새로고침: y

해당설정을 해주어야 외부에서 root계정으로  mariaDB에 접속이 가능합니다.

  1.  

그리고 MariaDB는 기본적으로 3306 포트를 사용합니다. 외부에서 접근 가능하도록
해당 포트를 열겠습니다.

sudo firewall-cmd --permanent --add-service=mysql
sudo firewall-cmd --reload

명령어를 통해서 mysql 서비스에 필요한 포트를 방화벽에서 허용하였습니다.

 

또한 MariaDB의 파일 설정을 바꾸어 주겠습니다.

sudo vi /etc/my.cnf.d/mariadb-server.cnf

명령어를 통해서 설정파일을 열어주고 37번째 행에 있는 #을 제거해서 외부 접속을 허용해 주겠습니다.

그리고 마지막으로 DB서비스를 재시작해줍니다.

sudo systemctl restart mariadb

이제 외부 접속을 시도해 보겠습니다.


5. 외부에서 접속하기

저는 로컬 컴퓨터에서 접속해 보도록 하겠습니다.

로컬 컴퓨터에 먼저 mariaDB를 설치하도록 하겠습니다.

MariaDB설치를 해준이 후에 

C:\Program Files\MariaDB 11.7\bin

해당 설치 폴더로 이동해서 윈도 파워셸을 실행주도록 하겠습니다.

파워셸을 통해서 해당 DB에 접속하겠습니다.

\mysql.exe -h 192.168.10.128 -u root -p --skip-ssl

 

 

이전에 설정했던 root계정의 비밀번호를 입력하면 DB에 접속 가능합니다.

제대로 접속된 것이지 확인하기 위해 먼저 데이터 베이스와 테이블이 있는지 확인해 보겠습니다.

제가 만들었던 데이터베이스와 테이블이 제대로 있는 걸 확인가능합니다.

추가적으로 테이블에 있는 내용도 확인하겠습니다.

마지막으로 DB에 새로운 데이터를 입력까지 해보겠습니다.

외부에서 접속뿐만이 아니라 테이블수정, 데이터 입력까지 가능합니다.


이상으로 mariaDB를 설치하고 외부에서 접속까지 하였습니다.

간단한 DB설치와 외부접속이었지만 앞으로도 지속적으로 다양한 서버와 설치하는 등의 포스팅을 이어해 보도록 하겠습니다.

감사합니다.