PostgreSQL
PostgreSQL 是功能強大的開源關聯式資料庫,適用於從小型應用到大型企業系統的各種場景。Piora 讓你可以快速建立並管理 PostgreSQL 實例。
建立 PostgreSQL 資料庫
Section titled “建立 PostgreSQL 資料庫”- 在控制面板進入「資料庫」頁面
- 選擇「PostgreSQL」
- 選擇版本(建議使用 PostgreSQL 16)
- 設定以下參數:
| 參數 | 說明 | 範例 |
|---|---|---|
| 資料庫名稱 | 服務識別名稱 | my-postgres |
| 資料庫帳號 | 管理員帳號 | piora_admin |
| 資料庫密碼 | 管理員密碼 | (自動產生或自訂) |
| 預設資料庫 | 初始建立的資料庫 | myapp |
建立完成後,你可以在控制面板取得連線字串:
# 標準連線字串postgresql://piora_admin:your-password@postgres-container:5432/myapp
# 或使用個別參數Host: postgres-containerPort: 5432Database: myappUsername: piora_adminPassword: your-password在應用中使用
Section titled “在應用中使用”將連線字串設為應用的環境變數:
DATABASE_URL=postgresql://piora_admin:your-password@postgres-container:5432/myapp常見框架的連線設定:
// Node.js (pg)const { Pool } = require('pg');const pool = new Pool({ connectionString: process.env.DATABASE_URL,});# Python (psycopg2)import psycopg2conn = psycopg2.connect(os.environ['DATABASE_URL'])根據你的 VPS 記憶體大小,調整 PostgreSQL 的記憶體分配:
| VPS 記憶體 | shared_buffers | effective_cache_size | work_mem |
|---|---|---|---|
| 1 GB | 256 MB | 512 MB | 4 MB |
| 2 GB | 512 MB | 1.5 GB | 8 MB |
| 4 GB | 1 GB | 3 GB | 16 MB |
你可以在 Piora 控制面板中修改這些參數,或透過自訂設定檔覆蓋。
Piora 支援自動排程備份 PostgreSQL 資料庫。詳見 資料庫備份 章節。
你也可以透過控制面板的終端機執行手動備份:
# 匯出資料庫pg_dump -U piora_admin -d myapp > backup.sql
# 還原資料庫psql -U piora_admin -d myapp < backup.sql確認應用與資料庫在同一個 Docker 網路中,且使用的是容器名稱而非 localhost。
- 檢查
shared_buffers設定是否合理 - 使用
EXPLAIN ANALYZE分析慢查詢 - 確認資料表有適當的索引
- 監控連線數是否超過上限