開源的數據庫,PostgreSQL 基礎入門實戰 PostgreSQL 簡介與安裝

PostgreSQL 簡介與安裝

實驗介紹

大家好,本課程是關於 PostgreSQL 數據庫的使用說明,細緻講解 PostgreSQL 的特性與使用方法,儘量做到描述樸實、深入淺出、示例充足、覆蓋重點。

由於同類型的數據庫 MySQL 的使用量遠大於 PostgreSQL ,以至於大家都知道 MySQL 並且掌握它的基本用法。在我們的課程中,會出現一些二者的比較說明。

按照慣例,第一節實驗是 PostgreSQL 的簡介與安裝。

知識點

  • PostgreSQL 簡介
  • 在 Ubuntu 系統中安裝 PostgreSQL 數據庫

PostgreSQL 簡介

PostgreSQL 是一個功能強大的開源關係型數據庫管理系統,用於安全地存儲數據。PostgreSQL 在某些地方被簡稱爲 PG 。

所謂“功能強大”,就是優點很多:

  • 支持超多種類的數據類型,數量在開源數據庫裏是第 1 名
  • 可以在 Windows 、FreeBSD 、Linux 、macOS 等主流操作系統中運行
  • 支持 SQL 子查詢、觸發器、視圖、事務多級隔離、多進程併發控制
  • 支持包括 C、C++、Java、Perl、Python、Ruby 在內的多種語言的編程接口

所謂“開源”,就是指 PostgreSQL 所有版本的源代碼均爲公開狀態,供任何個人和組織免費使用和修改。PostgreSQL 由全球志願者團隊開發,不受任何公司或其他私人實體控制。

所謂“關係型”,就是提供各種約束。

所謂“安全地存儲”,這涉及到兩層意思:一是數據持久化,這是大多數據庫的基本功能;二是熱備,PostgreSQL 採用物理複製,在保證主備數據一致上具有較高的可靠性。

關於 MySQL 與 PostgreSQL 有兩句標語:

  • MySQL:世界上最受歡迎的數據庫
  • PostgreSQL:世界上最先進的數據庫

熱度排名

當我們評判一些編程語言孰優孰劣時,當我們爭辯一些框架性能高低時,一個很好的論據就是熱度排名。

編程語言的數量幾百上千,如果一門編程語言五年進不了 TIOBE 的前二十,誰還好意思吹噓呢?當然啦,所有的這些評判和爭辯的實際意義幾乎沒有,我們只是說着玩兒。

儘管如此,我們還是可以用熱度排名佐證一門語言或一個框架的優秀與否。熱度通常與用戶量呈正相關性。

對於數據庫的熱度排名,就像 TIOBE 一樣,也有一個叫做 DB Engines 的網站。

截止 2020 年 6 月底,排名前十的數據庫熱度表格如下:

如上表所示,前五基本是穩定的,熱度在 400+ ,後面的幾個熱度差距很小。PostgreSQL 排名第四,且與前三名的差距極大,衝擊前三的可能性微乎其微。所以它無法擁有 MySQL 的 Popular 標籤。

排名第 5 的 MongoDB 是熱度最高的非關係型數據庫。如果告訴你 PostgreSQL 在 9.2 版本中加入了 JSON 數據類型以支持 NoSQL 數據存儲功能,且在性能上甚至優於 MongoDB ,是不是覺得 PostgreSQL 也有點兒能打了呢?

此外還可以在網站中查看數據庫的趨勢圖,可以看到近些年具有明顯增長趨勢的也就是 PostgreSQL 和 MongoDB 了:

其它介紹

PostgreSQL 在用戶量上佔比較少,且國內尤甚,這使得很多同學都只是聽說過 PostgreSQL 卻並未接觸。

PostgreSQL 起源於出鏡率極高的美國加州大學伯克利分校。由於貢獻者來自五湖四海,現已成爲一個國際開發項目,在海外擁有大量用戶,國內的企業級用戶也開始逐漸增多。PostgreSQL 的功能之強大、特性之豐富和結構之複雜都算得上開源數據庫之最了。

MySQL 號稱是使用最廣泛的開源數據庫,而 PG 則被稱爲功能最強大的開源數據庫。

PostgreSQL 是一個自由的關係型數據庫服務器,在靈活的 BSD 風格許可證下發行。PostgreSQL 的特性覆蓋了 SQL-2/SQL-92 和 SQL-3/SQL-99。PostgreSQL 提供了目前世界上最豐富的數據類型的支持,其中有些數據類型連商業數據庫都不具備, 例如 IP 類型和幾何類型等。PostgreSQL 是全功能的自由軟件數據庫,也是史上第一款支持事務、子查詢、多版本並行控制系統(MVCC)、數據完整性檢查等特性的數據庫管理系統。PostgreSQL 擁有一支非常活躍的開發隊伍,而且在許多黑客的努力下,PostgreSQL 的質量日益提高。

篇幅有限,完整課程請移步至《PostgreSQL 基礎入門實戰》,你將學到:

快來 get√ 新課吧!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章