우당탕탕 개발일지

[방치RPG 서버 제작기] Docker 내의 db에 접속하기 ( DBeaver ) 본문

Server/방치RPG 서버

[방치RPG 서버 제작기] Docker 내의 db에 접속하기 ( DBeaver )

devchop 2025. 5. 6. 09:21

 

dititalOcean 에서 서버대여 -> docker compose 를 이용해 mysql 과 서버를 띄움 DBeaver 를 이용해 db내용을 확인하고 싶을 경우 아래와 같이 진행한다.

 

1. 로컬에서 포트연결하기. mysql 포트가 3306 일 경우 아래처럼 입력한다. 로컬포트 3307과, mysql 의 3306 포트를 연결한다.

ssh -L 3307:127.0.0.1:3306 root@서버IP

 

2. dbeaver 에서 접속

포트는 3307, 계정은 서버계정 정보를 입력한다. 

 

 

[Error] public key retrieval is not allowed 

DBeaver에서 mysql 설정 시 driver설정에서 다음 두 옵션을 변경해준 뒤 연결하면 에러가 해결된다.

allowPublicKeyRetrieval=true
useSSL=false

 

 

포트 터널링은 터미널을 닫으면 종료되기때문에, 매번 새로 해줘야한다. 간단히 하기 위해 스크립트로 만들어놓으면 편하다.

 

#mysql_tunnel.sh
#!/bin/bash

# SSH 터널링 스크립트

# 서버 정보
SERVER_IP=<MY SERVER IP>
SERVER_USER=root
LOCAL_PORT=3307
REMOTE_PORT=3306

echo "🔗 SSH 터널링 시작: 로컬 포트 $LOCAL_PORT → 서버 $SERVER_IP:$REMOTE_PORT"

ssh -L ${LOCAL_PORT}:127.0.0.1:${REMOTE_PORT} ${SERVER_USER}@${SERVER_IP}

echo "❌ SSH 터널링 종료됨"

 

chmod +x mysql_tunnel.sh
./mysql_tunnel.sh