에디블로그
Engineer's Field Notes

AI 자동화로 매일
한 편씩 쓰는
엔지니어 운영 노트

Claude Code · 자동화 파이프라인 · 사고 회고까지. 잘 굴러간 기록 + 깨진 흔적도 같이 남깁니다.

사람이 할 수 있는 일은,
AI도 할 수 있어야 합니다.
매일 한 편 쓰면서 검증 중.
— 이번 주 가장 많이 읽힌 글 TOP 3
개발자 도구/API & DB

[DBeaver] DB마다 툴 갈아타지 않는 법

반응형
[DBeaver] DB마다 툴 갈아타지 않는 법

개발자 도구 · API & DB

[DBeaver] DB마다 툴 갈아타지 않는 법

Postgres는 pgAdmin, MySQL은 Workbench, Oracle은 SQL Developer로 나뉘어 있던 자리를 하나로 합치는 도구예요. 커뮤니티 에디션은 Apache 2.0 오픈소스이고 100종이 넘는 관계형 드라이버를 지원해요. 설치와 첫 연결, 자주 쓰는 기능, 무료판이 막히는 지점까지 공식 문서 기준으로 정리했어요.

DB 벤더마다 다른 전용 툴을 한 창으로 모으는 자리예요

DBeaver는 스스로를 "Universal Database Tool"이라고 소개해요. 여러 데이터베이스를 하나의 클라이언트에서 다루는 것이 이 도구의 출발점이에요.

실무에서 DB 클라이언트가 늘어나는 이유는 대개 벤더 때문이에요. Postgres 스키마를 볼 때는 pgAdmin, MySQL 계정을 손볼 때는 MySQL Workbench, Oracle은 SQL Developer 식으로 각 벤더가 자기 툴을 따로 내놓기 때문이에요. 창마다 단축키가 다르고 결과 그리드 조작법도 달라요. CSV로 뽑는 메뉴 위치까지 제각각이에요.

DBeaver는 JDBC 드라이버를 얹는 구조라서 이 조합을 한 트리 안에 넣어요. GitHub 저장소 설명 기준으로 커뮤니티 버전이 100개가 넘는 데이터베이스 드라이버를 지원해요. MySQL, PostgreSQL, Oracle, SQL Server, Snowflake 같은 이름이 목록에 들어 있어요. 라이선스는 Apache 2.0이에요.

구분 벤더 전용 툴 DBeaver 커뮤니티
연결 대상 해당 벤더 1종 관계형 드라이버 100종 이상
비용 대체로 무료(벤더 배포) 무료, Apache 2.0 오픈소스
UI 일관성 툴마다 제각각 같은 트리·에디터·단축키
NoSQL·클라우드 벤더별 별도 툴 PRO 에디션 영역
실행 환경 벤더마다 상이 배포판에 OpenJDK 21 포함

자바를 따로 깔지 않아도 되는 배포판이에요

DBeaver는 자바로 돌아가는 프로그램이라 과거에는 JDK 설치가 걸림돌이었어요. 지금은 저장소 문서에 "OpenJDK 21이 모든 DBeaver 배포판에 포함되어 있다"고 적혀 있어요. 설치 파일만 받으면 별도 런타임 준비 없이 실행돼요.

받는 경로는 공식 사이트의 다운로드 페이지와 GitHub 릴리스 두 가지예요. 설치형 인스톨러 대신 압축본을 받아 원하는 위치에 풀고 실행하는 방식도 문서에 나와 있어요. 회사 장비처럼 설치 권한이 제한된 환경에서 쓸 만한 경로예요.

# 압축 배포판을 쓰는 경우
unzip dbeaver-ce-*.zip -d ~/apps/
~/apps/dbeaver/dbeaver

첫 연결은 마법사 한 번으로 끝나요

연결 생성은 세 가지 경로가 있어요. 툴바의 "New Connection Wizard" 버튼, 상단 메뉴의 Database → New Database Connection, 그리고 Database Navigator에서 우클릭 후 Create → Connection이에요. Ctrl+N을 누른 뒤 목록에서 Database connection을 고르는 방법도 있어요.

마법사를 열면 드라이버 선택 화면이 먼저 나와요. 검색창에 데이터베이스 이름 일부를 치면 후보가 좁혀져요. Next를 누르면 접속 정보 입력으로 넘어가요. Main 탭에서 요구하는 값은 Host, Port, Database Name, Username, Password예요. SQLite처럼 파일 기반 데이터베이스는 호스트와 포트 대신 파일 경로만 지정하면 돼요.

여기서 드라이버 파일이 없으면 다운로드 안내가 떠요. 공식 문서는 대부분의 드라이버가 번들로 들어 있거나 자동 다운로드 대상이라고 설명해요. 마지막으로 Test Connection을 눌러 접속을 확인하고 Finish를 누르면 Database Navigator에 연결이 저장돼요.

매일 쓰는 화면은 네 덩어리예요

Database Navigator — 객체 트리와 SQL 생성

왼쪽 트리에는 연결, 스키마, 테이블, 뷰가 계층으로 펼쳐져요. 연결이 늘어나면 폴더를 만들어 드래그로 옮겨 정리해요. 필터 바에 이름을 넣어 객체를 걸러내는 기능도 있어요. 다만 필터는 "펼쳐진 노드에만" 적용된다고 문서에 적혀 있어요.

객체를 우클릭하면 나오는 Generate SQL 메뉴가 손이 자주 가는 자리예요. SELECT, INSERT, UPDATE, DELETE, MERGE, DDL을 선택한 객체 기준으로 만들어줘요. 컬럼 이름을 일일이 타이핑하지 않고 초안을 얻는 셈이에요. 표시 방식은 Simple View, Advanced View, Custom View 세 가지예요. "Link with editor" 버튼을 켜두면 지금 열어둔 에디터와 트리 위치가 같이 움직여요.

SQL 에디터 — 실행 단축키만 알면 절반

DBeaver의 실행 명령은 상황별로 나뉘어 있어요. 커서가 놓인 문장 하나만 돌릴 때와 에디터 전체를 스크립트로 돌릴 때가 다른 키라서, 이 둘을 구분하는 것만으로 실수로 전체 실행하는 사고를 줄여요.

동작 단축키
커서 위치 문장 실행 Ctrl+Enter
새 결과 탭에서 실행 Ctrl+\
에디터 전체를 스크립트로 실행 Alt+X
문장마다 별도 탭으로 실행 Ctrl+Alt+Shift+X
네이티브 클라이언트로 스크립트 실행 Alt+N
커서 아래 객체 정의 열기 F4
새 SQL 에디터 F3
접속 데이터소스 전환 Ctrl+9
카탈로그·스키마 전환 Ctrl+0
결과 패널 접기·펼치기 Ctrl+6

Alt+N으로 실행하는 네이티브 클라이언트 경로는 MySQL, Oracle, PostgreSQL의 자체 CLI를 불러 쓰는 방식이에요. 대용량 스크립트를 JDBC 대신 벤더 도구로 넘기고 싶을 때 쓰는 항목이에요. 이 밖에 자동 완성(SQL Assist), SQL 포맷팅이 에디터 기본 기능으로 들어 있어요.

데이터 전송 — 내보내기와 테이블 간 이동

DBeaver 문서는 데이터 전송을 "여러 포맷으로 데이터를 내보내고 가져오는 것, 그리고 같은 데이터베이스 안이나 다른 데이터베이스의 테이블로 데이터를 옮기는 것"이라고 정의해요. 쿼리 결과, 이미 가져온 행, 테이블 전체가 모두 대상이 돼요.

내보내기 포맷은 CSV, XLSX, XML, HTML, JSON, Markdown, SQL, Source code, TXT, Parquet, 그리고 Database(테이블 간 직접 전송)예요. 가져오기는 CSV, DbUnit, Table, XLSX, Parquet을 지원해요. 이 중 XLSX·XML·Parquet은 PRO 전용으로 표시돼 있어요. 커뮤니티 에디션에서는 CSV와 JSON, SQL 쪽을 주로 쓰게 되는 이유예요.

구분자, 인코딩, NULL 처리 방식은 전송 설정에서 조정해요. 큰 데이터를 뽑을 때 쓰는 멀티스레드 옵션도 있어요. 전송 작업은 백그라운드로 돌아가서 진행 중에도 다른 작업을 이어가요. 대신 문서는 전송이 끝날 때까지 대상 테이블의 데이터를 바꾸지 말라고 권고해요. 같은 설정을 반복해 쓴다면 작업(task)으로 저장해두는 기능도 있어요.

ER 다이어그램 — 스키마를 그림으로 확인

Database Navigator에서 테이블이나 뷰, 스키마 전체를 더블클릭하면 관계도가 자동으로 그려져요. 처음 열린 다이어그램은 읽기 전용이에요. Edit mode를 켜면 다이어그램 편집기가 스키마 편집 모드로 바뀌면서 변경 내용이 SQL 스크립트로 만들어져요. 이 스크립트를 실행해야 실제 DB에 반영되는 구조예요.

파일로 내보낼 때 고를 수 있는 형식은 SVG, PNG, GIF, BMP, GraphML이에요. 여기서 SVG는 PRO에서만 제공된다고 문서에 표시돼 있어요.

목록에 없는 DB는 드라이버를 직접 등록해요

사내 전용 DB나 신생 엔진처럼 기본 목록에 없는 경우에는 Driver Manager로 JDBC 드라이버를 등록해요. 메뉴 경로는 Databases → Driver Manager예요. New 버튼으로 새 드라이버 정의를 만들어요.

준비물은 드라이버 .jar 파일이에요. 데이터베이스 서버 설치본에 함께 들어 있거나 벤더 공식 사이트, GitHub 릴리스, Maven Central에서 받아요. 파일을 등록한 뒤 Find Class 버튼을 누르면 추가한 .jar 안에서 드라이버 클래스 후보를 찾아 목록으로 보여줘요. 클래스 이름을 정확히 외우고 있지 않아도 되는 이유예요. Maven 좌표를 입력해 DBeaver가 직접 내려받게 하는 방법도 있어요.

Databases > Driver Manager > New

  Driver Name  : 목록에 표시할 이름
  Class Name   : Find Class 로 .jar 안에서 탐색
  URL Template : jdbc:vendor://{host}:{port}/{database}
  Default Port : 벤더 기본 포트
  Libraries    : Add File(.jar) 또는 Add Artifact(Maven 좌표)

무료판이 막히는 경계는 NoSQL과 클라우드예요

공식 사이트는 커뮤니티 에디션을 "개인 프로젝트에 권장하는 무료 오픈소스 데이터베이스 관리 도구"로 소개해요. 포함 항목은 관계형 데이터베이스 기본 지원, 데이터 에디터와 SQL 에디터, 작업 관리와 유지보수 도구, AI Chat 및 @ai 명령이에요.

유료 PRO 쪽에 들어가는 항목은 성격이 뚜렷해요. ODBC 드라이버 연결, MongoDB·Cassandra·Redis·CouchDB 같은 NoSQL 지원, Redshift·Google BigQuery·Oracle Cloud 같은 클라우드 데이터베이스, AWS·Google Cloud·Azure 네이티브 지원, Visual Query Builder와 Task Scheduler, 데이터베이스 성능 도구, 기술 지원이에요. 앞에서 본 XLSX·Parquet 내보내기와 SVG 다이어그램 내보내기도 이쪽이에요.

정리하면 관계형 DB만 다루는 동안에는 커뮤니티로 충분하고, 몽고DB나 BigQuery가 스택에 들어오는 순간 결제 판단이 필요한 구조예요. 도입 전에 팀에서 쓰는 데이터 저장소 목록부터 확인해두면 판단이 빨라져요.

미리 알아두면 좋은 지점들이에요

  • Eclipse 기반 UI예요. 워크스페이스, 퍼스펙티브, 뷰 같은 개념이 그대로 남아 있어요. Eclipse를 안 써본 사람에게는 창 구성이 낯설게 느껴져요.
  • 드라이버 자동 다운로드는 네트워크가 필요해요. 폐쇄망이라면 Driver Manager에 .jar를 직접 등록하는 경로를 미리 준비해두는 편이 안전해요.
  • 드래그앤드롭 후 선택 해제를 잊으면 실행이 안 돼요. 트리에서 객체 이름을 SQL 에디터로 끌어다 넣는 기능이 따로 있어요. 문서는 실행 전에 선택을 해제하지 않으면 오류가 난다고 안내해요.
  • ERD Edit mode는 곧 DDL이에요. 다이어그램에서 바꾼 내용이 SQL 스크립트로 변환돼요. 운영 DB에 연결한 상태에서 편집 모드를 켜는 건 주의가 필요해요.
  • PRO 표시를 확인하고 쓰세요. 문서 곳곳에 "Available only in PRO"가 붙어 있어요. 기능을 계획에 넣기 전에 에디션 표기를 먼저 보는 편이 좋아요.
  • 설치 용량이 작지 않아요. OpenJDK 21이 배포판에 함께 들어가는 구조라 가벼운 단일 바이너리 클라이언트와는 성격이 달라요.

여러 벤더를 오가는 사람에게 값이 큰 도구예요

DB가 한 종류뿐이고 벤더 전용 툴에 이미 익숙하다면 굳이 바꿀 이유는 크지 않아요. 반대로 Postgres와 MySQL과 SQLite를 하루에도 여러 번 오가는 상황이라면 커뮤니티 에디션이 선택지에 들어와요. 유료 GUI 라이선스를 팀 인원수만큼 사기 어려운 경우도 마찬가지예요. 온프레미스나 폐쇄망처럼 클라우드 기반 클라이언트를 쓰기 어려운 환경도 후보가 돼요.

시작 순서는 이렇게 잡으면 무리가 없어요. 공식 사이트에서 커뮤니티 에디션을 받아 설치한 다음, SQLite 파일이나 로컬 Postgres처럼 부담 없는 대상으로 첫 연결을 만들어 Test Connection까지 확인해요. 그다음 트리에서 테이블을 우클릭해 Generate SQL로 쿼리 초안을 뽑아봐요. Ctrl+Enter와 Alt+X의 차이를 손에 익히면 기본기는 갖춰져요. 마지막으로 테이블을 더블클릭해 ER 다이어그램을 열어보면 스키마 파악 속도가 달라져요.

설치 메모 커뮤니티 에디션은 공식 사이트 다운로드 페이지와 GitHub 릴리스 양쪽에서 받아요. 설치 권한이 없는 장비라면 압축 배포판을 풀어 실행하는 경로를 확인해보세요. 별도 자바 설치는 필요 없어요.
주의 운영 데이터베이스에 연결할 때는 스크립트 전체 실행(Alt+X)과 커서 문장 실행(Ctrl+Enter)을 구분해 쓰고, ER 다이어그램의 Edit mode는 스키마 변경 스크립트를 만드는 기능이라는 점을 기억해두세요.

이 글은 직접 사용기가 아니라 DBeaver 공식 사이트와 문서를 확인해 정리한 객관 소개예요. 단축키·에디션 구분·지원 포맷은 문서 확인 시점(2026년 8월) 기준이에요. 버전과 플랫폼에 따라 표기가 다를 수 있어요. 도입 전 공식 문서에서 최신 표기를 확인해보세요.

반응형

📚 같이 보면 좋은

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 일정액의 수수료를 제공받습니다."