Navicat으로 ServBay 데이터베이스 관리하기
Navicat은 개발자들 사이에서 인기 있는 강력한 데이터베이스 관리 및 개발 도구로, MySQL, MariaDB, PostgreSQL, SQLite, Redis 등 다양한 주요 데이터베이스 시스템을 지원합니다. ServBay를 로컬 웹 개발 환경으로 사용하는 개발자라면 Navicat과 결합해 데이터베이스를 훨씬 효율적이고 편리하게 관리할 수 있습니다.
이 문서에서는 Navicat을 이용해 ServBay에서 제공하는 데이터베이스 인스턴스에 연결하고 관리하는 방법을 안내합니다.
Navicat이란?
Navicat은 직관적이고 기능이 풍부한 그래픽 사용자 인터페이스(GUI)를 제공하여, 복잡한 데이터베이스 작업(데이터베이스 구조 시각적 설계, SQL 쿼리 실행, 데이터 가져오기/내보내기, 데이터베이스 동기화 등)을 쉽게 수행할 수 있도록 도와줍니다.
Navicat의 주요 장점은 다음과 같습니다.
- 광범위한 데이터베이스 지원: 하나의 도구로 여러 종류의 데이터베이스를 손쉽게 관리할 수 있습니다.
- 사용자 친화적 인터페이스: 데이터베이스 초보자도 빠르게 익혀 활용할 수 있을 만큼 쉽습니다.
- 우수한 성능: 데이터 처리 속도와 쿼리 실행이 최적화되어 있습니다.
- 풍부한 기능 제공: 데이터베이스 설계, 개발, 관리, 유지보수 전반을 커버합니다.
Navicat과 ServBay를 함께 활용하면 ServBay의 데이터베이스 서비스를 효과적으로 시각적으로 관리할 수 있어, 로컬 개발 워크플로우의 생산성이 크게 향상됩니다.
사전 준비 사항
작업을 시작하기 전에 다음을 준비했는지 확인하세요.
- macOS에서 ServBay를 이미 다운로드하고 설치했으며, ServBay가 실행 중이어야 합니다.
- 연결하려는 데이터베이스(MariaDB/MySQL, PostgreSQL, Redis 등)가 ServBay에서 실행 중이어야 합니다.
- Navicat 클라이언트를 다운로드 및 설치해야 합니다. 운영체제에 맞는 버전은 Navicat 공식 웹사이트에서 얻을 수 있습니다.
Navicat으로 ServBay 기본 MariaDB(MySQL) 데이터베이스 관리하기
ServBay는 기본적으로 MariaDB 또는 MySQL 데이터베이스 서비스를 제공합니다. 아래는 Navicat으로 이 데이터베이스에 연결하고 관리하는 방법입니다.
데이터베이스 연결
- Navicat 클라이언트를 실행합니다.
- 왼쪽 상단의 '연결' 버튼이나 메뉴에서 'MySQL' 또는 'MariaDB'를 선택해 새 연결을 만듭니다.
- 연결 설정 창에서 다음 정보를 입력합니다.
- 연결 이름: 식별하기 쉬운 이름(예:
ServBay MariaDB
또는ServBay MySQL
)을 입력합니다. - 호스트명/IP 주소:
127.0.0.1
또는localhost
를 입력합니다. - 포트(Port):
3306
을 입력합니다. - 사용자명(Username) 및 비밀번호(Password): ServBay 앱의 데이터베이스 탭에서 해당 정보를 확인할 수 있습니다. ServBay에 표시된 정확한 사용자명과 비밀번호를 사용하세요.
- 소켓 파일(Socket): TCP/IP(호스트명/포트) 대신 소켓으로 연결할 수도 있습니다. ServBay MariaDB/MySQL의 소켓 파일 경로는 보통
/Applications/ServBay/tmp/mysql.sock
입니다.
참고: Port와 Socket 항목 중 하나만 입력하면 됩니다. Socket을 사용할 경우 호스트명, 포트 입력 없이 소켓 경로만 입력하면 됩니다.
소켓 연결은 로컬에서 더 빠르고 효율적입니다. - 데이터베이스 이름(Database Name): 비워두고 연결한 뒤 선택 또는 새로 생성할 수 있습니다.
- 연결 이름: 식별하기 쉬운 이름(예:
- '연결 테스트' 버튼을 눌러 연결이 정상적으로 되는지 확인합니다.
- 테스트가 성공하면 '확인'을 눌러 연결을 저장하고 연결합니다.
데이터베이스 생성
- Navicat 왼쪽 연결 목록에서 방금 만든 ServBay MariaDB/MySQL 연결을 마우스 오른쪽 버튼으로 클릭합니다.
- '새 데이터베이스'를 선택합니다.
- 만들고자 하는 데이터베이스 이름을 입력합니다.
- 적절한 문자 집합과 정렬 방식(
utf8mb4
및utf8mb4_unicode_ci
권장)을 선택합니다. - '확인'을 눌러 데이터베이스 생성을 마무리합니다.
테이블 생성
- Navicat 왼쪽 목록에서 ServBay 연결을 펼치고, 방금 생성한 데이터베이스를 선택합니다.
- 데이터베이스 이름 또는 '테이블' 항목을 마우스 오른쪽 버튼으로 클릭하고 '새 테이블'을 선택합니다.
- 테이블 디자이너에서 테이블 이름을 입력하고, 각 필드(열) 정보(필드명, 데이터 타입, 길이, NULL 허용 여부, 기본값, PK, 인덱스 등)를 정의합니다.
- 설계가 완료되면 도구 막대의 '저장'을 클릭하고, 테이블명을 입력한 뒤 '확인'을 누릅니다.
데이터 추가(레코드 삽입)
- Navicat 왼쪽 목록에서 작업할 테이블을 선택합니다.
- 오른쪽 데이터 뷰에서 도구 막대의 '삽입' 버튼을 클릭합니다.
- 새로 나타난 빈 행에 각 필드의 값에 맞는 데이터를 입력합니다.
- 입력이 끝나면 도구 막대의 '저장' 버튼을 클릭합니다.
데이터 조회(레코드 탐색)
- Navicat 왼쪽 목록에서 작업할 테이블을 선택합니다.
- 오른쪽 데이터 뷰에서 테이블의 전체 데이터를 바로 확인할 수 있습니다.
- 도구 막대의 '쿼리' 버튼을 클릭해 SQL 에디터에서 SELECT 문으로 원하는 데이터를 필터링, 조회할 수도 있습니다.
데이터 업데이트(레코드 수정)
- Navicat 왼쪽 목록에서 작업할 테이블을 선택합니다.
- 오른쪽 데이터 뷰에서 수정하려는 행의 필드 값을 더블 클릭합니다.
- 데이터를 수정합니다.
- 수정이 완료되면 도구 막대의 '저장' 버튼을 클릭합니다.
데이터 삭제(레코드 삭제)
- Navicat 왼쪽 목록에서 작업할 테이블을 선택합니다.
- 오른쪽 데이터 뷰에서 삭제하려는 행을 선택합니다(Shift 또는 Ctrl/Cmd를 누르면 다중 선택 가능).
- 선택한 행을 마우스 오른쪽 버튼으로 클릭해 '레코드 삭제'를 선택하거나 도구 막대의 '삭제' 버튼을 클릭합니다.
- 확인 대화창에서 '예'를 눌러 삭제를 확정합니다.
테이블 삭제
- Navicat 왼쪽 목록에서 삭제할 테이블이 포함된 데이터베이스를 선택합니다.
- 삭제할 테이블 이름을 마우스 오른쪽 버튼으로 클릭해 '테이블 삭제'를 선택합니다.
- 확인 대화창에서 '예'를 눌러 삭제를 확정합니다.
데이터베이스 삭제
- Navicat 왼쪽 목록에서 삭제할 데이터베이스 이름을 마우스 오른쪽 버튼으로 클릭합니다.
- '데이터베이스 삭제'를 선택합니다.
- 확인 대화창에서 '예'를 눌러 삭제를 확정합니다.
주의: 이 작업은 데이터베이스 및 모든 데이터를 영구적으로 삭제합니다. 신중히 진행하세요.
Navicat으로 ServBay PostgreSQL 데이터베이스 관리하기
ServBay는 PostgreSQL 데이터베이스도 지원합니다. 아래는 Navicat으로 ServBay PostgreSQL 인스턴스에 연결하고 관리하는 방법입니다.
데이터베이스 연결
- Navicat 클라이언트를 실행합니다.
- 왼쪽 상단의 '연결' 버튼이나 메뉴에서 'PostgreSQL'을 선택해 새 연결을 만듭니다.
- 연결 설정 창에서 다음 정보를 입력합니다.
- 연결 이름: 예)
ServBay PostgreSQL
- 호스트명/IP 주소(Host):
127.0.0.1
또는localhost
- 포트(Port):
5432
- 사용자명(Username) 및 비밀번호(Password): ServBay 앱의 데이터베이스 탭에서 확인할 수 있습니다.
- 소켓 파일(Socket): ServBay PostgreSQL의 소켓 파일 경로는 일반적으로
/Applications/ServBay/tmp/.s.PGSQL.5432
입니다.
참고: 소켓 경로를 입력하면 보통 호스트명과 포트 입력은 필요하지 않습니다. - 데이터베이스 이름(Database Name): 최초 연결 시 'postgres'와 같은 기본 데이터베이스로 접속 후, 원하는 데이터베이스로 전환하거나 새로 만들 수 있습니다.
- 연결 이름: 예)
- '연결 테스트' 버튼을 눌러 연결이 정상인지 확인합니다.
- 테스트가 성공하면 '확인'을 눌러 연결을 저장하고 연결합니다.
데이터베이스 생성
- Navicat 왼쪽 연결 목록에서 방금 만든 ServBay PostgreSQL 연결을 마우스 오른쪽 버튼으로 클릭합니다.
- '새 데이터베이스'를 선택합니다.
- 원하는 데이터베이스 이름을 입력합니다.
- 적절한 템플릿, 인코딩, 정렬 규칙을 선택합니다.
- '확인'을 눌러 데이터베이스를 생성합니다.
테이블 생성
- Navicat 왼쪽 목록에서 ServBay 연결을 펼치고, 방금 생성한 데이터베이스를 선택합니다.
- 데이터베이스 이름 또는 '테이블' 아래의 항목을 마우스 오른쪽 버튼으로 클릭하고 '새 테이블'을 선택합니다.
- 테이블 디자이너에서 테이블명과 각 필드(컬럼) 속성(필드명, 데이터형, 길이, NULL 허용, 기본값, PK, 인덱스 등)을 정의합니다.
- 설계가 끝나면 도구 막대 '저장'을 눌러 테이블 이름을 입력한 뒤 '확인'합니다.
데이터 추가
(MariaDB/MySQL 파트의 "데이터 추가"와 동일합니다. 위 절차를 참고하세요.)
데이터 조회
(MariaDB/MySQL 파트의 "데이터 조회"와 동일합니다. 위 절차를 참고하세요.)
데이터 업데이트
(MariaDB/MySQL 파트의 "데이터 업데이트"와 동일합니다. 위 절차를 참고하세요.)
데이터 삭제
(MariaDB/MySQL 파트의 "데이터 삭제"와 동일합니다. 위 절차를 참고하세요.)
테이블 삭제
(MariaDB/MySQL 파트의 "테이블 삭제"와 동일합니다. 위 절차를 참고하세요.)
데이터베이스 삭제
(MariaDB/MySQL 파트의 "데이터베이스 삭제"와 동일합니다. 위 절차를 참고하세요.)
Navicat으로 SQLite 3 데이터베이스 관리하기
SQLite는 가볍고 내장형 데이터베이스 엔진으로, 데이터가 파일 하나에 저장됩니다. ServBay는 SQLite 데이터베이스 파일을 손쉽게 연동해 사용할 수 있습니다.
데이터베이스 연결
서버 연결과 달리, SQLite는 데이터베이스 파일에 직접 연결하는 방식입니다.
- Navicat 클라이언트를 실행합니다.
- 왼쪽 상단의 '연결' 버튼이나 메뉴에서 'SQLite'를 선택해 새 연결을 만듭니다.
- 연결 설정 창에서 다음 정보를 입력합니다.
- 연결 이름: 예)
ServBay SQLite DB
- 데이터베이스 파일(Database File): 옆 버튼을 클릭해
.sqlite
또는.db
데이터베이스 파일을 선택하세요.
SQLite 데이터베이스 파일은/Applications/ServBay/db/sqlite/
와 같이 ServBay 데이터 디렉터리에 위치시키는 것이 좋습니다.
- 연결 이름: 예)
- (파일이 이미 있다면) '연결 테스트' 버튼을 클릭해 파일 접근성 여부를 확인합니다.
- '확인'을 눌러 연결을 저장하고 연결합니다.
데이터베이스 생성
SQLite 데이터베이스 생성은 곧 새 데이터베이스 파일을 만드는 과정입니다.
- Navicat 연결 창에서 'SQLite'를 선택합니다.
- 연결 이름을 입력합니다.
- '데이터베이스 파일' 경로에 원하는 새 데이터베이스 파일의 전체 경로와 이름(예:
/Applications/ServBay/db/sqlite/my_new_database.db
)을 입력합니다. - '확인'을 눌러 연결을 저장합니다.
Navicat은 처음 연결 또는 작업 시 새 파일을 만들지 여부를 묻는 메시지를 표시합니다.
테이블 생성
- Navicat 왼쪽 목록에서 연결/생성한 SQLite 데이터베이스를 선택합니다.
- 데이터베이스 이름을 마우스 오른쪽 버튼으로 클릭해 '새 테이블'을 선택합니다.
- 테이블 디자이너에서 테이블명과 각 필드 정보를 입력합니다.
- 설계 완료 후 도구 막대 '저장'을 누르고, 테이블명을 입력한 뒤 '확인'합니다.
데이터 추가
(MariaDB/MySQL 파트의 "데이터 추가"와 동일합니다. 위 절차를 참고하세요.)
데이터 조회
(MariaDB/MySQL 파트의 "데이터 조회"와 동일합니다. 위 절차를 참고하세요.)
데이터 업데이트
(MariaDB/MySQL 파트의 "데이터 업데이트"와 동일합니다. 위 절차를 참고하세요.)
데이터 삭제
(MariaDB/MySQL 파트의 "데이터 삭제"와 동일합니다. 위 절차를 참고하세요.)
테이블 삭제
(MariaDB/MySQL 파트의 "테이블 삭제"와 동일합니다. 위 절차를 참고하세요.)
데이터베이스 삭제
SQLite 데이터베이스 삭제는 실제로 해당 데이터베이스 파일을 직접 지우는 것입니다.
- Navicat 왼쪽 목록에서 삭제할 SQLite 연결을 마우스 오른쪽 버튼으로 클릭해 '연결 삭제'를 선택합니다. 이는 Navicat에서 연결 정보만 제거하며, 실제 파일은 삭제되지 않습니다.
- 데이터베이스를 완전히 삭제하려면 해당
.sqlite
또는.db
파일을 수동으로 찾아 직접 삭제해야 합니다. macOS Finder에서 예:/Applications/ServBay/db/sqlite/
디렉터리로 이동해 해당 파일을 삭제하세요.
이 작업은 데이터베이스와 모든 데이터를 영구적으로 삭제하니, 신중히 진행하세요.
Navicat으로 ServBay의 Redis 데이터베이스 관리하기
Redis는 고성능 키-값 저장소 데이터베이스로, 주로 캐싱, 메시지 큐 등에 사용됩니다. ServBay는 기본적으로 Redis 서비스를 제공합니다.
데이터베이스 연결
- Navicat 클라이언트를 실행합니다.
- 왼쪽 상단의 '연결' 버튼이나 메뉴에서 'Redis'를 선택해 새 연결을 만듭니다.
- 연결 설정 창에서 다음 정보를 입력합니다.
- 연결 이름: 예)
ServBay Redis
- 호스트명/IP 주소:
127.0.0.1
또는localhost
- 포트(Port):
6379
- 비밀번호(Password): ServBay에 기본 포함된 Redis는 비밀번호가 없는 경우가 많습니다. 수동으로 암호를 설정하지 않았다면 이 항목은 비워두세요.
- 연결 이름: 예)
- '연결 테스트' 버튼을 눌러 연결 정보를 확인합니다.
- 테스트가 성공하면 '확인'을 눌러 연결을 저장하고 연결을 엽니다.
데이터 관리(키-값 조작)
Redis는 키-값 저장소로, MySQL과 같은 관계형 데이터베이스와 다르게 관리합니다. Navicat은 Redis의 키(Key)와 값(Value)을 그래픽 인터페이스로 편리하게 조작할 수 있도록 지원합니다.
- Navicat 왼쪽 목록에서 새로 만든 ServBay Redis 연결을 선택합니다.
- 오른쪽 뷰에서 현재 Redis 인스턴스의 모든 데이터베이스(DB 0~15 기본 제공)를 볼 수 있습니다. 원하는 DB(예: DB 0)을 더블 클릭해 진입합니다.
- 키 조회: 데이터베이스 뷰에서 해당 DB의 모든 키가 나열됩니다. 상단의 검색 혹은 필터를 사용해 특정 키를 빠르게 찾을 수 있습니다.
- 키 추가: 도구 막대 '새 키' 버튼을 클릭하고 키 타입(String, List, Hash, Set, Sorted Set 중 선택), 키 이름, 값을 입력 후 '저장'을 누릅니다.
- 키 편집: 키 목록에서 더블 클릭하여 값, 유형, 만료 시간(TTL) 등을 수정하고 '저장'을 클릭합니다.
- 키 삭제: 삭제할 키를 선택(다중 선택 가능)한 뒤 마우스 오른쪽 버튼으로 '키 삭제'를 선택하거나 도구 막대의 '삭제' 버튼을 클릭합니다. 확인 창에서 '예'를 누르세요.
자주 묻는 질문(FAQ)
- 데이터베이스 연결이 거부되었다는 오류가 나요.
- ServBay 앱이 실행 중이며, 연결하려는 데이터베이스 서비스(MariaDB/MySQL, PostgreSQL, Redis 등)가 ServBay에서 실행되고 있는지 확인하세요(ServBay 메인 화면에서 서비스 상태 확인).
- Navicat에서 입력한 연결 정보(호스트명 127.0.0.1, 포트: MariaDB/MySQL 3306, PostgreSQL 5432, Redis 6379 등)가 올바른지 재확인하세요.
- Socket 연결을 사용할 경우, 소켓 파일 경로(
/Applications/ServBay/tmp/mysql.sock
,/Applications/ServBay/tmp/.s.PGSQL.5432
등)가 맞는지 점검하세요. - 방화벽 설정을 확인해 Navicat의 로컬 포트 연결이 차단되지 않았는지 확인하세요.
- 데이터베이스 사용자명이나 비밀번호를 잊어버렸어요.
- ServBay 데이터베이스의 기본 사용자명, 비밀번호는 ServBay 앱의 데이터베이스 탭에서 확인할 수 있습니다. ServBay 앱에서 직접 확인하세요.
요약
이 안내를 통해 Navicat이라는 강력한 데이터베이스 관리 도구로 ServBay 로컬 개발 환경의 MariaDB/MySQL, PostgreSQL, SQLite, Redis 데이터베이스에 연결하는 방법을 익히셨으리라 생각합니다.
Navicat의 시각적 GUI를 잘 활용하면 데이터베이스 구조 설계부터 데이터 조작과 관리까지 더욱 효율적으로 진행할 수 있습니다.
ServBay는 안정적이고 신뢰할 수 있는 데이터베이스 백엔드를 제공하고, Navicat은 누구나 쉽게 쓸 수 있는 관리 도구를 제공합니다. 이 둘의 조합은 개발자가 로컬 데이터베이스 개발을 빠르고 생산적으로 수행하는 데 가장 이상적입니다.