WIKI使用導(dǎo)航
站長百科導(dǎo)航
站長專題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢
- 虛擬主機(jī)
- cPanel
- 網(wǎng)址導(dǎo)航專題
- 云計算
- 微博營銷
- 虛擬主機(jī)管理系統(tǒng)
- 開放平臺
- WIKI程序與應(yīng)用
- 美國十大主機(jī)
InnoDB
來自站長百科
InnoDB
是 MySQL 上第一個提供外鍵約束的數(shù)據(jù)存儲引擎,除了提供事務(wù)處理外,InnoDB 還支持行鎖,提供和 Oracle 一樣的一致性的不加鎖讀取,能增加并發(fā)讀的用戶數(shù)量并提高性能,不會增加鎖的數(shù)量。InnoDB 的設(shè)計目標(biāo)是處理大容量數(shù)據(jù)時最大化性能,它的 CPU 利用率是其他所有基于磁盤的關(guān)系數(shù)據(jù)庫引擎中最有效率的。
InnoDB Tables 概述[ ]
- InnoDB 給 MySQL 提供了具有事務(wù)(commit)、回滾(rollback)和崩潰修復(fù)能力(crash recovery capabilities)的事務(wù)安全(transaction-safe (ACID compliant))型表。InnoDB 提供了行鎖(locking on row level),提供與 Oracle 類型一致的不加鎖讀取(non-locking read in SELECTs)。這些特性均提高了多用戶并發(fā)操作的性能表現(xiàn)。在InnoDB表中不需要擴(kuò)大鎖定(lock escalation),因?yàn)?InnoDB 的列鎖定(row level locks)適宜非常小的空間。InnoDB 是 MySQL 上第一個提供外鍵約束(FOREIGN KEY constraints)的表引擎。
- InnoDB 的設(shè)計目標(biāo)是處理大容量數(shù)據(jù)庫系統(tǒng),它的 CPU 利用率是其它基于磁盤的關(guān)系數(shù)據(jù)庫引擎所不能比的。
- 在技術(shù)上,InnoDB 是一套放在 MySQL 后臺的完整數(shù)據(jù)庫系統(tǒng),InnoDB 在主內(nèi)存中建立其專用的緩沖池用于高速緩沖數(shù)據(jù)和索引。 InnoDB 把數(shù)據(jù)和索引存放在表空間里,可能包含多個文件,這與其它的不一樣,舉例來說,在 MyISAM 中,表被存放在單獨(dú)的文件中。InnoDB 表的大小只受限于操作系統(tǒng)的文件大小,一般為 2 GB。
- 在InnoDB官網(wǎng)上可以找到 InnoDB 最新的信息。InnoDB 手冊的最新版本總是被放置在那里,并且在那里可以得到 InnoDB 的商業(yè)許可(order commercial licenses)以及支持。
- InnoDB 現(xiàn)在(2001年十月)在一些大的需高性能的數(shù)據(jù)庫站點(diǎn)上被使用。著名的 Internet 新聞?wù)军c(diǎn) Slashdot.org 就是使用的 InnoDB。 Mytrix, Inc. 在 InnoDB 表上存儲了超過 1 TB 的數(shù)據(jù),而且另外的一個站點(diǎn)在 InnoDB 表上處理著平均每秒 800 次的插入/更新的負(fù)載。
- 在 MySQL 的源代碼中,從 3.23.34a 開始包含 InnoDB 表引擎,并在 MySQL -Max 的二進(jìn)制版本中激活。
- 為了使用 InnoDB 表引擎,必須在‘my.cnf’或‘my.ini’文件中詳細(xì)指定 InnoDB 的啟動配置。最小的修改方法就是在 [mysqld] 區(qū)中加入下面一行:
innodb_data_file_path=ibdata:30M
InnoDB 以 GNU GPL 版本 2 的許可發(fā)布(1991年六月)。。
MySQL/InnoDB 發(fā)布版本間的差別[ ]
- MySQL-Max-3.23: 這是一個穩(wěn)定版本,被推薦為產(chǎn)品使用。
- MySQL-4.0: 這是一個開發(fā)版本,與 MySQL 3.23 相比它包含了一些新特性,比如多表刪除(multi-table delete)、查詢結(jié)果緩沖(cached query results)和 SSL 通信。4.0 版與 3.23 版中的 InnoDB 表引擎是一致的。4.0.1 的穩(wěn)定性可被歸類為 beta。
- MySQL-4.0 embedded server library: You can link this into your application. The benefits are easier deployment for your application, better performance, and easier use. The stability of the embedded library is classified as alpha, but it should be gamma within a few months.