MySQL與Postgres大不同 優步選擇了前者

2021-09-23 09:27:00 字數 1496 閱讀 8871

在一百年前,人類的第一台計算機還沒能誕生,黑紙白字是人們記錄資訊的唯一方式,檔案館是資訊的集結地,資料分析還只能通過人工的分類,檢索來完成。2023年univac系統使用磁帶和穿孔卡片作為資料儲存,成為人類向大資料邁進的里程碑。

從檔案系統發展到資料庫系統,人們對於資料資訊處理能力越來越強,出現了以做資料庫發家的甲骨文公司(即ioe中的o:oracle),也有很多種免費、開源的資料庫供我們使用。在現實生活中,包括facebook、優步等企業都選擇了開源、免費的資料庫。其中,mysql與postgres已經成為最受歡迎的兩種免費資料庫,他們之間有有什麼異同呢?7月末,優步公司宣布將資料庫從postgres切換到mysql,個中原因又是什麼呢?

從postgres(pg

mysql

根據優步官方解釋,此次更換資料庫的原因是postgres資料複製效率低下,postgres更新已有行的效率低於mysql,postgres需要重寫每乙個行索引,而mysql只更新改變的索引。也就是說,此次更換的原因並非孰優孰劣,mysql與postgres各有自己的特點。

postgresql

索引:postgresql取決於儲存引擎。myisam:btree,innodb:btree。同時pg可以使用函式和條件索引。相比之下,mysql支援b-樹、雜湊、r-樹和gist索引。在索引的複製能力方面mysql更優,這也成為優步更換資料庫的重要原因。

一致性:資料的一致性是衡量乙個資料庫優劣的重點,postgresql是完全支援acid特性的,它對於資料庫訪問提供了強大的安全性 保證,充分利用了企業安全工具,如kerberos與openssl等。在mysql中,開發人員可以將伺服器設定為嚴格sql模式才能達到目的,否則可能會產生不規範資料。

mysql

應該說這兩種資料庫都是開源、免費並能執行在多個作業系統上的,無論是可擴充套件性、資料的一致性和可靠性都比較穩定。但二者在應用環境、場景和部分特性上不盡相同。二者沒有完全意義上的好壞,從整個發展過程來講,最初postgresql的發展速度較慢,導致mysql一度成為霸主,如今,雙方各有優劣,都成為不同應用場景下的最優資料庫。

自從mysql被收購後,雖然仍保持開源的姿態,但實際上都有專業的工程師在碼**,發展也十分迅速,並出現了standard、enterprise、classic、cluster、embedded與community等多個版本,twitter、facebook與wikipedia都是mysql的忠實使用者。postgresql則一直標榜自己為最先進的開源資料庫,同時它又比mysql出現的早了九年,讓它在教育和部分國外企業中備受歡迎,同時其資料一致性與完整性也是postgresql的高優先順序特性。

總的來說,mysql更為靈活,postgresql更為可靠,使用者在選擇時一定要慎重,畢竟切換資料庫是一件費力且不討好的事情。

***********************************=分割線******************************==

Ubuntu下Postgres安裝與配置

postgres8.4安裝配置 1.安裝postgres8.4 sudo apt get install postgresql 2.修改超級管理員postgres密碼 以系統使用者執行psql sudo u postgres psql postgres 修改postgres密碼 123456 pos...

postgres講義07 建立角色與使用者

資料庫 在postgresql中建立資料庫的機制與sql server是同樣的,資料庫的建立是通過轉殖資料庫模板來實現的。create database dbname並沒有指明資料庫模板,所以系統將預設轉殖預設的template1資料庫。而template1資料庫的預設表空間是pg default,...

Postgres 9 2 4的公升級方案與步驟

最近推出了postgres 9.2.4版本,旨在打乙個安全補丁,需要做乙個公升級,公升級的步驟文件上也寫得較為詳細 part 17 一般有pg upgrade和dump restore兩種方式,對9.2.0及以上版本採用直接編譯安裝的方式即可,9.2.0以下版本還需要 dump restore方式,...