본문 바로가기
Project

[MariaDB] Windows MariaDB 다중 인스턴스 및 포트 분리 가이드

by boooluve2 2026. 2. 25.
반응형

Windows에서 MariaDB 인스턴스 2개 이상 운영 매뉴얼

1. 목적

  • 하나의 PC에서 MariaDB 인스턴스를 여러 개 운영
  • 각 인스턴스는 서로 다른 포트, 데이터 디렉터리, 사용자/DB 구조를 가짐
  • 프로젝트별 완전 분리 환경 구성

2. 기본 개념 정리

항목 의미
인스턴스 MariaDB 서버 1개 (Windows 서비스 1개)
포트 인스턴스 구분 번호 (예: 3306, 13306, 23306)
datadir 실제 DB 파일이 저장되는 폴더
세션(HeidiSQL) 단순 접속 설정일 뿐, 서버가 아님

✔ 인스턴스가 다르면 완전히 다른 DB 서버
✔ 포트가 다르면 다른 인스턴스

 

3. 현재 포트 사용 여부 확인

netstat -ano | findstr ":3306"
netstat -ano | findstr ":13306"

 

PID 확인:

tasklist /FI "PID eq <PID번호>"

 

4. 새 MariaDB 인스턴스 생성 절차

 

Step 1. 새 데이터 디렉터리 생성

mkdir "C:\ProgramData\MariaDB\data"

 

권한 설정:

icacls "C:\ProgramData\MariaDB\data" /grant Users:(OI)(CI)M
icacls "C:\ProgramData\MariaDB\data" /grant SYSTEM:(OI)(CI)F

 

Step 2. 데이터 디렉터리 초기화

"C:\Program Files\MariaDB 11.8\bin\mariadb-install-db.exe" --datadir="C:\ProgramData\MariaDB\data"

 

Step 3. Windows 서비스로 등록

"C:\Program Files\MariaDB 11.8\bin\mysqld.exe" --install MariaDB_ProjectA --datadir="C:\ProgramData\MariaDB\data" --port=23306

 

Step 4. 서비스 시작

net start MariaDB_ProjectA

 

Step 5. 포트 확인

netstat -ano | findstr ":23306"

 

LISTENING 나오면 성공

 

5. 기존 인스턴스 포트 변경 방법

 

서비스 중지

net stop MariaDB

 

서비스 삭제

sc delete MariaDB

 

원하는 포트로 재등록

"C:\Program Files\MariaDB 11.8\bin\mysqld.exe" --install MariaDB --datadir="C:\ProgramData\MariaDB\data" --port=3306

 

서비스 시작

net start MariaDB

 

6. HeidiSQL 세션 구성 가이드

 

권장 세션 네이밍 규칙:

LOCAL_PROJECTA_3306
LOCAL_PROJECTB_13306

형식:

[환경]_[프로젝트]_[포트]

 

7. 프로젝트별 DB/사용자 분리 (인스턴스 1개일 때)

 

DB 생성

CREATE DATABASE projectA;
CREATE DATABASE projectB;

 

사용자 생성

CREATE USER 'projectA_user'@'localhost' IDENTIFIED BY 'pw';
GRANT ALL PRIVILEGES ON projectA.* TO 'projectA_user'@'localhost';

FLUSH PRIVILEGES;

정리

  • 포트가 다르면 다른 MariaDB 인스턴스
  • datadir가 다르면 완전 분리
  • 세션은 서버가 아니라 접속 설정일 뿐
반응형