VirtualBox Ubuntu 에 MariaDB 설치하고 접속하기

최병훈·2024년 9월 12일

1. MariaDB 설치

설치 전 패키지 업데이트

sudo apt update

패키지 설치

  • 패키지 이름 : mariadb-server, mariadb-client
sudo apt-get install mariadb-server
sudo apt-get install mariadb-client

서비스 실행 확인

  • 서비스 이름 : mariadb
systemctl status mariadb

  • mariadb 서비스가 active (running) 상태가 아니라면,
sudo systemctl start mariadb

2. 방화벽에 MariaDB 의 포트를 허용

UFW 포트 허용 설정

  • mariadb 서비스는 3306번 포트, tcp 프로토콜을 사용한다
sudo ufw allow 3306/tcp

UFW 포트 허용 확인

sudo ufw status

3. 데이터베이스 외부 접속이 가능하도록 bind-address 설정

sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf

로컬 호스트에서만 접속할 수 있도록 bind-address=127.0.0.1 로 설정 되어있다.

접속하고자 하는 IP 주소를 bind-address 에 추가해야 한다.
bind-address=0.0.0.0 으로 설정하면 모든 IP 주소 허용

4. 유저별로 접속할 수 있는 IP 대역과 데이터베이스를 설정

루트 비밀번호 설정

sudo mysqladmin -u root -p password 'mypassword'

접속

mysql -u root -p

유저가 사용할 수 있는 IP 대역과 데이터베이스 설정

grant all on <데이터베이스이름>.<테이블이름> to '<유저명>'@'<IP>' identified by '<비밀번호>';
grant all on *.* to 'root'@'%' identified by 'mypassword';
  • 허가할 데이터베이스와 테이블 : *.* (모든 데이터베이스의 모든 테이블)
  • 사용자 : root
  • 접속할 수 있는 IP 대역 : % (모든 IP)

현재 사용중인 MariaDB 의 캐시를 지우고 새로운 환경 설정 적용

flush privileges;

5. VirtualBox 의 경우 포트 포워딩 설정

VirtualBox 에서 해당 Ubuntu 머신의 [설정]

[네트워크] - [고급] - [포트 포워딩]

포트 포워딩 규칙 추가

  • mariadb 서비스는 3306번 포트, tcp 프로토콜을 사용

  • 호스트 IP : 호스트 Windows 의 IP
    명령 프롬프트 혹은 PowerShell 에 ipconfig 로 확인

  • 게스트 IP : VirtualBox Ubuntu 의 IP
    Ubuntu 의 terminal 에 hostname -I 로 확인

6. Windows 에서 데이터베이스 접속

데이터베이스 접속 프로그램 DBeaver 사용

[새 데이터베이스 연결] - MariaDB 선택

접속 설정

  • Server Host : 호스트 Windows 의 IP
    포트 포워딩(Windows IP -> Ubuntu IP) 설정이 되었기 때문에, 호스트 Windows 의 IP 로 Ubuntu 에 접속할 수 있다.

  • Username 과 Password 를 입력한 후

  • Test Connection 을 통해 접속 테스트

0개의 댓글