DATABASE_URL로 연결
어떤 데이터베이스든 가장 빠르게 연결하는 방법 — URL 문자열 하나를 붙여넣기만 하면 됩니다.
호스트, 포트, 사용자 이름, 비밀번호, 데이터베이스 이름을 별도의 필드에 채우는 대신, DATABASE_URL이라는 단일 문자열을 붙여넣어 어떤 데이터베이스든 연결할 수 있습니다. 가장 빠르게 연결하는 방법이며 대부분의 클라우드 데이터베이스 제공업체는 대시보드에서 바로 복사할 수 있는 URL을 제공합니다.
DATABASE_URL이란?
DATABASE_URL은 데이터베이스 연결을 여는 데 필요한 모든 것을 인코딩한 한 줄의 텍스트입니다. 웹 주소(URL)와 동일한 패턴을 따르므로 읽고 도구 간에 공유하기 쉽습니다.
PostgreSQL DATABASE_URL 예시:
postgresql://myuser:[email protected]:5432/myapp_production
각 부분을 살펴보겠습니다:
| 부분 | 예시 값 | 의미 |
|---|---|---|
| 엔진 | postgresql:// | 데이터베이스 유형. 1DevTool이 어떤 드라이버를 사용할지 알려줍니다. |
| 사용자 이름 | myuser | 로그인하는 데이터베이스 사용자. |
| 비밀번호 | mypassword | 해당 사용자의 비밀번호. |
| 호스트 | db.example.com | 데이터베이스가 실행 중인 서버. 도메인 이름 또는 IP 주소일 수 있습니다. |
| 포트 | 5432 | 데이터베이스가 수신하는 네트워크 포트. PostgreSQL의 기본값은 5432입니다. |
| 데이터베이스 이름 | myapp_production | 해당 서버에서 연결하려는 특정 데이터베이스(또는 스키마). |
이 URL을 1DevTool에 붙여넣으면 각 부분을 자동으로 읽고 모든 연결 필드를 채워줍니다. 수동으로 anything을 입력할 필요가 없습니다.
DATABASE_URL 찾는 방법
모든 클라우드 데이터베이스 제공업체는 대시보드 어딘가에 연결 문자열을 제공합니다. 가장 일반적인 곳에서 찾는 방법:
Supabase
프로젝트 → Project Settings (사이드바의 기어 아이콘) → Database 탭 → Connection String까지 스크롤 → URI 탭 클릭. 표시된 문자열을 복사합니다. postgresql://postgres:[YOUR-PASSWORD]@...supabase.co:5432/postgres와 같은 형태입니다.
Neon
Dashboard → 프로젝트 선택 → 오른쪽 패널에서 Connection Details 클릭 → Connection string 복사. Neon은 서버리스 엔드포인트가 있는 postgresql:// URL을 사용합니다.
PlanetScale
데이터베이스 → Connect 클릭 → 프레임워크 드롭다운에서 "Other" 선택 → 연결 문자열 복사. PlanetScale은 SSL 인증서가 내장되거나 매개변수를 통해 필요한 mysql:// URL을 사용합니다.
Railway
프로젝트 열기 → 데이터베이스 서비스 클릭 → Variables 탭 → DATABASE_URL 찾기. Railway는 이 변수를 앱에 자동으로 주입하므로 환경에 이미 있을 수 있습니다.
Heroku
앱 → Settings 탭 → Config Vars까지 스크롤 → DATABASE_URL 찾기. Heroku는 Heroku Postgres 애드온에 대해 이를 자동으로 설정합니다.
로컬 PostgreSQL (자신의 머신에서 실행) PostgreSQL을 로컬에 설치하고 기본값을 변경하지 않았다면 URL은 다음과 같습니다:
postgresql://postgres:password@localhost:5432/mydb
password를 실제 postgres 사용자 비밀번호로, mydb를 생성한 데이터베이스 이름으로 바꾸세요.
로컬 MySQL
mysql://root:password@localhost:3306/mydb
단계별: 1DevTool에서 연결
- 1DevTool에서 프로젝트를 연 다음 왼쪽 툴바에서 Database 아이콘(원통 기호)을 클릭하거나 Mac에서 Cmd+D / Windows에서 Ctrl+D를 누릅니다.
- 데이터베이스 패널 왼쪽의 연결 레일에서 + 버튼을 클릭합니다. Add Connection이라는 다이얼로그가 열립니다.
- 다이얼로그 상단에 **"Paste DATABASE_URL"**이라는 필드가 표시됩니다. 해당 필드를 클릭합니다.
- DATABASE_URL을 붙여넣습니다. 붙여넣는 즉시 1DevTool이 URL을 읽고 아래의 Host, Port, User, Password, Database 필드를 자동으로 채웁니다. 실시간으로 채워지는 것을 볼 수 있습니다.
- **"Test Connection"**을 클릭합니다. 1DevTool이 데이터베이스에 연결을 시도합니다. 성공하면 녹색 체크 표시와 "Connection successful" 메시지가 표시됩니다.
- **"Save"**를 클릭합니다. 연결이 이 프로젝트에 저장됩니다. 다음에 1DevTool을 열 때도 그대로 있습니다.
- 테이블과 컬렉션이 왼쪽 사이드바에 표시됩니다. 연결 완료 및 쿼리 준비 완료.


모든 엔진의 DATABASE_URL 형식
수동으로 구성하거나 검증할 수 있도록 지원되는 모든 엔진의 URL 형식:
# PostgreSQL (Supabase, Neon, Timescale, CockroachDB 포함)
postgresql://username:password@host:5432/database
# MySQL (MariaDB 포함)
mysql://username:password@host:3306/database
# Microsoft SQL Server
mssql://username:password@host:1433/database
# MongoDB (표준)
mongodb://username:password@host:27017/database
# MongoDB Atlas (클라우드 — SRV 형식 사용)
mongodb+srv://username:[email protected]/database
# Redis (인증 없음)
redis://host:6379
# Redis (비밀번호 있음)
redis://:password@host:6379
# TLS/SSL이 있는 Redis
rediss://:password@host:6380
# ClickHouse
clickhouse://username:password@host:9000/database
# Elasticsearch (인증 없음)
elasticsearch://host:9200
# Elasticsearch (인증 있음)
elasticsearch://username:password@host:9200
# CouchDB
couchdb://username:password@host:5984/database
일반적인 연결 오류
테스트 연결이 실패하면 이 표가 문제 원인을 파악하는 데 도움이 됩니다:
| 오류 | 발생 이유 | 해결 방법 |
|---|---|---|
| Connection refused | 데이터베이스가 실행 중이지 않거나 포트 번호가 잘못됨 | 데이터베이스 서버가 시작되었는지 확인합니다. 포트가 DB가 사용하도록 구성된 포트와 일치하는지 확인합니다. |
| Authentication failed | 사용자 이름 또는 비밀번호가 잘못됨 | 자격 증명을 다시 확인합니다. 대시보드에서 복사한 경우 공백이 실수로 포함되지 않았는지 확인합니다. |
| SSL required | 클라우드 데이터베이스가 암호화된 연결을 필요로 하지만 URL이 요청하지 않음 | PostgreSQL URL 끝에 ?sslmode=require를 추가하거나 MySQL의 경우 ?ssl=true를 추가합니다. |
| Unknown host / could not resolve host | 호스트 이름이 잘못 입력되었거나 머신이 연결할 수 없음 | 호스트 이름의 오타를 확인합니다. 비공개 데이터베이스에 연결하는 경우 VPN이 연결되어 있는지 확인합니다. |
| Timeout | 데이터베이스 호스트에 도달할 수 없음 (방화벽 또는 잘못된 IP) | IP 주소가 데이터베이스의 허용 목록에 있는지 확인합니다. 대부분의 클라우드 제공업체는 설정에 "Network" 또는 "Trusted IPs" 섹션이 있습니다. |
경고: DATABASE_URL을 Git에 커밋하지 마세요. 데이터베이스 비밀번호가 일반 텍스트로 포함되어 있습니다.
.env파일에 저장하고.env를.gitignore에 추가하세요. 실수로 커밋한 경우, 데이터베이스 제공업체 대시보드에서 즉시 비밀번호를 변경하세요.
팁: 1DevTool은 연결 세부정보를 로컬 머신에 암호화하여 저장합니다. 컴퓨터를 떠나지 않으며 어떤 서버로도 전송되지 않습니다.