新手指南:如何啟動 PostgreSQL 伺服器
更新日期: 2024 年 12 月 10 日
本文為 PostgreSQL 基本教學,第 3 篇:
- 新手指南: PostgreSQL 使用流程介紹
- PostgreSQL 安裝方式一覽:EDB、Chocolatey、Scoop
- 新手指南:如何啟動 PostgreSQL 伺服器 👈 所在位置
- 新手入門:如何使用 PostgreSQL 的命令行界面(psql)
- 新手指南:如何找回 PostgreSQL 的忘記密碼
啟動 PostgreSQL 伺服器是使用資料庫的第一步,而啟動方式可能因您的操作系統(Linux、macOS 或 Windows)或安裝方式(例如 Docker)而有所不同。
本篇文章將介紹各系統下啟動 PostgreSQL 的方法,以及如何確認伺服器是否成功啟動,幫助您快速開始操作 PostgreSQL。
在 Linux 上啟動 PostgreSQL
使用 systemctl
這是最常見的方式,適用於使用 systemd 的 Linux 發行版(如 Ubuntu、Debian、CentOS)。
以下是常用的指令:
# 啟動 PostgreSQL
sudo systemctl start postgresql
# 查看伺服器狀態
sudo systemctl status postgresql
# 設定開機自動啟動
sudo systemctl enable postgresql
使用 service
適用於使用 SysVinit 的 Linux 發行版:
# 啟動 PostgreSQL
sudo service postgresql start
# 查看伺服器狀態
sudo service postgresql status
在 macOS 上啟動 PostgreSQL
2.1 使用 Homebrew 安裝的 PostgreSQL
如果您是透過 Homebrew 安裝 PostgreSQL,可以使用以下指令:
# 啟動 PostgreSQL
brew services start postgresql
# 查看伺服器狀態
brew services list
# 手動啟動伺服器
pg_ctl -D /usr/local/var/postgres start
使用其他安裝包(如 Postgres.app)
如果您使用的是 Postgres.app,只需開啟應用程式,伺服器會自動啟動,無需額外操作。
在 Windows 上啟動 PostgreSQL
使用 Services 工具
- 打開 控制台 → 系統與安全 → 管理工具 → 服務。
- 找到名為 PostgreSQL 的服務。
- 右鍵點擊服務,選擇「啟動」。
使用命令列啟動
- 打開命令提示字元(以管理員身份運行)。
- 執行以下指令:
net start postgresql-x64-<version>
使用 Docker 啟動 PostgreSQL
如果您使用 Docker,可以通過以下指令啟動 PostgreSQL 容器:
docker run --name postgres -e POSTGRES_PASSWORD=mysecretpassword -d -p 5432:5432 postgres
指令說明
-e POSTGRES_PASSWORD=mysecretpassword
:設定 PostgreSQL 的預設密碼。-p 5432:5432
:將主機的 5432 埠映射到容器的 5432 埠。
啟動後,使用以下指令檢查容器是否正常運行:
docker ps
確認伺服器是否成功啟動
無論使用何種方法啟動伺服器,您可以使用以下方式確認伺服器是否運行正常:
檢查埠 5432 是否被使用
PostgreSQL 預設使用埠號 5432,檢查該埠是否已開啟:
netstat -an | grep 5432
使用 psql 測試連線
嘗試連接伺服器:
psql -U postgres
如果成功連接,表示伺服器正常運行。
啟動失敗的常見原因與解決方法
配置檔案錯誤
- 檢查
postgresql.conf
和pg_hba.conf
是否正確配置。 - 確保資料目錄的路徑正確。
權限問題
確保執行 PostgreSQL 的使用者擁有資料目錄的讀寫權限。
埠號被佔用
如果埠 5432 已被其他程序使用,修改 postgresql.conf
中的埠設定或釋放該埠。
結語
啟動 PostgreSQL 是使用這個強大資料庫系統的第一步,根據您的操作系統選擇合適的方法至關重要。
本文涵蓋了多種啟動方法,並提供了確認運行狀態的步驟和常見問題解答,幫助您快速排除問題並順利開始操作 PostgreSQL。