首頁  >  文章  >  資料庫  >  mysql和oracle有什麼差別

mysql和oracle有什麼差別

清浅
清浅原創
2019-03-12 10:16:564075瀏覽

mysql和oracle的差別有:mysql是屬於開源專案不收費而oracle需要收費,mysql預設的是自動提交而oracle不是,mysql的語法較為靈活而oracle語法嚴格等等

#對於很多小型專案來說,MySQL資料庫基本上可以實現各種功能的需求,但是隨著資料量的增加,MySQL就漸漸的出現不堪重負的情況,這時就需要用到Oracle資料庫,接下來在文章中將為大家具體介紹這兩者有何差別,具有一定的參考作用,希望對大家有幫助。

mysql和oracle有什麼差別

【推薦課程:MySQL教學

#mysql和oracle的區別

(1)項目性質

MySQL是開源項目,不收任何費用,而Oracle是一款成熟的資料庫產品是閉源的同時也是要收費的

(2)對交易的提交

MySQL預設是自動提交,而Oracle預設的是不自動提交,需要使用者手動提交,需要在寫commit指令或點選commit按鈕

(3)SQL語法不同

MySQL的SQL語法較為靈活,而Oracle的語法較為嚴格

(4)分頁查詢

MySQL是直接在SQL語句中寫"select... from ...where...limit x, y",有limit就可以實現分頁;而Oracle則是需要用到偽列ROWNUM和嵌套查詢

(5)對事務的支持

MySQL在innodb儲存引擎的行級鎖定的情況下才可以支援事務,而Oracle則完全支援交易

(6) 保存資料的持久性

MySQL會在資料庫更新或重新啟動之後會遺失數據,而Oracle把提交的sql操作線寫入了線上聯機日誌檔案中,保持到了磁碟上,可以隨時恢復

(7)線程的不同

MySQL是屬於單一進程多線程,而Oracle是屬於多進程(在Windows下也是單一進程)。與Windows作業系統和Linux作業系統間的差異相似,Windows下只能使用一個用戶,或者你可以在不同用戶之間做切換,而Linux是多用戶或相同用戶可以同時連接作業系統。

(8)權限與安全性

MySQL的使用者與主機有關,而且容易被仿冒主機及ip有可乘之機;而Oracle的權限與安全概念比較傳統,中規中矩。

(9)分區表和分區索引

###MySQL的分區表還不太成熟穩定,而Oracle的分區表和分區索引功能很成熟,可以提高使用者存取db的體驗#########(10)並發性#########MySQL以表級鎖定為主,對資源鎖定的粒度很大,如果一個session對一個表加鎖時間過長,會讓其他session無法更新此表中的資料。 ######Oracle使用行級鎖,對資源鎖定的粒度小很多,只是鎖定sql需要的資源,並且加鎖是在資料庫中的資料行上,不依賴與索引。所以Oracle對並發性的支持就好得多。 ######總結:以上就是這篇文章的全部內容了,希望對大家有幫助。 ###

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn