1. 程式人生 > >Sqlite和mysql的區別及優缺點

Sqlite和mysql的區別及優缺點

小型嵌入式,跟mysql差不多,但更小,功能也少,屬於本地資料庫多用於讀多寫少,100W以下的資料壓力不大,不支援分散式。   真正開源的小型嵌入式資料庫,支援事務、觸發器器  效能至少優於mysql4.1.0  目前已被幾乎所有的高階程式開發語言支援  由於可以自定義資料庫函式,尤其在php的擴充套件中可支援全部php函式,其效能可以說是無上限的      “最主要的是沒有 Access 的介面”  有很多用php開發的管理工具,與phpmyadmin的介面很相似  我用的是SQLiteManager      SQLite 是一個類似Access的輕量級資料庫系統,但是更小、更快、容量更大,併發更高。為什麼說 SQLite 最適合做 CMS (內容管理系統)呢?並不是說其他資料庫不好, oracle、MySQL、SQLServer 也都是非常優秀的 DBS,只不過他們設計目標不同,特性不同,所以只有更適用某個應用場景,沒有絕對的好壞之分。   我歸納的中小型站點的CMS的特點如下:   1、資料量不超過10萬   2、日頁面訪問量不超過10萬   3、 一部分網站全部生成靜態頁面,一部分網站實時查詢資料庫動態訪問   4、 站長不懂技術,不懂得複雜的資料庫維護,只會用 FTP 管理網站   5 、個人站點基本上是一個人管理,一般情況下只有一個人在訪問後臺,沒有併發   6、 對資料庫來說是讀多寫少,只有在站長訪問後臺的時候才會寫入   7、 多運行於虛擬主機,大部分PHP主機均同時支援MySQL,小部分PHP主機需要單獨購買MySQL,PHP+MySQL的主機價格較PHP主機價格高。(以萬網為例:最便宜的PHP空間780元,最便宜的PHP+MySQL的PHP空間1150元)   8、 多數中小站點的HTTP服務與MySQL部署在同一伺服器上   SQLite 的優點在中小網站CMS應用場景下表現突出:   1、與MySQL相比,它更徹底的免費,並且沒有任何使用上的限制   2、非常小巧,PHP5以上版本中無需任何配置即可支援SQLite   3、無需單獨購買資料庫服務,無伺服器程序,配置成本為零   4、整個資料庫儲存在一個單個的檔案中,資料匯入匯出備份恢復都是複製檔案,維護難度為零   5、讀速度快,在資料量不是很大的情況下速度較快,更重要的是:省掉了一次資料庫遠端連結沒有複雜的許可權驗證,開啟就能操作   SQLite的缺點在中小網站 CMS 應用場景下被規避:   1、併發低 動態訪問時當訪問量不超過10萬PV的時候,SQLite 超過 Access 的併發能力已經綽綽有餘;生成靜態頁後更無需考慮資料庫的併發問題   2、在大資料量的情況下表現較差 但是中小站點一般情況下資料量不超過10萬,而SQlite 在 100 萬資料量之下表現還不錯,因為省掉了對資料庫伺服器的遠端連線甚至會更快   3、寫入較慢 預設配置下的 SQlite 的寫入速度比MySQL慢了很多,但是 CMS 應用場景的寫入操作較少。在插入新文章的時候基本感受不到慢。集中的寫資料庫操作只有在安裝的時候會出現,不過只出現一次,可以忽略   4、為已有的表加索引較慢 但是在中小站點CMS中不會有這樣的需求,可以忽略   5、無法將 MySQL 部署到與前端機不同的伺服器上,但是中小站點也沒有分開部署的需求