mysql 數據庫的存儲引擎問(wèn)題
發(fā)布時(shí)間:2022-05-20 10:10
來(lái)源:好主機
閱讀:137
作者:新網(wǎng)知識社區
欄目: 虛擬主機
歡迎投稿:712375056
??MySQL是一個(gè)關(guān)系型數據庫管理系統,屬于Oracle旗下產(chǎn)品。MySQL 是最流行的關(guān)系型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的RDBMS應用軟件之一。MySQL是一種關(guān)系型數據庫管理系統,關(guān)系數據庫將數據保存在不同的表中,而不是將所有數據放在一個(gè)大倉庫內,這樣就增加了速度并提高了靈活性。MySQL所使用的 SQL 語(yǔ)言是用于訪(fǎng)問(wèn)數據庫的最常用標準化語(yǔ)言。一般中小型的開(kāi)發(fā)都選擇 MySQL 作為網(wǎng)站數據庫。下面就由小編和大家講一講mysql 數據庫的存儲引擎問(wèn)題。
??一、mysql 數據庫的存儲引擎問(wèn)題
??MyISAMMySQL 5.0 之前的默認數據庫引擎,最為常用。擁有較高的插入,查詢(xún)速度,但不支持事務(wù)
??InnoDB事務(wù)型數據庫的首選引擎,支持ACID事務(wù),支持行級鎖定, MySQL 5.5 起成為默認數據庫引擎
??BDB源 自 Berkeley DB,事務(wù)型數據庫的另一種選擇,支持Commit 和Rollback 等其他事務(wù)特性
??Memory所有數據置于內存的存儲引擎,擁有極高的插入,更新和查詢(xún)效率。但是會(huì )占用和數據量成正比的內存。并且其內容會(huì )在 MySQL 重新啟動(dòng)時(shí)丟失
??Merge將一定數量的 MyISAM 表聯(lián)合而成一個(gè)整體,在超大規模數據存儲時(shí)很有用
??Archive非常適合存儲大量的獨立的,作為歷史記錄的數據。因為它們不經(jīng)常被讀取。Archive 擁有高效的插入速度,但其對查詢(xún)的支持相對較差
??Federated將不同的 MySQL 聯(lián)合起來(lái),邏輯上組成一個(gè)完整的數據庫。非常適合分布式應用
??Cluster/NDB高冗余的存儲引擎,用多臺數據機器聯(lián)合提供服務(wù)以提高整體性能和
安全性。適合數據量大,安全和性能要求高的應用
??CSV: 邏輯上由逗號分割數據的存儲引擎。它會(huì )在數據庫子目錄里為每個(gè)數據表創(chuàng )建一個(gè) .csv 文件。這是一種普通文本文件,每個(gè)數據行占用一個(gè)文本行。CSV 存儲引擎不支持索引。
??BlackHole:黑洞引擎,寫(xiě)入的任何數據都會(huì )消失,一般用于記錄 binlog 做復制的中繼
??EXAMPLE 存儲引擎是一個(gè)不做任何事情的存根引擎。它的目的是作為 MySQL源代碼中的一個(gè)例子,用來(lái)演示如何開(kāi)始編寫(xiě)一個(gè)新存儲引擎。同樣,它的主要興趣是對開(kāi)發(fā)者。EXAMPLE 存儲引擎不支持編索引。
??另外,MySQL 的存儲引擎接口定義良好。有興趣的開(kāi)發(fā)者可以通過(guò)閱讀文檔編寫(xiě)自己的存儲引擎
??二、應用架構
??單點(diǎn)(Single),適合小規模應用
??復制(Replication),適合中小規模應用
??集群(Cluster),適合大規模應用
??三、應用環(huán)境
??與其他的大型數據庫例如Oracle、DB2、SQL Server等相比,MySQL[1]自有它的不足之處,但是這絲毫也沒(méi)有減少它受歡迎的程度。對于一般的個(gè)人使用者和中小型企業(yè)來(lái)說(shuō),MySQL提供的功能已經(jīng)綽綽有余,而且由于 MySQL是開(kāi)放源碼軟件,因此可以大大降低總體擁有成本。
??Linux作為操作系統,Apache或Nginx作為Web
服務(wù)器,MySQL 作為數據庫,PHP/Perl/Python作為服務(wù)器端解釋器。由于這四個(gè)軟件都是免費或開(kāi)放源碼軟件(FLOSS),因此使用這種方式不用花一分錢(qián)(除開(kāi)人工成本)就可以建立起一個(gè)穩定、免費的網(wǎng)站系統,被業(yè)界稱(chēng)為“LAMP“或“LNMP”組合。小伙伴們要想獲得更多mysql 數據庫的內容,請關(guān)注特網(wǎng)!