0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

常用的數(shù)據(jù)庫引擎有哪些_數(shù)據(jù)庫引擎分類

PoisonApple ? 來源:網(wǎng)絡(luò)整理 ? 2018-02-24 13:56 ? 次閱讀

數(shù)據(jù)庫引擎是用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù)。利用數(shù)據(jù)庫引擎可控制訪問權(quán)限并快速處理事務(wù),從而滿足企業(yè)內(nèi)大多數(shù)需要處理大量數(shù)據(jù)的應(yīng)用程序的要求。 使用數(shù)據(jù)庫引擎創(chuàng)建用于聯(lián)機(jī)事務(wù)處理或聯(lián)機(jī)分析處理數(shù)據(jù)的關(guān)系數(shù)據(jù)庫。這包括創(chuàng)建用于存儲(chǔ)數(shù)據(jù)的表和用于查看、管理和保護(hù)數(shù)據(jù)安全的數(shù)據(jù)庫對(duì)象(如索引、視圖和存儲(chǔ)過程)??梢允褂?SQL Server Management Studio 管理數(shù)據(jù)庫對(duì)象,使用 SQL Server Profiler 捕獲服務(wù)器事件。

常用的數(shù)據(jù)庫引擎有哪些

1.數(shù)據(jù)庫引擎

Microsoft JET (Joint Engineering Technologe) 是Access和Visual Basic所提供的內(nèi)嵌數(shù)據(jù)庫功能的核心元素。JET是一種全能關(guān)系數(shù)據(jù)庫引擎,可用來處理大多數(shù)中小型數(shù)據(jù)庫。所謂數(shù)據(jù)庫引擎是應(yīng)用程序和數(shù)據(jù)庫存儲(chǔ)之間的一種接口,它將與數(shù)據(jù)庫有關(guān)的內(nèi)存管理、游標(biāo)管理和錯(cuò)誤管理等具體而復(fù)雜的細(xì)節(jié)問題抽象為一個(gè)既高度一致又簡(jiǎn)化的編程接口。

Jet數(shù)據(jù)庫引擎包含在一組動(dòng)態(tài)鏈接庫(DLL)文件中,在運(yùn)行時(shí),這些文件被鏈接到Visual Basic程序。它把應(yīng)用程序的請(qǐng)求翻譯成對(duì).mdb文件或其他數(shù)據(jù)庫的物理操作。它真正讀取、寫入和修改數(shù)據(jù)庫,并處理所有內(nèi)部事務(wù),如索引、鎖定、安全性和引用完整性等。它還包含一個(gè)查詢處理器,用于接收并執(zhí)行結(jié)構(gòu)化查詢語言(SQL)的查詢來實(shí)現(xiàn)所需的數(shù)據(jù)庫操作。另外,Jet數(shù)據(jù)庫引擎還包含一個(gè)結(jié)果處理器.用來管理查詢所返回的結(jié)果。

常用的數(shù)據(jù)庫引擎有哪些_數(shù)據(jù)庫引擎分類

2.ODBC

Open DataBase Connectivity(ODBC,開放數(shù)據(jù)庫互連)是由Microsoft定義的一種數(shù)據(jù)庫訪問標(biāo)準(zhǔn),它提供一種標(biāo)準(zhǔn)的數(shù)據(jù)庫訪問方法以訪問不同平臺(tái)的數(shù)據(jù)庫。一個(gè)ODBC應(yīng)用程序既可以訪問在本地PC機(jī)上的數(shù)據(jù)庫,也可以訪問多種異構(gòu)平臺(tái)上的數(shù)據(jù)庫,例如SQL Server、Oracle或者DB2。

ODBC本質(zhì)上是一組數(shù)據(jù)庫訪問API(應(yīng)用編程接口),但編程人員通過ODBC訪問數(shù)據(jù)庫時(shí)無需深入理解ODBC函數(shù)就可以訪問ODBC功能,這是因?yàn)橄骎isual Basic這樣的開發(fā)工具都提供了一些對(duì)象封裝了ODBC函數(shù)。

3.OLE DB

OLE DB是Microsoft開發(fā)的最新數(shù)據(jù)庫訪問接口,Microsoft將其定義為ODBC接班人。與ODBC類似,OLE DB提供了對(duì)關(guān)系數(shù)據(jù)庫的訪問,同時(shí)在此基礎(chǔ)上,它對(duì)ODBC所提供的功能進(jìn)行了一部分的擴(kuò)展。作為一種標(biāo)準(zhǔn)的接口,OLE DB可以訪問所有類型的數(shù)據(jù),包括關(guān)系數(shù)據(jù)庫、dBase等ISAM(索引序列訪問方法)類型的文件、甚至E-MAIL或者Windows 2000活動(dòng)目錄等。

OLE DB應(yīng)用程序可以分為兩種:OLE DB提供者(OLE DB Provider)和OLE DB使用者(OLE DB Consumer),OLE DB使用者就是使用OLE DB接口的應(yīng)用程序,而OLE DB提供者負(fù)責(zé)訪問數(shù)據(jù)源,并通過OLE DB接口向OLE DB使用者提供數(shù)據(jù)。

數(shù)據(jù)庫引擎類型

你能用的數(shù)據(jù)庫引擎取決于mysql在安裝的時(shí)候是如何被編譯的。要添加一個(gè)新的引擎,就必須重新編譯MYSQL。在缺省情況下,MYSQL支持三個(gè)引擎:ISAM、MYISAM和HEAP。另外兩種類型INNODB和BERKLEY(BDB),也常??梢允褂?。

常用的數(shù)據(jù)庫引擎有哪些_數(shù)據(jù)庫引擎分類

ISAM

ISAM是一個(gè)定義明確且歷經(jīng)時(shí)間考驗(yàn)的數(shù)據(jù)表格管理方法,它在設(shè)計(jì)之時(shí)就考慮到數(shù)據(jù)庫被查詢的次數(shù)要遠(yuǎn)大于更新的次數(shù)。因此,ISAM執(zhí)行讀取操作的速度很快,而且不占用大量的內(nèi)存和存儲(chǔ)資源。ISAM的兩個(gè)主要不足之處在于,它不支持事務(wù)處理,也不能夠容錯(cuò):如果你的硬盤崩潰了,那么數(shù)據(jù)文件就無法恢復(fù)了。如果你正在把ISAM用在關(guān)鍵任務(wù)應(yīng)用程序里,那就必須經(jīng)常備份你所有的實(shí)時(shí)數(shù)據(jù),通過其復(fù)制特性,MYSQL能夠支持這樣的備份應(yīng)用程序。

MYISAM

MYISAM是MYSQL的ISAM擴(kuò)展格式和缺省的數(shù)據(jù)庫引擎。除了提供ISAM里所沒有的索引和字段管理的大量功能,MYISAM還使用一種表格鎖定的機(jī)制,來優(yōu)化多個(gè)并發(fā)的讀寫操作。其代價(jià)是你需要經(jīng)常運(yùn)行OPTIMIZE TABLE命令,來恢復(fù)被更新機(jī)制所浪費(fèi)的空間。MYISAM還有一些有用的擴(kuò)展,例如用來修復(fù)數(shù)據(jù)庫文件的MYISAMCHK工具和用來恢復(fù)浪費(fèi)空間的MYISAMPACK工具。

MYISAM強(qiáng)調(diào)了快速讀取操作,這可能就是為什么MYSQL受到了WEB開發(fā)如此青睞的主要原因:在WEB開發(fā)中你所進(jìn)行的大量數(shù)據(jù)操作都是讀取操作。所以,大多數(shù)虛擬主機(jī)提供商和INTERNET平臺(tái)提供商只允許使用MYISAM格式。

HEAP

HEAP允許只駐留在內(nèi)存里的臨時(shí)表格。駐留在內(nèi)存里讓HEAP要比ISAM和MYISAM都快,但是它所管理的數(shù)據(jù)是不穩(wěn)定的,而且如果在關(guān)機(jī)之前沒有進(jìn)行保存,那么所有的數(shù)據(jù)都會(huì)丟失。在數(shù)據(jù)行被刪除的時(shí)候,HEAP也不會(huì)浪費(fèi)大量的空間。HEAP表格在你需要使用SELECT表達(dá)式來選擇和操控?cái)?shù)據(jù)的時(shí)候非常有用。要記住,在用完表格之后就刪除表格。

INNODB和BERKLEYDB

INNODB和BERKLEYDB(BDB)數(shù)據(jù)庫引擎都是造就MYSQL靈活性的技術(shù)的直接產(chǎn)品,這項(xiàng)技術(shù)就是MYSQL++ API。在使用MYSQL的時(shí)候,你所面對(duì)的每一個(gè)挑戰(zhàn)幾乎都源于ISAM和MYISAM數(shù)據(jù)庫引擎不支持事務(wù)處理也不支持外來鍵。盡管要比ISAM和MYISAM引擎慢很多,但是INNODB和BDB包括了對(duì)事務(wù)處理和外來鍵的支持,這兩點(diǎn)都是前兩個(gè)引擎所沒有的。如前所述,如果你的設(shè)計(jì)需要這些特性中的一者或者兩者,那你就要被迫使用后兩個(gè)引擎中的一個(gè)了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Delphi中數(shù)據(jù)庫引擎BDE介紹

    Delphi中數(shù)據(jù)庫引擎BDE介紹Delphi對(duì)數(shù)據(jù)庫的支持十分豐富,Delphi的數(shù)據(jù)庫接口是數(shù)據(jù)庫
    發(fā)表于 05-10 11:09

    詳解Mysql數(shù)據(jù)庫InnoDB存儲(chǔ)引擎事務(wù)

    關(guān)于Mysql數(shù)據(jù)庫InnoDB存儲(chǔ)引擎事務(wù)的一點(diǎn)理解
    發(fā)表于 05-13 10:11

    為什么要選擇嵌入式內(nèi)存數(shù)據(jù)庫引擎?

    嵌入式內(nèi)存數(shù)據(jù)庫技術(shù)發(fā)展的現(xiàn)狀內(nèi)存數(shù)據(jù)庫的定義內(nèi)存數(shù)據(jù)庫的特點(diǎn)面向3G平臺(tái)嵌入式內(nèi)存數(shù)據(jù)庫引擎的設(shè)計(jì)
    發(fā)表于 04-27 07:08

    Hsqldb數(shù)據(jù)庫的相關(guān)資料分享

    。Jboss應(yīng)用程序服務(wù)器默認(rèn)也提供這個(gè)數(shù)據(jù)庫引擎。Hsqldb四種運(yùn)行模式:1、內(nèi)存(Memory-Only)模式:所有數(shù)據(jù)都在內(nèi)存中完成,不會(huì)實(shí)例化到文件,jdbc連接方法為jd
    發(fā)表于 12-27 07:32

    基于面向?qū)ο蟮倪^程實(shí)時(shí)數(shù)據(jù)庫引擎設(shè)計(jì)

    過程控制是實(shí)時(shí)數(shù)據(jù)庫的一個(gè)非常重要的應(yīng)用場(chǎng)合,過程控制主要處理生產(chǎn)過程的控制和優(yōu)化等問題。本文分析了過程控制實(shí)時(shí)數(shù)據(jù)庫引擎的要求,結(jié)合面向?qū)ο蟮姆椒ㄔO(shè)計(jì)出一
    發(fā)表于 12-25 14:14 ?12次下載

    數(shù)據(jù)庫引擎及底層實(shí)現(xiàn)原理

    數(shù)據(jù)庫引擎是用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù)。利用數(shù)據(jù)庫引擎可控制訪問權(quán)限并快速處理事務(wù),從而滿足企業(yè)內(nèi)大多數(shù)需要處理大量
    發(fā)表于 11-22 09:11 ?1.2w次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>引擎</b>及底層實(shí)現(xiàn)原理

    數(shù)據(jù)庫引擎如何安裝

    數(shù)據(jù)庫腳本項(xiàng)目由與數(shù)據(jù)庫數(shù)據(jù)庫的一部分相關(guān)聯(lián)的一系列腳本、連接信息和模板組成。Microsoft SQL Server 2005 提供了 SQL Server Management Studio,用于在腳本項(xiàng)目的環(huán)境中管理和設(shè)
    的頭像 發(fā)表于 02-24 14:12 ?8757次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>引擎</b>如何安裝

    數(shù)據(jù)庫引擎是什么

    數(shù)據(jù)庫引擎是用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù)。利用數(shù)據(jù)庫引擎可控制訪問權(quán)限并快速處理事務(wù),從而滿足企業(yè)內(nèi)大多數(shù)需要處理大量
    的頭像 發(fā)表于 02-24 14:43 ?1.1w次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>引擎</b>是什么

    數(shù)據(jù)庫學(xué)習(xí)教程之數(shù)據(jù)庫的發(fā)展?fàn)顩r如何數(shù)據(jù)庫什么新發(fā)展

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫學(xué)習(xí)教程之數(shù)據(jù)庫的發(fā)展?fàn)顩r如何數(shù)據(jù)庫什么新發(fā)展主要內(nèi)容包括了:1 數(shù)據(jù)庫技術(shù)發(fā)展概述2
    發(fā)表于 10-25 16:29 ?5次下載
    <b class='flag-5'>數(shù)據(jù)庫</b>學(xué)習(xí)教程之<b class='flag-5'>數(shù)據(jù)庫</b>的發(fā)展?fàn)顩r如何<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>有</b>什么新發(fā)展

    數(shù)據(jù)庫和自建數(shù)據(jù)庫的區(qū)別及應(yīng)用

    數(shù)據(jù)庫是指優(yōu)化和部署在云端的數(shù)據(jù)庫,阿里云和騰訊云都提供云數(shù)據(jù)庫,云數(shù)據(jù)庫和自己搭建的數(shù)據(jù)庫
    的頭像 發(fā)表于 11-20 16:26 ?4518次閱讀
    云<b class='flag-5'>數(shù)據(jù)庫</b>和自建<b class='flag-5'>數(shù)據(jù)庫</b>的區(qū)別及應(yīng)用

    AlloyDB數(shù)據(jù)庫云服務(wù)的優(yōu)勢(shì)

    AlloyDB(預(yù)覽版)是一種 PostgreSQL 兼容的數(shù)據(jù)庫云服務(wù)。它是一個(gè)與開源標(biāo)準(zhǔn)兼容的新型數(shù)據(jù)庫引擎,可用于處理頂級(jí)關(guān)系型數(shù)據(jù)庫工作負(fù)載。AlloyDB 結(jié)合了 Googl
    的頭像 發(fā)表于 09-22 10:52 ?911次閱讀

    SQLite數(shù)據(jù)庫多平臺(tái)應(yīng)用及常見錯(cuò)誤分析哪些

    SQLite是一個(gè)軟件,實(shí)現(xiàn)了自給自足的、無服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫引擎。SQLite是世界上最廣泛部署的數(shù)據(jù)庫引擎之一。
    的頭像 發(fā)表于 02-22 15:25 ?929次閱讀
    SQLite<b class='flag-5'>數(shù)據(jù)庫</b>多平臺(tái)應(yīng)用及常見錯(cuò)誤分析<b class='flag-5'>有</b>哪些

    哪些不同的MySQL數(shù)據(jù)庫引擎?

    數(shù)據(jù)庫引擎是MySQL組件,可以處理SQL操作,例如從數(shù)據(jù)庫創(chuàng)建、讀取和更新數(shù)據(jù)。MySQL中有兩種類型的引擎:事務(wù)性和非事務(wù)性。
    的頭像 發(fā)表于 04-03 16:38 ?1079次閱讀

    oracle數(shù)據(jù)庫alert日志作用

    Oracle數(shù)據(jù)庫的alert日志是數(shù)據(jù)庫引擎和實(shí)例的核心組件之一,它記錄著數(shù)據(jù)庫的運(yùn)行狀況和事件。該日志對(duì)于數(shù)據(jù)庫的性能調(diào)優(yōu)、問題排查和安
    的頭像 發(fā)表于 12-06 10:08 ?1093次閱讀

    數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—未開啟binlog的Mysql數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例

    mysql數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境: 本地服務(wù)器,windows server操作系統(tǒng) ,部署mysql單實(shí)例,數(shù)據(jù)庫引擎類型為innodb,
    的頭像 發(fā)表于 12-08 14:18 ?999次閱讀
    <b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)—未開啟binlog的Mysql<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b>恢復(fù)案例