mysql和oracle資料庫引擎介紹

2021-10-24 08:20:21 字數 1432 閱讀 2527

資料庫引擎取決於mysql在安裝的時候是如何被編譯的。要新增乙個新的引擎,就必須重新編譯mysql。在預設情況下,mysql支援三個引擎:isam、myisam和heap。另外兩種型別innodb和berkley(bdb),也常常可以使用。如果技術高超,還可以使用mysql+api自己做乙個引擎。下面介紹幾種資料庫引擎:

isam:isam是乙個定義明確且歷經時間考驗的資料**管理方法,它在設計之時就考慮到 資料庫被查詢的次數要遠大於更新的次數。因此,isam執行讀取操作的速度很快,而且不占用大量的記憶體和儲存資源。isam的兩個主要不足之處在於,它不 支援事務處理,也不能夠容錯:如果你的硬碟崩潰了,那麼資料檔案就無法恢復了。

myisam:myisam是mysql的isam擴充套件格式和預設的資料庫引擎。除了提供isam裡所沒有的索引和字段管理的大量功能,myisam還使用一種**鎖定的機制,來優化多個併發的讀寫操作,其代價是你需要經常執行optimize table命令,來恢復被更新機制所浪費的空間。myisam強調了快速讀取操作,這可能就是為什麼mysql受到了web開發如此青睞的主要原因:在web開發中你所進行的大量資料操作都是讀取操作。所以,大多數虛擬主機提供商和internet平台提供商只允許使用myisam格式。myisam格式的乙個重要缺陷就是不能在表損壞後恢復資料。

innodb:innodb資料庫引擎都是造就mysql靈活性的技術的直接產品,這項技術就是mysql+api。在使用mysql的時候,你所面對的每乙個挑戰幾乎都源於isam和myisam資料庫引擎不支援事務處理(transaction process)也不支援外來鍵。要比isam和 myisam引擎慢很多。如前所述,如果你的設計需要這些特性中的一者 或者兩者,那你就要被迫使用後兩個引擎中的乙個了。

1、myisam型別不支援事務處理等高階處理

2、myisam型別的表強調的是效能,其執行數度比innodb型別更快

3、delete from table時,innodb不會重新建立表,而是一行一行的刪除

oracle中不存在引擎的概念,資料處理大致可以分成兩大類:聯機事務處理oltp(on-line transaction processing)、聯機分析處理olap(on-line analytical processing)。oltp是傳統的關係型資料庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。olap是資料倉儲系統的主要應用,支援複雜的分析操作,側重決策支援,並且提供直觀易懂的查詢結果。

oltp 系統強調資料庫記憶體效率,強調記憶體各種指標的命令率,強調繫結變數,強調併發操作;

olap 系統則強調資料分析,強調sql執行市場,強調磁碟i/o,強調分割槽等。

資料庫索引(Oracle和MySql)

索引概念 索引是關聯式資料庫中用於存放每一條記錄的一種物件,主要目的是加快資料的讀取速度和完整性檢查。建立索引是一項技術性要求高的工作。一般在資料庫設計階 段得與資料庫結構一起考慮。應用系統的效能直接與索引的合理直接有關。一.oracle索引 1.索引型別 1 非唯一索引 最常用 uonunique...

oracle資料庫和mysql資料庫的區別

1 mysql裡用雙引號包起字串,oracle裡只可以用單引號包起字串。2 oracle是大型資料庫,而mysql是中小型資料庫。3 mysql的主鍵一般使用自動增長型別,在建立表時只要指定表的主鍵為auto increment,在插入記錄時,不需要再指定該記錄的主鍵值,主鍵將自動增長 oracle...

Oracle資料庫和MySQL資料庫的不同之處

1 體積不同。oracle它體積比較龐大,一般是用來開發大型應用 例如分布式 的。而mysql的體積相對來說比較小,較之oracle更容易安裝 維護以及管理,操作也簡單,最重要的是它是三個中唯一乙個開源資料庫,但目前也屬於oracle公司的產品了。2 容量不同。oracle容量無限,根據配置決定 而...