介紹一下Mysql的存儲引擎_第1頁
介紹一下Mysql的存儲引擎_第2頁
介紹一下Mysql的存儲引擎_第3頁
免費預覽已結(jié)束,剩余3頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、介紹一下 Mysql 的存儲引擎MySQL 中的數(shù)據(jù)用各種不同的技術(shù)存儲在文件(或者內(nèi)存)中。MySQL 中被稱作存儲引擎(也稱作表類型)。 MySQL預先設置或者在MySQL數(shù)商業(yè)選擇)僅支持一種類型的數(shù)據(jù)存儲。遺憾的是,其它類型的數(shù)據(jù)庫解決方案采取的“一個尺碼滿足一切需求”的方式意味著你 要MySQL,我們僅需要修改我們使用的存儲引擎就可1面的問題(盡管我們不可 避免地要研究這些因素的某些方面),相反,我們將集中介紹這些不同的引擎分別最適應哪種需求和如何啟用不同的存儲引擎。為了實現(xiàn)這個目的,在介紹每一個存 儲引擎的具體擎可用你可以在MySQLMySQL4.1.2用顯示引擎的命令得到一個可用

2、引擎的列表。mysql show +|Engine|Support|Comment|+| MyISAM | DEFAULT | Default engine as of MySQL3.23 with great performance | HEAP | YES | Alias for MEMORY| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | MERGE | YES | Collection of identical MyISAM tables | MRG_MYISAM | YES | A

3、lias for MERGE |ISAM| NO | Obsolete storage engine, now replaced by MyISAM | MRG_ISAM | NO | Obsolete storage engine, now replaced by MERGE | InnoDB | YES | Supports transactions, row-level locking, and foreign keys | INNOBASE | YES | Alias forINNODB| BDB | NO | Supports transactions and level locki

4、ng | BERKELEYDB | NO | Alias for BDB | NDBCLUSTER | NO | Clustered, fault-tolerant, memory-based tables | NDB | NO | Alias for NDBCLUSTER | EXAMPLE | NO | Examplestorage2engine | ARCHIVE | NO | Archive storage engine | CSV | NO |CSVstorageengine|+16rows inset (0.01 sec) 這個表格顯示了可用的數(shù)據(jù)庫引擎的全部名單以及在當前的數(shù)據(jù)庫

5、服務器中是否支持這些引MySQL 4.1.2mysql show variables like “ have_have_):mysql showvariableslike Variable_namehave_%;+|Value|+|have_bdb | YES | have_crypt | YES | have_innodb | DISABLED | have_isam | YES | have_raid | YES | have_symlink | YES | have_openssl | YES | have_query_cache | YES|+8rowsinset(0.01sec)你可

6、以通過修改設置腳本中的選項來設置在MySQL安裝軟件中可用的引擎。如果你在使用一個 預先包裝好的MySQL二進制發(fā)布版軟件那么這個軟件就包含了常用的引擎。然而,需要指出的是,如果你要使用某些不常用的引擎特別是CSV、存檔)和BLACKHOLE(黑洞)引擎,你就需要手工重新編譯MySQL源碼 。使用一個指定的存儲引擎你可以使用很多方法指定一個要使用的存儲引擎最簡單的方法是,如果你喜歡一種能滿 足你的大多數(shù)數(shù)據(jù)庫需求的存儲引擎, 你可以在MySQL 設置文件中設置一個默認的引擎類型(使用storage_engine 選項或者在啟動數(shù)據(jù)庫服務器時在命令行后面加3上default-storage-en

7、ginedefault-table-typeMySQLMySQL向下面這樣: CREATE TABLE mytable (id int, title char(20) ENGINE = INNODB 你還可以改變現(xiàn)有的表使用的存儲引擎,用以下語句: ALTER TABLE mytable ENGINE = MyISAMBLOG(二進制大對象)或者TEXT 文本類型。其它引擎也許僅支持有限的字符寬度和數(shù)據(jù)大小。這些局限性可能直接影響到你可以存儲的數(shù) 因為你必須要根據(jù)你要存儲的數(shù)據(jù)類型選擇對需要的存儲引擎的功4據(jù))。鎖定不僅影響許多不同的應用程序如何更新數(shù)據(jù)庫中的信息, 而且還影響對那個數(shù)據(jù)的查 詢。這是因為查詢可能要訪問正在被修主要是為了防止多個處理更新同一個數(shù)據(jù)。由于向數(shù)據(jù)中 插入信息MyISAM 中提供的。在數(shù)據(jù)更新時,它鎖定了整個表。這就防止了 許多應用程序同時更新一個具體的表。這對應用很多的Berkeley DB(8KB)鎖定數(shù)據(jù)。當在InnoDB5供不同的制作索引的技術(shù)。有些技術(shù)也許會更適合你存儲的數(shù)據(jù)類索引(如

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論