pgsql與mysql有什麼差別

清浅
發布: 2020-10-13 09:50:59
原創
38637 人瀏覽過

pgsql與mysql的差別有:1、在pgsql上的功能實作比mysql嚴謹,對錶的連線支援更完整;2、pgsql的最佳化器功能完整,支援索引類型多,而mysql的優化器比較簡單,適用於簡單的查詢操作等等。

pgsql與mysql有什麼差別

pgsql與mysql的差異有:在pgsql上的功能實作比mysql嚴謹,對錶的連線支援更加完整;pgsql的最佳化器功能完整,支援索引類型多,而mysql的優化器比較簡單,適用於簡單的查詢操作

PostgreSQL相對於MySQL的優勢

1、在SQL的標準實現上要比MySQL完善,而且功能實作比較嚴謹;

2、預存程序的功能支援比MySQL好,具備本地快取執行計畫的能力;

3、對錶連線支持較完整,優化器的功能較完整,支援的索引類型很多,複雜查詢能力較強;

4、PG主表採用堆表存放,MySQL採用索引組織表,能夠支援比MySQL更大的數據量。

5、PG的主備複製屬於實體複製,相對於MySQL基於binlog的邏輯複製,資料的一致性更可靠,​​複製效能更高,對主機效能的影響也更小。

6、MySQL的儲存引擎外掛機制,有鎖定機制複雜影響並發的問題,而PG不存在。

MySQL相對於PostgreSQL的優勢

1、innodb的基於回滾段實現的MVCC機制,相對PG新舊資料一起存放的基於XID的MVCC機制,是佔優的。新舊資料一起存放,需要定時觸 發VACUUM,會帶來多餘的IO和資料庫物件加鎖開銷,造成資料庫整體的同時能力下降。而且VACUUM清理不及時,也可能引發資料膨脹;

2、MySQL採用索引組織表,這種儲存方式非常適合基於主鍵匹配的查詢、刪改操作,但對錶結構設計有約束;

3、MySQL的優化器較簡單,系統表、運算子、資料類型的實作都很精簡,非常適合簡單的查詢操作;

4、MySQL分區表的實作要優於PG的基於繼承表的分區實現,主要體現在分區個數達到上千上萬後的處理性能差異較大。

5、MySQL的儲存引擎插件化機制,使得它的應用場景更加廣泛,例如除了innodb適合事務處理場景外,myisam適合靜態資料的查詢場景。

總結

總的來說,開源資料庫都不是很完善,商業資料庫oracle在架構和功能上都還是完善很多的。從應用場景來說,PG更適合嚴格的企業應用場景(例如金融、電信、ERP、CRM),而MySQL更適合業務邏輯相對簡單、資料可靠性要求較低的網路場景(如google、facebook、alibaba )。

以上是pgsql與mysql有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!