mysql常用命令入门2

来源:互联网 发布:exp导出远程数据库表 编辑:程序博客网 时间:2024/05/15 00:28

InnoDB支持的事务

InnoDB支持事务,主要是开启了是否支持自动提交,这也是InnoDB的性能不如MyISAM的部分原因

关闭自动提交 set autocommit=0;

开启事务 start transtation

如果sql没有异常

要执行的sql语句 sqlstatement

提交 commit

否则

回滚 rollback



没有mysql的分区partition,我们常用的mysql引擎是myisam和innodb。mysql目前支持的分区格式有四种。range,list,hash,key。一般情况下使用range,list主要应用关联键值为枚举的类型。

myisam和innodb需要注意的

myisam存储的时候是表结构、表数据、表索引各一个文件。当我们使用分区的时候会为每一个分区建一个数据文件和索引文件。

innodb的存储分为共享表空间和独享表空间。innodb默认的是独享表空间,也就是表结构,索引、数据都是在一个文件中的。当使用这种存储模式的时候,使用partition的时候生成的分区文件只是在一个文件中,达不到分区的效果。所以innodb引擎的表要改成共享表空间。


分区的目的:将大数据表的存储通过分区分割成几个小文件达到物理上的优化。当一个表达到上千万条数据的时候,对表的操作会很耗费cpu和内存,尤其是在where有多个条件的时候。通过分区有效的减少影响行数,来达到优化的效果。具体的可通过 desc sqlstatement 来查看比对效果。


原创粉丝点击