cms文章 mysql存储_MySQL存储引擎笔记

本文介绍了MySQL的插件式存储引擎特性,重点关注MyISAM和InnoDB的区别。MyISAM适合读写操作频繁且对事务完整性要求不高的场景,而InnoDB提供事务安全和支持外键,适用于需要高度一致性的应用。InnoDB的自动增长列和外键约束也进行了详细说明。
摘要由CSDN通过智能技术生成

MySQL存储引擎笔记存储引擎概述插件式存储引擎是MySQL的重要特性之一,用户可以根据应用的需要选择如何存储和索引数据、是否使用事物等 www.2cto.com 特点MyISAMInnoDBMemory事物安全支持锁机制表锁行锁表锁索引类型B树索引全文索引B树索引集群索引B树索引哈

MySQL存储引擎笔记

存储引擎概述

插件式存储引擎是MySQL的重要特性之一,用户可以根据应用的需要选择如何存储和索引数据、是否使用事物等  www.2cto.com

特点

MyISAM

InnoDB

Memory

事物安全

支持

锁机制

表锁

行锁

表锁

索引类型

B树索引

全文索引

B树索引

集群索引

B树索引

哈希索引

数据缓存

支持

支持

索引缓存

支持

支持

支持

支持外键

www.2cto.com

支持

存储引擎特性

MyISAM(ISAM → Indexed Sequential Access Method )引擎

a)         MyISAM

劣势:不支持事物、不支持外键

优势:访问速度快

适用:对事物完整性无要求、并发性不高或以select和insert操作为主的应用(web、数据仓库等)

b)        MyISAMy表存储格式

静态表:存储迅速、容易缓存、故障恢复容易(注:数据末尾的空格会被自动剔除)

动态表:空间占用小,删除和更新易导致碎片化(注:optimize table或myisamchk -r碎片整理)

压缩表:每条记录单独压缩、访问开支小

InnoDB引擎

a)       InnoDB

劣势:写操作效率差、占用更多磁盘(保留数据和索引)

优势:事物安全、支持外键

适用:对事物完整性和并发下得一致性要求高并且有较多更新、删除操作(InnoDB有效降低了删除更新导致的表锁定)的应用(计费、财务系统等)

b)      自动增长序列

1.       自动增长列必须是索引。

2.       如果是组合索引,则自动增长列必须是第一列(MyISAMy可为其他列,MyISAMy是按照前几列排序后递增的)

例:

create table autoincrease_demo_myisam

(t1 smallint not null auto_increment,

t2 smallint not null,  www.2cto.com

name varchar(20),

index(t2,t1)

)engine =myisam;

依次插入以下数据

t1

2

2

2

3

3

2

2

2

2

2

3

3

2

2

t2

2

3

2

3

4

2

3

2

3

2

3

4

2

3

查看数据库的中数据:select * from autoincrease_demo_myisam order by t2,t1;

+----+----+------+

| t1 | t2 | name |

+----+----+------+

|  1 |  2 | 2    |

|  2 |  2 | 3    |

|  3 |  2 | 2    |

|  4 |  2 | 2    |

|  5 |  2 | 3    |

|  6 |  2 | 2    |

|  7 |  2 | 3    |

|  8 |  2 | 2    |

|  9 |  2 | 2    |

| 10 |  2 | 3    |

|  1 |  3 | 3    |

|  2 |  3 | 4    |

|  3 |  3 | 3    |

|  4 |  3 | 4    |

+----+----+------+

c)       外键约束

MySQL支持外键的存储引擎只有InnoDB。在创建外键的时候,要求父表必须有对应的索引,字表在创建外键的时候也会创建对应的索引。外键关联的操作主要有restrict、cascade、set null、no action.  www.2cto.com

restrict、no action:在子表有关联记录的情况父表不能更新。

cascade:父表在更新或者删除时,更新或者删除子表对应记录。

set null:父表在更新或者删除时,字表对应的字段被set null。

d)      存储方式

共享表空间存储:所有的数据和索引保存在innodb_data_home_dir和innodb_data_file_path定义的表空间中,可以是多个文件。

独立表空间存储:每个表的数据和索引单独保存在自己的表空间中。(单表备份和恢复较方便)

Memory引擎

a)       优点:Memory存储引擎使用存储在内存中的内容创建表,默认使用HASH索引。表访问非常快(在启动服务的时候可以使用--init-file选项将insert into ,select 或load data infile这样的语句放入这个文件,就可以再服务启动时从持久稳定的数据源装载表。)

b)      缺点:表大小有限制,服务关闭表中的数据就会丢失

c)       适用:内容变化不频繁,作为统计操作的中间结果表。

作者 xinhanggebuguake

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WEEDCMS是由野草独立基于PHP+MYSQL开发的内容管理系统。面向企业、个人、小门户等中小规模网站使用而开发的。采用国际上比较流行Smarty引擎和敏捷的JQuery JS框架。本程序是在PHPNOW集成开发环境中完成的,测试的时候建议使用该环境。另外如果是其他环境建议使用PHP(5.2.x)+Apache(2.x)+MYSQL(5.x)组合。声明:如果您的环境是PHP4的话建议升级到最新版本! 野草网站管理系统(WEEDCMS) 5.6 Build 20111203 更新内容: 1.[修复] 验证码失效问题 2.[修复] 详细页面图片缩小BUG 3.[修复] 在chrome下CSS显示问题 4.[修复] 搜索页面不支持rewrite问题 5.[优化] XH编辑器更新到最新版本 6.[修复] 缓存失效问题 7.[修复] 更换了后台登陆样式 【功能介绍】 01.基于PHP+MYSQL架构。 02.创新型内容管理模式,建立频道后可定义内容模型,均在后台可以控制,非常方便。 03.模板引擎采用了成熟稳定的Smarty引擎,很轻松就可以做出模板界面来。 04.前台和后台均采用了DIV+CSS,速度比传统型略快。 05.JS采用了国际上比较流行的Jquery框架,还有基于Jquery的XHEditor可视化编辑器。 06.支持基于Apache和IIS的路径优化功能,让您的网站面向搜索引擎而优化。 07.单页功能:制作类似关于我们和公司介绍只要添加数据就可以实现,并且可控制访问权限。 08.后台支持权限分配,减轻管理员工作负担。 09.可自定义菜单导航,可支持2J菜单。 10.支持友情连接 11.投票功能:可以控制在哪个页面显示,并且可以实现时间段显示投票,控制了一个IP只能投一次。 12.广告功能:支持HTML自定义,并且可投送到想要显示的页面。 13.支持内容无限分类,可详细定义自己的内容。 14.制作了会员组接口,方便控制资源分配等。 15.实时监控网站在线人员动向。 16.后台管理操作可一一记录到日志中。 17.支持多语言包切换。 18.支持留言本模块 19.支持IP和IP段过滤功能 20.支持非法字符过滤功能 21.支持内容分页 演示网址:www.gg265.net
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值