mysql 启用innodb引擎_MySql中如何启用InnoDB数据引擎

MySql中如何启用InnoDB数据引擎

(2011-09-15 04:18:45)

标签:

杂谈

尾要提示?统检测到您抵章肥号可以或许存正在被匪风险,请尽快检察风险提示,并坐刻编削稀码。 | 启闭

网遗雯客安然提示?统检测到您当前稀码的安然性较低,为了您抵章匪号安然,发起您当令编削稀码 坐刻编削 | 启闭

Fantasy的专客

舶诜浮云遮看眼,只缘身正在最下层。笑看花开花降,热眼悲悲离。 1.MYSQL 支撑的数据引擎列表以下:

MyISAM Default engine as of MySQL 3.23 with great

performance

MEMORY Hash based, stored in memory, useful for temporary

tables

InnoDB Supports transactions, row-level locking, and foreign

keys

BerkeleyDB Supports transactions and page-level locking

BLACKHOLE /dev/null storage engine (anything you write to it

disappears)

EXAMPLE Example storage engine

ARCHIVE Archive storage engine

CSV CSV storage engine

ndbcluster Clustered, fault-tolerant, memory-based tables

FEDERATED Federated MySQL storage engine

MRG_MYISAM Collection of identical MyISAM tables

ISAM Obsolete storage engine

2.个中默许的是MyISAM数据引擎本文章转载街梦网http://www.hiphopjw.com/,怅惘此引擎没有撑沉柯务措置,我们需供将默许的数据引擎改成InnoDB。

3.InnoDB战BerkeleyDB撑沉柯务措置,怅惘默许的环境下皆是被disable的。

统统的引擎里里,InnoDB性能最强除夜,算是贸易级的。

4.启动InnoDB引擎的格氏圃下:

1)启闭mysql的办事

2)编削my.ini

将default-storage-engine=INNODB前的解释(#)往掉踪降

将skip-innodb那止解释(减上#)

3)保存后重启mysql办事

5.正在mysql.exe中可以或许用 show engines\G; 下令检察各个引擎的自遇

mysql> show engines\G

*************************** 1. row

***************************

Engine: MyISAM

Support: YES

Comment: Default engine as of MySQL 3.23 with great

performance

*************************** 2. row

***************************

Engine: MEMORY

Support: YES

Comment: Hash based, stored in memory, useful for temporary

tables

*************************** 3. row

***************************

Engine: InnoDB

Support: DEFAULT

Comment: Supports transactions, row-level locking, and foreign

keys

*************************** 4. row

***************************

Engine: BerkeleyDB

Support: NO

Comment: Supports transactions and page-level locking

*************************** 5. row

***************************

Engine: BLACKHOLE

Support: YES

Comment: /dev/null storage engine (anything you write to it

disappears)

*************************** 6. row

***************************

Engine: EXAMPLE

Support: NO

Comment: Example storage engine

*************************** 7. row

***************************

Engine: ARCHIVE

Support: YES

Comment: Archive storage engine

*************************** 8. row

***************************

Engine: CSV

Support: NO

Comment: CSV storage engine

*************************** 9. row

***************************

Engine: ndbcluster

Support: NO

Comment: Clustered, fault-tolerant, memory-based tables

*************************** 10. row

***************************

Engine: FEDERATED

Support: YES

Comment: Federated MySQL storage engine

*************************** 11. row

***************************

Engine: MRG_MYISAM

Support: YES

Comment: Collection of identical MyISAM tables

*************************** 12. row

***************************

Engine: ISAM

Support: NO

MyISAM:阿谁是默许范例,它是基于传统的ISAM范例,ISAM是Indexed Sequential Access

Method (有索引的按序访谒格式)

的缩写,它是存储挤素战文件的尺度格式.与其他存储引擎比较,MyISAM具有搜检战建复表格的除夜多数工具.

MyISAM表格可以或许被紧缩,而且它们支撑齐文搜刮.它们没有是事件安然的,而且也没有支撤市键。街舞3D假定事物回滚将组成没有完备回滚,没有具有本子性。假定真止除夜量的SELECT,MyISAM是更好狄住择。

InnoDB:那类范例是事件安然的.它与BDB范例具有没有同的特性,它们借支撤市键.InnoDB表格速率很快.具有比BDB借歉厚的特性,是以假定需供一个事件安然的存储引擎,发起操做它.假定您的数据真止除夜量的INSERT或UPDATE,出于性能圆里抵章峰酌,该当操做InnoDB表,

对撑沉柯物的InnoDB范例的表,影响速率的尾要启事是AUTOCOMMIT默许设置是挨开的,而且法式出有隐首悴用BEGIN

匹里劈脸事件,招致每插进一条皆自动Commit,宽峻影响了速队耄可以或许正在真止sql前挪用begin,多条sql组成一个事物(即便autocommit挨开也能够或许),将除夜除夜进步性能。

根底的好异为:MyISAM范例没有撑沉柯务措置等初级措置,而InnoDB范例支撑。

MyISAM范例的表夸除夜的是性能,其真止数度比InnoDB范例更快,但是步瑭给事件支撑,而InnoDB供给事件支撑已内部键等初级数据库服从。

MyIASM是IASM表的新版本,有以下扩年夜: 两进制条理的可移植性。 NULL列索引。 对变少止比ISAM表有更少的碎片。

支撑除夜文件。 更好的索引紧缩。 更好的键吗统计漫衍。 更好战更快的auto_increment措置。

以下是一些细节战具体真现的好异: 1.InnoDB没有支撑FULLTEXT范例的索引。 2.InnoDB

中没有保存表当标细止数,也便是讲,真止select count(*) from

table时,InnoDB要扫描一遍局部表去钾葡有几止,但是MyISAM只要简朴的读出保存好的止数

便可。寄看的是,当count(*)语句搜罗 where条件时,两种表的操纵是一样的。

3.对AUTO_INCREMENT范例的字段,InnoDB中必须搜罗只要该字段的索引,但是正在MyISAM表中,可以或许战其他字段一起竖坐分散索引。

4.DELETE FROM table时,InnoDB没有会重新竖坐表,而是一止一止的删除。 5.LOAD TABLE FROM

MASTER独霸对InnoDB是没有起熏染冲动的,处理格式是起什鹧InnoDB表改成MyISAM表,导进数据后再改成InnoDB表,但是对操做的分中的

InnoDB特性(比方中键)的表没有开用。

别的,InnoDB表的止锁也没有是尽对的,假定正在真止一个SQL语句时MySQL没有能冶要扫描的范围,InnoDB表一样会锁齐表,比方update

table set num=1 where name like “�a%”

任何一种表缎旎是齐能的,只用得当抵章冯对营医侧型去选择适医材表范例,才气最除夜的阐扬MySQL的性能下风。

分享:

a4c26d1e5885305701be709a3d33442f.png喜欢

0

a4c26d1e5885305701be709a3d33442f.png赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

a4c26d1e5885305701be709a3d33442f.png

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值