PostgreSQL 安裝與配置全指南(適用于 Windows、macOS 與主流 Linux 發行版)

PostgreSQL 是一個功能強大、開源、穩定的對象關系數據庫系統,廣泛用于后端開發、數據處理與分布式架構中。本指南將手把手教你如何在 Windows、macOS 以及主流 Linux 發行版 上安裝 PostgreSQL,并附上安裝驗證命令基礎配置方法


一、Windows 安裝與配置 PostgreSQL

1. 安裝步驟

  1. 打開官網下載頁面:https://www.postgresql.org/download/windows/

  2. 點擊 “Download the installer”,跳轉至 EnterpriseDB。

  3. 下載適用于你的版本(例如 PostgreSQL 16)的安裝程序。

  4. 雙擊運行,按提示操作:

    • 選擇安裝目錄(默認即可)
    • 設置數據庫超級用戶密碼(務必記住
    • 設置端口號(默認 5432)
    • 默認選擇 UTF-8 編碼和英文區域設置

2. 驗證安裝是否成功

打開命令提示符(CMD)或 PowerShell,輸入以下命令:

"C:\Program Files\PostgreSQL\16\bin\psql" --version

如果顯示如下類似輸出,則表示安裝成功:

psql (PostgreSQL) 16.1

可選:將 C:\Program Files\PostgreSQL\16\bin 添加到系統環境變量 PATH,便可直接使用 psql 命令。


二、macOS 安裝與配置 PostgreSQL

方法一:使用 Homebrew 安裝(推薦)

  1. 確保安裝了 Homebrew:https://brew.sh/
  2. 執行以下命令安裝 PostgreSQL:
brew update
brew install postgresql

驗證安裝是否成功:

psql --version

輸出示例:

psql (PostgreSQL) 16.1

啟動服務:

brew services start postgresql

方法二:使用 Postgres.app(圖形界面安裝)

  1. 前往:https://postgresapp.com/
  2. 下載并安裝后,打開應用即可自動初始化服務。

驗證安裝是否成功:

/Applications/Postgres.app/Contents/Versions/latest/bin/psql --version

可將其加入 PATH:

echo 'export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin' >> ~/.zshrc
source ~/.zshrc

之后可使用:

psql --version

三、Linux 安裝與配置 PostgreSQL(涵蓋主流發行版)

以下為不同發行版的詳細安裝步驟,均包含啟動服務及驗證命令。


1. Ubuntu / Debian / Linux Mint / Kali 等

sudo apt update
sudo apt install postgresql postgresql-contrib
驗證安裝:
psql --version
啟動 PostgreSQL:
sudo systemctl start postgresql
sudo systemctl enable postgresql

2. CentOS / Rocky / AlmaLinux / RHEL 系列

添加官方倉庫并安裝 PostgreSQL 16:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf -qy module disable postgresql
sudo dnf install -y postgresql16-server postgresql16
初始化數據庫并啟動服務:
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
sudo systemctl enable --now postgresql-16
驗證安裝:
/usr/pgsql-16/bin/psql --version

可加入 PATH:

echo 'export PATH=$PATH:/usr/pgsql-16/bin' >> ~/.bashrc
source ~/.bashrc

3. Fedora

sudo dnf install -y postgresql-server postgresql-contrib
初始化數據庫:
sudo postgresql-setup --initdb
啟動服務:
sudo systemctl enable --now postgresql
驗證安裝:
psql --version

4. Arch Linux / Manjaro

sudo pacman -Syu postgresql
初始化數據庫:
sudo -iu postgres
initdb --locale $LANG -D /var/lib/postgres/data
exit
啟動服務:
sudo systemctl enable --now postgresql
驗證安裝:
psql --version

5. openSUSE / SUSE Linux Enterprise

sudo zypper refresh
sudo zypper install postgresql16-server
初始化數據庫(如未自動執行):
sudo -u postgres initdb
啟動服務:
sudo systemctl enable --now postgresql
驗證安裝:
psql --version

四、PostgreSQL 安裝后通用配置

1. 登錄數據庫

切換至 postgres 用戶:

sudo -i -u postgres
psql

退出:

\q

2. 創建用戶和數據庫

CREATE USER myuser WITH PASSWORD 'mypassword';
CREATE DATABASE mydb OWNER myuser;

五、遠程連接配置(可選)

適用于服務器部署環境。

1. 修改 postgresql.conf

路徑依據系統不同:

  • Ubuntu/Debian: /etc/postgresql/16/main/postgresql.conf
  • CentOS/Fedora/RHEL: /var/lib/pgsql/16/data/postgresql.conf

將:

# listen_addresses = 'localhost'

修改為:

listen_addresses = '*'

2. 修改 pg_hba.conf

添加以下內容以允許遠程訪問:

host    all             all             0.0.0.0/0               md5

3. 重啟服務:

sudo systemctl restart postgresql

六、常見問題排查

問題解決方法
psql: command not found檢查是否將 PostgreSQL bin 路徑添加至 PATH
連接被拒絕確保 PostgreSQL 已啟動并監聽地址正確
密碼驗證失敗檢查 pg_hba.conf 中是否啟用了 md5 認證模式

七、圖形化管理工具推薦

  • pgAdmin(官方推薦 GUI 工具)
    https://www.pgadmin.org/download/

  • DBeaver(支持多數據庫)
    https://dbeaver.io/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/86573.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/86573.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/86573.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

WordPress博客文章SEO的優化技巧

在數字時代,博客不僅用于表達觀點,也能提升品牌影響力并吸引潛在客戶。許多服務器提供商(如 Hostease)支持 WordPress 一鍵安裝功能,方便新手快速完成安裝,專注于內容創作和 SEO 優化。然而,寫出…

Python:操作 Excel 折疊

??親愛的技術愛好者們,熱烈歡迎來到 Kant2048 的博客!我是 Thomas Kant,很開心能在CSDN上與你們相遇~?? 本博客的精華專欄: 【自動化測試】 【測試經驗】 【人工智能】 【Python】 Python 操作 Excel 系列 讀取單元格數據按行寫入設置行高和列寬自動調整行高和列寬水平…

雨季智慧交通:從車輛盲區到客流統計的算法全覆蓋

雨季智慧交通中的視覺分析技術應用 一、背景:雨季交通的復雜挑戰 雨季是城市交通管理的關鍵考驗期。以濟南為例,強對流天氣伴隨的短時強降水、雷雨大風及冰雹,不僅導致道路積水、能見度驟降,還加劇了大型車輛(如渣土…

安全生產管理是什么?安全生產管理系統都有哪些核心功能?

隨著法律法規的日益嚴格和公眾對安全意識的提升,企業面臨的安全生產壓力也越來越大。無論是大型企業還是中小型企業,安全生產管理不僅關系到企業的生存與發展,更直接關系到員工的生命安全和企業的社會形象。因此,理解并實施有效的…

【PyCharm必會基礎】正確移除解釋器及虛擬環境(以 Poetry 為例 )

#工作記錄 【PyCharm使用基礎】 當遇到虛擬環境難以修復的場景,我們需要刪除當前解釋器和虛擬環境然后再重新創建虛擬環境,以下是在PyCharm中正確移除的步驟。 一、進入解釋器設置 在 PyCharm 界面右下角,點擊Poetry (suna0),選…

day028-Shell自動化編程-判斷進階

文章目錄 1. 特殊變量補充2. 變量擴展-變量子串2.1 獲取變量字符的長度2.2 給變量設置默認值 3. 命令3.1 dirname3.2 basename3.3 cut 4. 條件測試命令:[]4.1 邏輯運算符4.2 文件測試4.3 案例:書寫腳本-檢查文件類型4.4 邏輯運算4.5 案例:書寫…

oracle sql 語句 優化方法

1、表盡量使用別名,字段盡量使用別名.字段名,這樣子,可以減少oracle數據庫解析字段名。而且把 不需要的字段名剔除掉,只保留有用的字段名,不要一直使用 select *。 2、關聯查詢時,選擇好主表 。oracle解析…

【Java】Ajax 技術詳解

文章目錄 1. Filter 過濾器1.1 Filter 概述1.2 Filter 快速入門開發步驟:1.3 Filter 執行流程1.4 Filter 攔截路徑配置1.5 過濾器鏈2. Listener 監聽器2.1 Listener 概述2.2 ServletContextListener3. Ajax 技術3.1 Ajax 概述3.2 Ajax 快速入門服務端實現:客戶端實現:4. Axi…

07 APP 自動化- appium+pytest+allure框架封裝

文章目錄 一、PO二、代碼簡單實現項目框架預覽:base_page.pydir_config.pyget_data.pylogger.pystart_session.pyconfig.yamlkey_code.yamllaunch_page_loc.pylogin_page_loc.pylaunch_page.pylogin_page.pytest_login.pypytest.inirun.py APP 自動化代碼總和 一、P…

用戶體驗升級:表單失焦調用接口驗證,錯誤信息即時可視化

現代前端應用中,表單交互是用戶體驗的重要組成部分。而表單驗證作為其中的核心環節,不僅需要前端的即時反饋,還需要與后端接口聯動進行數據合法性校驗。本文將詳細介紹如何在Vue3中實現表單輸入與接口驗證的無縫聯動,并優雅地展示…

Vue 插槽(Slot)用法詳解

插槽(Slot)是Vue中一種強大的內容分發機制,它允許你在組件中定義可替換的內容區域,為組件提供了更高的靈活性和可復用性。本文將全面介紹Vue插槽的各種用法。 1. 基本插槽 基本插槽是最簡單的插槽形式,它允許父組件向子組件插入內容。 子組…

C++ 標準模板庫(STL)詳解文檔

C 標準模板庫(STL)詳解文檔 1 前言2 常用容器2.1 內容總覽2.2 向量 vector2.2.1 概述2.2.2 常用方法2.2.3 適用場景2.2.4 注意事項 2.3 棧 stack2.3.1 概述2.3.2 常用方法2.3.3 注意事項 2.4 隊列 queue2.4.1 概述2.4.2 常用方法2.4.3 注意事項 2.5 優先…

【入坑系列】TiDB 強制索引在不同庫下不生效問題

文章目錄 背景SQL 優化情況線上SQL運行情況分析懷疑1:執行計劃綁定問題?嘗試:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 寫法Hint 不生效問題排查解決參考背景 項目中使用 TiDB 數據庫,并對 SQL 進行優化了,添加了強制索引。 UAT 環境已經生效,但 PROD 環境強制索…

Redis(02)Win系統如何將Redis配置為開機自啟的服務

一、引言 Redis 是一款高性能的鍵值對存儲數據庫,在眾多項目中被廣泛應用。在 Windows 環境下,為了讓 Redis 能更穩定、便捷地運行,將其設置為系統服務并實現自動啟動是很有必要的。這樣一來,系統開機時 Redis 可自動加載&#xf…

apex新版貌似移除了amp從源碼安裝方式裝的話會在from apex import amp時報錯

問題: 安裝完apex結果 from apex import amp會報錯 解決方法: # apex git clone https://github.com/NVIDIA/apex cd apex # https://github.com/modelscope/ms-swift/issues/4176 git checkout e13873debc4699d39c6861074b9a3b2a02327f92 pip insta…

掌握 HTTP 請求:理解 cURL GET 語法

cURL 是一個強大的命令行工具,用于發送 HTTP 請求和與 Web 服務器交互。在 Web 開發和測試中,cURL 經常用于發送 GET 請求來獲取服務器資源。本文將詳細介紹 cURL GET 請求的語法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的縮寫…

【AI學習】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一種將現實世界中的數據(如圖像、文本、音頻等)轉化為計算機可處理的數值型特征表示的工具。它是連接人類認知(如語義、視覺特征)與…

基于算法競賽的c++編程(28)結構體的進階應用

結構體的嵌套與復雜數據組織 在C中,結構體可以嵌套使用,形成更復雜的數據結構。例如,可以通過嵌套結構體描述多層級數據關系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…

leetcode題解450:刪除BST中的結點!調整二叉樹的結構最難!

一、題目內容 題目要求刪除二叉搜索樹(BST)中值為 key 的節點,并保證刪除后二叉搜索樹的性質不變。返回刪除節點后的二叉搜索樹的根節點的引用。一般來說,刪除節點可分為兩個步驟:首先找到需要刪除的節點;如…

讓 Kubernetes (K8s) 集群 使用 GPU

要讓 Kubernetes (K8s) 集群 使用 GPU,并且節點是 KVM 虛擬化 出來的,需要確保以下幾點: KVM 虛擬機透傳 GPU(PCIe Passthrough) 宿主機和 K8s 節點正確安裝 NVIDIA 驅動 K8s 集群安裝 nvidia-device-plugin Pod 配…