老馮最近多次被人問到一個問題:“如何上手學習 PostgreSQL”?已經不是一次兩次了,所以感覺有必要寫個教程集體回答一下。
老馮認為,學習 PostgreSQL 的最好方式就是Learn by doing—— 通過實踐來學習,而不是通過死看書,報什么培訓班之類的東西。
現在的學習條件要比以前好太多了,因為每個人都可以有一個非常耐心的高水平老師在身邊隨時指導 —— 有什么問題直接問 AI 就是了。
不過俗話說:“師傅領進門,修行在個人”。即使有 AI 助力,起步的那個入門過程依然是最難的,很多人就直接卡在第一步,環境搭建上。所以,老馮決定寫這個快速上手教程,幫助你完成快速上手的第一步。
當然, 公眾號干這個不太合適,這個教程的在線版本地址是:https://pg36g.vonng.com/ch01/pigsty/ 閱讀還是復制命令都更方便一些。
![]()
如何入門 PG?
入門 PG 的第一步,是有一個 PG 實例,而不是有一本什么書。 老馮的建議是,你先不要去急著看什么 PG 文檔和書,先拉起真實一套生產環境中的單機 PostgreSQL, 觀察它,使用它,在 AI 的幫助下解決一個又一個的具體實戰問題。
老馮的建議是 —— 你不要去折騰什么 Docker 容器鏡像,Postgres.App,或者直接去買什么云數據庫來用。 而是直接學習在真實生產環境中的 PostgreSQL —— 原生運行在裸 Linux 上的 PG,沒有各種花里胡哨的東西與中間層。 切莫花費大把時間浪費在 “環境配置” 上,這件事,花個10分鐘,都嫌多。
這就是老馮的 Pigsty 能起到作用的地方 —— 為你提供一個學習 PostgreSQL 的最佳環境! 你可以參考 [1] 搞一臺高性價比的 Linux VPS 作為你的學習環境, 然后參考Pigsty 快速上手[2] 教程,用一行命令,十分鐘,完成安裝過程。
是的,就是這么簡單。您完全可以在不了解任何細節的情況下,使用預制配置模板[3] 一鍵拉起一套企業級質量的 PostgreSQL。 接下來,您可以探索圖形用戶界面[4],訪問PostgreSQL 數據庫服務[5]。
Pigsty 是干什么的?
Pigsty 是老馮編寫的一套開源 PostgreSQL RDS 方案,目前是開源 PG RDS 中頂尖水準,Star 數也是全球 PG 開源生態里來自中國的 No.1。 簡單來說,就是自建生產級 PG 數據庫服務的套件。讓普通研發運維也有能力在沒有專業DBA/數據庫專家的情況下,構建起企業級的 PostgreSQL 數據庫服務。
“企業級” 一般和 “復雜” 劃等號,但 Pigsty 的設計理念是讓復雜的東西變得簡單易用。所以我們把它設計成了一個開箱即用的方案。 而且最妙的是它可以運行在一臺 1C/1G 的 Linux VPS 上,完全開源免費。
![]()
Pigsty 在北歐風格的創業公司 —— 探探中管理了 25000 核 vCPU 的數據庫。 但它竟然也能完整運行在一臺 1C1G 的虛擬機上!所以,我們有許多的研發同事也使用它作為自己的開發沙箱 —— 開發環境,測試環境,生產環境全部統一使用一套方案。 這意味著你學到的所有東西可以無縫銜接直接上生產實戰。
更好玩的是,他還帶有 Nginx,自動替你配置域名,簽發 HTTPS 證書,輕松完成網站搭建與交付。 它還帶有可觀測性基礎設施,能夠讓你清楚的知道整個環境中正在發生什么,而不是兩眼一抹黑看著黑箱子盲人摸象。
最妙的是,它還帶有開箱即用的 Claude Code 和 Opencode —— AI Agent,你甚至可以不用花錢就有一位老師隨時指導你!
好的,那說了這么多,讓我們來看一看,到底應該如何學習?
快速上手
聊了這么多前戲,現在你的手頭應該有一個 Linux VPS 了吧?如果沒有,可以參考
ssh 登陸上你的服務器,然后執行以下命令。(完整安裝教程: https://pigsty.cc/docs/setup/install)
![]()
嘿,大概幾分鐘后,你就有了一個開箱即用的 PostgreSQL 開發沙箱了!讓我們來看看這個箱子里到底有什么?
![]()
真的有好多東西啊!但別的先丟到一邊不管,最核心的東西就是這個 PostgreSQL 數據庫了!它默認監聽本地的5432端口。
訪問數據庫
現在,讓我們來試一下,退出你的 ssh 連接重新登陸上來,敲一個p,神奇的事情就發生了!你通過 PostgreSQL 自帶的命令行工具psql連接上了數據庫!
![]()
![]()
數據庫連接串
你是如何連接上數據庫的呢?其實不論是 PG 自帶的psql,還是圖形客戶端工具,想要訪問數據庫,都需要一些連接參數 通常需要你輸入 Host, Port, User, Password, Database 這五個關鍵信息!
![]()
請老師登場
現在你有一個數據庫了!接下來,我建議你找一位 “AI 老師”。如果你不差錢,去買一個 Claude Code 訂閱,每月 20 美刀就已經強大。 如果你不想花錢,Pigsty 自帶的 opencode 帶來一些免費的模型,比如 GLM 4.7 , 你也可以參考老馮的這篇教程 《:[9]》 買一個訂閱計劃。
![]()
當然,Pigsty 也自帶了另外一個 AI Agent —— OpenCode,里面帶有一些免費的 Key。 我們這里就以 opencode 為例,來看看如何讓 AI 老師幫助你學習 PostgreSQL。 進入~/pigsty目錄,鍵入opencode,就會自動啟動一個 TUI (終端圖形界面) 的程序,你可以在對話框里聊天。
cd ~/pigsty; opencode按下 Ctrl+P 可以切換模型,你可以選擇 GLM 4.7 免費模型
![]()
如果你想要登陸付費訂閱計劃,執行:opencode auth login選擇 Zhipu AI Coding Plan 輸入密鑰即可。
![]()
然后,你就可以開始提問了,老馮會在教程里面列舉一些常見的問題,供你參考。然后你就可以開始和 AI 老師聊天學習了!
好了!現在你:1 有了一個生產級的標準環境,什么擴展都有。2. 有了一個無微不至的老師給你答疑解惑,現在就可以開始 “修行在個人” 了。
這就叫:授人以魚不如漁,授人以漁不如授人以全自動捕魚機。
![]()
現在做點什么
現在,你只要開始問問題就好了,這些 AI Agent 干這種事還是很靠譜的。 所以關鍵就是你能清晰的用語言表達出你感興趣的問題。你可以讓 AI 告訴你,如何系統的學習與入門 PostgreSQL。
![]()
![]()
你可以盡情的開 YOLO 模式折騰,反正搞砸了,你可以直接銷毀重建,兩分鐘的事:
./pgsql.yml # 重新當前數據庫集群如果你有一些重要的數據已經放進數據庫里了,也可以利用即時克隆[10] 功能, 瞬間克隆出一個一樣的數據庫/實例,而且不占用額外的存儲 —— 用來隨便折騰。
當然,更重要的是找一些有趣的 “項目” 來做。老馮會在后面的教程里準備一系列有趣的問題,以及項目式的教程。比如下面這種: 。這種小項目讓 AI 帶著完整過一遍,關鍵的東西就都記住知道了。
![]()
當然,如果你確實想 “系統學習”
如果你確實想要 “系統性” 的學習 PostgreSQL,那么閱讀一遍 PostgreSQL 官方文檔是必不可少的。 這是一份極好的文檔,內容詳實,覆蓋面廣,值得反復閱讀。國內唐成老師的《PostgreSQL 修煉之道,從小工到專家》圍繞文檔進行解讀,也是一本不錯的入門書籍。
但還是那句話,光看書是沒用的,你必須要有一個真實的數據庫環境,用真實(或者拍腦袋)的應用與實踐場景來動手,才是王道。后面老馮會介紹一些有趣的實戰用例,用 PostgreSQL 解決一些具體的問題。
老馮最近也在寫一個 PostgreSQL 教程系列,初學者提供一個符合直覺,符合認知習慣的上手學習教程。這篇文章就是其中的一節,歡迎大家關注,后面會持續更新。
References
[1]ClawCloud 新手指南:/ch01/clawcloud[2]Pigsty 快速上手:https://pigsty.cc/docs/setup/[3]預制配置模板:https://pigsty.cc/docs/concept/iac/template[4]圖形用戶界面:https://pigsty.cc/docs/setup/webui/[5]PostgreSQL 數據庫服務:https://pigsty.cc/docs/setup/pgsql/[6]這個教程:/ch01/clawcloud[7]:https://pigsty.cc/docs/setup/install)[8]圖形化的客戶端工具:/ch01/gui[9]Claude Code 免翻上手教程::https://vonng.com/db/claude-code-intro/[10]即時克隆: https://pigsty.cc/docs/pgsql/admin/db
![]()
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.