PostgreSQL
設定本機 PostgreSQL 資料庫
總覽
本頁說明如何安裝和設定 PostgreSQL 資料庫伺服器 和 psql
命令列用戶端。本指南將涵蓋如何在您的電腦上安裝和設定這些元件以進行本機存取。
本指南將涵蓋以下平台
導航到與您將使用的平台相符的章節。
一旦您擁有 PostgreSQL 資料庫,您就可以使用 Prisma Client 從您的 JavaScript 或 TypeScript 應用程式中進行管理。試試我們的 PostgreSQL 入門指南 以開始使用。
在 Windows 上設定 PostgreSQL
PostgreSQL 專案提供原生 Windows 安裝程式來安裝和設定您的資料庫。
造訪 PostgreSQL Windows 安裝頁面 以找到安裝程式的連結。點擊頁面開頭的 下載安裝程式
在接下來的頁面中,在 Windows x86-64 或 Windows x86-32 欄位中(取決於您的電腦架構),選擇您想要安裝的 PostgreSQL 版本
點擊您選擇的版本上的 下載,並將檔案儲存到方便的位置。
下載完成後,雙擊該檔案以執行安裝程式(您可能必須確認您希望允許該程式對您的電腦進行變更)
在初始頁面上點擊 下一步 以開始設定您的安裝。
在下一頁上,選擇您的安裝目錄
點擊 下一步 以接受預設位置。
下一頁允許您選擇要安裝的元件。您至少需要選取 PostgreSQL 伺服器 和 命令列工具
點擊 下一步 以繼續。
現在,選擇資料庫資料檔案將儲存的位置
點擊 下一步 以接受預設位置。
接下來,選取並確認 PostgreSQL 超級使用者(稱為 postgres
)的管理員密碼
完成後點擊 下一步。
選擇伺服器將監聽的連接埠
點擊 下一步 以接受預設的 5432 連接埠。
現在,選取您的資料庫將使用的地區設定
點擊 下一步 以使用您電腦的預設地區設定。
安裝的設定部分現已完成。您可以檢閱您所做選擇的摘要
如果一切看起來都正確,請點擊 下一步。
最後,PostgreSQL 已準備好安裝
點擊 下一步 以開始安裝程序。
安裝完成後,您可以使用 psql
命令列工具驗證安裝。
在您的開始選單中,輸入 psql
並點擊該工具以啟動程式。系統將提示您輸入您想要使用的連線詳細資訊。
按下 Enter 以接受方括號中給出的預設選項。最後的提示將是您在設定期間設定的 postgres
使用者的密碼。
成功驗證身份後,您將進入與資料庫的互動式 psql
會話。
當您完成時,輸入以下內容退出會話
\quit
在 macOS 上設定 PostgreSQL
PostgreSQL 專案提供原生 macOS 安裝程式來安裝和設定您的資料庫。
造訪 PostgreSQL macOS 安裝頁面 以找到安裝程式的連結。點擊 EnterpriseDB 互動式安裝程式 區段開頭的 下載安裝程式
在接下來的頁面中,在 Mac OS X 欄位中,選擇您想要安裝的 PostgreSQL 版本
點擊您選擇的版本上的 下載,並將檔案儲存到方便的位置。
下載完成後,在「下載」資料夾中找到 PostgreSQL 安裝程式 DMG。雙擊下載的 DMG 檔案以掛載安裝程式封存檔
在掛載的封存檔中,點擊 PostgreSQL 安裝程式套件(系統可能會提示您確認您希望套件能夠對您的電腦進行變更)
PostgreSQL 安裝程式將開啟歡迎畫面
在初始頁面上點擊 下一步 以開始設定您的安裝。
在下一頁上,選擇您的安裝目錄
點擊 下一步 以接受預設位置。
下一頁允許您選擇要安裝的元件。您至少需要選取 PostgreSQL 伺服器 和 命令列工具
點擊 下一步 以繼續。
現在,選擇資料庫資料檔案將儲存的位置
點擊 下一步 以接受預設位置。
在下一頁上,選取並確認 PostgreSQL 超級使用者(稱為 postgres
)的管理員密碼
完成後點擊 下一步。
以下頁面可讓您選擇伺服器將監聽的連接埠
點擊 下一步 以接受預設的 5432 連接埠。
現在,選取您的資料庫將使用的地區設定
點擊 下一步 以使用您電腦的預設地區設定。
安裝的設定部分現已完成。您可以檢閱您所做選擇的摘要
如果一切看起來都正確,請點擊 下一步。
PostgreSQL 已準備好安裝
點擊 下一步 以開始安裝程序。
安裝程式將在程序完成時確認完成
現在 PostgreSQL 已安裝完成,您可以使用 psql
命令列工具驗證安裝。雖然已安裝此用戶端,但我們需要修改終端機的 PATH
變數才能輕鬆存取它。
開啟新的終端機視窗以開始。首先,輸入以下內容找到 PostgreSQL bin
目錄
ls -d /Library/PostgreSQL/*/bin
回應將是您的 PostgreSQL bin
目錄的目錄。例如
/Library/PostgreSQL/12/bin
現在您知道要使用的目錄,請輸入以下內容編輯 /etc/paths
檔案
sudo nano /etc/paths
系統將提示您輸入電腦的管理員密碼以繼續
將您找到的 bin
目錄的路徑新增到檔案的底部
完成後,按下 CTL-X、Y 並按 ENTER 儲存並關閉檔案。
若要使用新的 PATH
設定,請開啟新的終端機視窗。在新視窗中,輸入
psql -U postgres
系統將提示您輸入您在 PostgreSQL 設定程序中設定的 postgres
使用者的管理員密碼
成功驗證身份後,您將進入與資料庫的互動式 psql
會話。
若要在完成時退出會話,請輸入
\quit
在 Linux 上設定 PostgreSQL
安裝方法因您使用的 Linux 發行版而異。請按照以下與您的 Linux 發行版相符的章節進行操作。
Debian 和 Ubuntu
您可以選擇使用您的發行版預設儲存庫中提供的 PostgreSQL 版本,或使用 PostgreSQL 專案提供的儲存庫。預設儲存庫中的套件經過測試,可與您的發行版提供的所有其他軟體搭配使用,但可能版本較舊。PostgreSQL 專案的套件將會是較新的版本,但可能需要額外的設定。
使用 Debian 或 Ubuntu 的預設儲存庫安裝
Ubuntu 和 Debian 都以套件形式在其預設儲存庫中提供 PostgreSQL 伺服器版本。PostgreSQL 版本可能比 PostgreSQL 網站上找到的版本舊,但這是這些發行版上最簡單的安裝方式。
若要安裝 PostgreSQL 伺服器,請使用最新的套件集更新您電腦的本機套件快取。之後,安裝 postgresql
套件
sudo apt updatesudo apt install postgresql
預設情況下,PostgreSQL 設定為使用 對等身份驗證,允許使用者在其作業系統使用者名稱與 PostgreSQL 內部名稱相符時登入。
安裝程序建立了一個名為 postgres
的作業系統使用者,以符合 postgres
資料庫管理員帳戶。若要使用 psql
用戶端登入 PostgreSQL,請使用 sudo
以 postgres
使用者身份執行命令
sudo -u postgres psql
當您完成時,您可以輸入以下內容退出 psql
會話
\quit
使用 PostgreSQL 專案的 Debian 和 Ubuntu 儲存庫安裝
如果您需要更新版本的 PostgreSQL,您可以使用 PostgreSQL 專案維護的儲存庫,而不是您的 Linux 發行版提供的儲存庫。
首先,透過輸入以下內容將新的儲存庫定義新增到您的系統
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(. /etc/os-release; echo $VERSION_CODENAME)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
接下來,將 PostgreSQL 套件簽署金鑰新增到 apt
,使其信任新儲存庫中的套件
wget --quiet -O - https://postgresql.dev.org.tw/media/keys/ACCC4CF8.asc | sudo apt-key add -
設定儲存庫後,您可以更新您的本機套件索引,然後透過輸入以下內容安裝 PostgreSQL
sudo apt updatesudo apt install postgresql
預設情況下,PostgreSQL 設定為使用 對等身份驗證,允許使用者在其作業系統使用者名稱與 PostgreSQL 內部名稱相符時登入。
安裝程序建立了一個名為 postgres
的作業系統使用者,以符合 postgres
資料庫管理員帳戶。若要使用 psql
用戶端登入 PostgreSQL,請使用 sudo
以 postgres
使用者身份執行命令
sudo -u postgres psql
當您完成時,您可以輸入以下內容退出 psql
會話
\quit
CentOS 和 Fedora
您可以選擇使用您的發行版預設儲存庫中提供的 PostgreSQL 版本,或使用 PostgreSQL 專案提供的儲存庫。預設儲存庫中的套件經過測試,可與您的發行版提供的所有其他軟體搭配使用,但可能版本較舊。PostgreSQL 專案的套件將會是較新的版本,但可能需要額外的設定。
使用 CentOS 或 Fedora 的預設儲存庫安裝
CentOS 和 Fedora 都以套件形式在其預設儲存庫中提供 PostgreSQL 伺服器版本。PostgreSQL 版本可能比 PostgreSQL 網站上找到的版本舊,但這是這些發行版上最簡單的安裝方式。
若要安裝 PostgreSQL 伺服器,請使用您的發行版的套件管理器來安裝 mysql-server
套件
對於 CentOS,請使用 yum
套件管理器
sudo yum install postgresql-server
對於 Fedora,請使用 dnf
套件管理器
sudo dnf install postgresql-server
MySQL 套件安裝完成後,透過輸入以下內容初始化資料庫
sudo postgresql-setup initdb
之後,透過輸入以下內容啟動服務
sudo systemctl start postgresql.service
或者,您可以透過輸入以下內容在啟動時自動啟動 PostgreSQL
sudo systemctl enable postgresql.service
預設情況下,PostgreSQL 設定為使用 對等身份驗證,允許使用者在其作業系統使用者名稱與 PostgreSQL 內部名稱相符時登入。
安裝程序建立了一個名為 postgres
的作業系統使用者,以符合 postgres
資料庫管理員帳戶。若要使用 psql
用戶端登入 PostgreSQL,請使用 sudo
以 postgres
使用者身份執行命令
sudo -u postgres psql
當您完成時,您可以輸入以下內容退出 psql
會話
\quit
使用 PostgreSQL 專案的 CentOS 和 Fedora 儲存庫安裝
如果您需要更新版本的 PostgreSQL,您可以使用 PostgreSQL 專案維護的儲存庫,而不是您的 Linux 發行版提供的儲存庫。
若要設定 PostgreSQL 專案的儲存庫,請在您的終端機中下載並安裝儲存庫設定套件。
對於 CentOS,執行以下命令
sudo yum install "https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(. /etc/os-release; echo $VERSION_ID)-x86_64/pgdg-redhat-repo-latest.noarch.rpm"
對於 Fedora,請使用此命令
sudo dnf install "https://download.postgresql.org/pub/repos/yum/reporpms/F-$(. /etc/os-release; echo $VERSION_ID)-x86_64/pgdg-fedora-repo-latest.noarch.rpm"
如果您使用 CentOS 8,您還必須停用系統的 PostgreSQL 模組,以防止其干擾儲存庫的 PostgreSQL 版本。若要執行此操作,請輸入
sudo yum module disable postgresql
接下來,選擇您想要鎖定的 PostgreSQL 版本。
對於 CentOS,透過輸入以下內容檢查哪些版本的 PostgreSQL 可用
yum list postgresql*-server
對於 Fedora,請使用 dnf
套件管理器
dnf list postgresql*-server
決定要使用的版本後,您可以使用您的套件管理器安裝它。
對於 CentOS,請使用 yum
套件管理器。例如,若要安裝 PostgreSQL 12,請輸入
sudo yum install postgresql12-server
對於 Fedora,請使用 dnf
套件管理器。例如,若要安裝 PostgreSQL 12,請輸入
sudo dnf install postgresql12-server
PostgreSQL 套件安裝完成後,初始化資料庫
sudo /usr/pgsql-*/bin/postgresql-*-setup initdb
尋找您的 PostgreSQL 版本的 systemd 單元檔案名稱
systemctl list-unit-files | grep postgresql
使用您找到的單元檔案啟動服務。例如,對於 PostgreSQL 12,它會是
sudo systemctl start postgresql-12.service
或者,您也可以使用 enable
在啟動時自動啟動 PostgreSQL
sudo systemctl enable postgresql-12.service
預設情況下,PostgreSQL 設定為使用 對等身份驗證,允許使用者在其作業系統使用者名稱與 PostgreSQL 內部名稱相符時登入。
安裝程序建立了一個名為 postgres
的作業系統使用者,以符合 postgres
資料庫管理員帳戶。若要使用 psql
用戶端登入 PostgreSQL,請使用 sudo
以 postgres
使用者身份執行命令
sudo -u postgres psql
當您完成時,您可以輸入以下內容退出 psql
會話
\quit