开源的数据库,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√ 新課吧!
總結
以上是生活随笔為你收集整理的开源的数据库,PostgreSQL 基础入门实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 刚学会 HTML5 不久,最近用 CSS
- 下一篇: 微软的 SQL Server 你学会了吗