เชื่อมต่อด้วย DATABASE_URL
วิธีเชื่อมต่อ database ที่เร็วที่สุด — วาง URL string เดียวแล้วคุณเข้าไปเลย
แทนที่จะต้องกรอกฟอร์มที่มีช่องแยกสำหรับ host, port, username, password และชื่อ database คุณสามารถเชื่อมต่อ database ใดๆ ได้โดยการวาง string เดียวที่เรียกว่า DATABASE_URL เป็นวิธีที่เร็วที่สุดในการเชื่อมต่อ และผู้ให้บริการ cloud database ส่วนใหญ่ให้ URL ที่คุณสามารถคัดลอกตรงจาก dashboard ของพวกเขา
DATABASE_URL คืออะไร?
DATABASE_URL เป็นข้อความบรรทัดเดียวที่เข้ารหัสทุกสิ่งที่จำเป็นในการเปิดการเชื่อมต่อ database ใช้รูปแบบเดียวกับที่อยู่เว็บ (URL) ทำให้อ่านง่ายและแชร์ระหว่างเครื่องมือได้ง่าย
นี่คือตัวอย่าง PostgreSQL DATABASE_URL:
postgresql://myuser:[email protected]:5432/myapp_production
มาแยกแต่ละส่วนกัน:
| ส่วน | ตัวอย่างค่า | ความหมาย |
|---|---|---|
| Engine | postgresql:// | ประเภทของ database บอก 1DevTool ว่าต้องใช้ driver ใด |
| Username | myuser | ผู้ใช้ database ที่คุณล็อกอินเป็น |
| Password | mypassword | รหัสผ่านของผู้ใช้นั้น |
| Host | db.example.com | เซิร์ฟเวอร์ที่ database รันอยู่ อาจเป็นชื่อโดเมนหรือที่อยู่ IP |
| Port | 5432 | พอร์ตเครือข่ายที่ database ฟังอยู่ PostgreSQL ใช้ค่าเริ่มต้นที่ 5432 |
| ชื่อ Database | myapp_production | database เฉพาะ (หรือ schema) บนเซิร์ฟเวอร์นั้นที่คุณต้องการเชื่อมต่อ |
เมื่อคุณวาง URL นี้ใน 1DevTool มันจะอ่านแต่ละส่วนอัตโนมัติและกรอกช่องการเชื่อมต่อทั้งหมดให้คุณ คุณไม่ต้องพิมพ์อะไรด้วยตนเอง
หา DATABASE_URL ของคุณได้ที่ไหน
ผู้ให้บริการ cloud database ทุกเจ้าแสดง connection string ที่ใดที่หนึ่งใน dashboard ของพวกเขา นี่คือที่ที่ต้องดูสำหรับเจ้าที่พบบ่อยที่สุด:
Supabase
ไปที่โปรเจกต์ของคุณ → Project Settings (ไอคอนเกียร์ใน sidebar) → แท็บ Database → เลื่อนไปที่ Connection String → คลิกแท็บ URI คัดลอก string ที่แสดง จะมีลักษณะเหมือน postgresql://postgres:[YOUR-PASSWORD]@...supabase.co:5432/postgres
Neon
ไปที่ Dashboard ของคุณ → เลือกโปรเจกต์ → คลิก Connection Details ใน panel ด้านขวา → คัดลอก Connection string Neon ใช้ URL postgresql:// พร้อม serverless endpoint
PlanetScale
ไปที่ database ของคุณ → คลิก Connect → เลือก "Other" จาก dropdown framework → คัดลอก connection string PlanetScale ใช้ URL mysql:// พร้อม SSL certificate ฝังอยู่หรือต้องการผ่าน parameter
Railway
เปิดโปรเจกต์ของคุณ → คลิกที่ database service → ไปที่แท็บ Variables → หา DATABASE_URL Railway inject ตัวแปรนี้เข้าสู่แอปของคุณอัตโนมัติ ดังนั้นคุณอาจมีมันอยู่ใน environment แล้ว
Heroku
ไปที่แอปของคุณ → แท็บ Settings → เลื่อนไปที่ Config Vars → หา DATABASE_URL Heroku ตั้งค่านี้อัตโนมัติสำหรับ Heroku Postgres add-on ใดๆ
Local PostgreSQL (รันบนเครื่องของคุณเอง) หากคุณติดตั้ง PostgreSQL บน local และไม่ได้เปลี่ยนค่าเริ่มต้น URL ของคุณคือ:
postgresql://postgres:password@localhost:5432/mydb
แทนที่ password ด้วยรหัสผ่านผู้ใช้ postgres จริงของคุณ และ mydb ด้วยชื่อ database ที่คุณสร้าง
Local MySQL
mysql://root:password@localhost:3306/mydb
ทีละขั้นตอน: เชื่อมต่อใน 1DevTool
- เปิดโปรเจกต์ของคุณใน 1DevTool แล้วคลิกไอคอน Database ใน toolbar ด้านซ้าย (สัญลักษณ์กระบอกสูบ) หรือกด Cmd+D บน Mac / Ctrl+D บน Windows
- คลิกปุ่ม + ใน connection rail ด้านซ้ายของ database panel Dialog ชื่อ Add Connection จะเปิดขึ้น
- ด้านบนของ dialog คุณจะเห็นช่องที่ระบุว่า "Paste DATABASE_URL" คลิกที่ช่องนั้น
- วาง DATABASE_URL ของคุณ ทันทีที่คุณวาง 1DevTool จะอ่าน URL และกรอกช่อง Host, Port, User, Password และ Database ด้านล่างอัตโนมัติ คุณจะเห็นพวกมันเติมแบบ real time
- คลิก "Test Connection" 1DevTool จะพยายามเปิดการเชื่อมต่อกับ database ของคุณ หากสำเร็จ คุณจะเห็นเครื่องหมายถูกสีเขียวและข้อความ "Connection successful"
- คลิก "Save" การเชื่อมต่อถูกบันทึกสำหรับโปรเจกต์นี้ มันจะอยู่ที่นั่นครั้งถัดไปที่คุณเปิด 1DevTool
- ตารางและ collections ของคุณจะปรากฏใน sidebar ด้านซ้าย คุณเชื่อมต่อและพร้อม query แล้ว


รูปแบบ DATABASE_URL สำหรับทุก Engine
นี่คือรูปแบบ URL สำหรับ engines ทั้งหมดที่รองรับ เพื่อให้คุณสามารถสร้างหรือยืนยันด้วยตนเอง:
# 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 (cloud — ใช้รูปแบบ SRV)
mongodb+srv://username:[email protected]/database
# Redis (ไม่มี auth)
redis://host:6379
# Redis (พร้อม password)
redis://:password@host:6379
# Redis พร้อม TLS/SSL
rediss://:password@host:6380
# ClickHouse
clickhouse://username:password@host:9000/database
# Elasticsearch (ไม่มี auth)
elasticsearch://host:9200
# Elasticsearch (พร้อม auth)
elasticsearch://username:password@host:9200
# CouchDB
couchdb://username:password@host:5984/database
ข้อผิดพลาดการเชื่อมต่อทั่วไป
หากการทดสอบการเชื่อมต่อล้มเหลว ตารางนี้จะช่วยคุณหาสิ่งที่ผิดพลาด:
| ข้อผิดพลาด | ทำไมจึงเกิดขึ้น | วิธีแก้ไข |
|---|---|---|
| Connection refused | Database ไม่รันอยู่ หรือหมายเลข port ผิด | ตรวจสอบว่า database server เริ่มแล้ว ยืนยันว่า port ตรงกับที่ DB ของคุณตั้งค่าใช้ |
| Authentication failed | Username หรือ password ผิด | ตรวจสอบ credentials อีกครั้ง หากคุณคัดลอกมาจาก dashboard ตรวจสอบว่าคุณไม่ได้รวม whitespace เกินมาโดยไม่ได้ตั้งใจ |
| SSL required | Cloud database ต้องการการเชื่อมต่อที่เข้ารหัส แต่ URL ไม่ได้ขอ | เพิ่ม ?sslmode=require ต่อท้าย URL PostgreSQL ของคุณ หรือ ?ssl=true สำหรับ MySQL |
| Unknown host / could not resolve host | ชื่อ host พิมพ์ผิด หรือเครื่องของคุณไม่สามารถเข้าถึงได้ | ตรวจสอบการพิมพ์ผิดในชื่อ host หากเชื่อมต่อกับ database ส่วนตัว ตรวจสอบว่า VPN ของคุณเชื่อมต่ออยู่ |
| Timeout | Host ของ database เข้าถึงไม่ได้ (firewall หรือ IP ผิด) | ตรวจสอบว่าที่อยู่ IP ของคุณอยู่ใน allowlist ของ database ผู้ให้บริการ cloud ส่วนใหญ่มีส่วนที่เรียกว่า "Network" หรือ "Trusted IPs" ในการตั้งค่า |
คำเตือน: อย่า commit DATABASE_URL ของคุณลงใน Git มันมีรหัสผ่าน database ของคุณเป็น plain text เก็บไว้ในไฟล์
.envและเพิ่ม.envลงใน.gitignoreของคุณ หากคุณ commit โดยไม่ได้ตั้งใจ ให้เปลี่ยนรหัสผ่านทันทีใน dashboard ของผู้ให้บริการ database
เคล็ดลับ: 1DevTool เก็บรายละเอียดการเชื่อมต่อของคุณแบบเข้ารหัสบนเครื่อง local ของคุณ พวกมันไม่เคยออกจากคอมพิวเตอร์ของคุณและไม่ถูกส่งไปยังเซิร์ฟเวอร์ใดๆ