在MySQLInnoDB引擎==MyISAM引擎的区别介绍
此外,MyISAM类型的二进制数据文件可以在不同的操作系统迁移,可以直接复制从Windows系统Linux系统。
修改:
改变发动机= MyISAM表;
MyISAM:这是默认的类型,它是基于ISAM索引顺序存取方法传统的ISAM类型(索引顺序存取方法)的缩写,它是用于记录和文件存储的标准方法。与其他存储引擎相比,大多数工具有MyISAM检查和修复的形式。MyISAM可以压缩的形式,他们支持全文搜索。他们是不安全的,而且也不支持外键。如果事物回滚将导致不完全回滚,它不具有原子性。如果大量选择执行时,MyISAM是更好的选择。
InnoDB:这类交易安全。它与BDB型相同的特性,它们还支持外键table.innodb非常快。还具有丰富的特性比BDB存储引擎,所以如果需要一个事务安全,建议使用它。如果你为了性能考虑数据插入或更新量大,应该使用InnoDB表,
对于InnoDB类型支持的东西速度的主要原因是自动提交的默认设置是打开的,和程序没有显式调用开始交易,结果在自动提交的插入,这严重影响了速度。你可以叫开始前执行SQL,及多个SQL形式的事(即使自动提交是开放的),这将大大提高性能。
===============================================================
超过1。4 mysql支持交易,包括非最大versions.3.23需求最大的版本mysqld来支持事务。
2。如果表的创建没有类型,默认的是MyISAM,和交易是不支持的。
你可以使用显示创建分区表见表的类型命令。
不支持事务的表上的2.1对启动/提交操作没有影响。在执行提交之前,已经提交并测试了它:
执行msyql:
使用测试;
如果存在TN表;
创建表的TN(varchar(10))= MyISAM类型;
存在的下拉表;
创建表的TY(varchar(10))= InnoDB类型;
开始;
插入TN值(A);
插入性值(A);
从TN选择*;
从泰选择*;
你可以看到一张唱片。
执行另一个MySQL:
使用测试;
从TN选择*;
从泰选择*;
只有TN能看到一个记录
然后在另一边
承诺;
大家都能看到唱片。
三.下面的命令可以执行非事务表切换到交易(数据不丢失),和InnoDB表比MyISAM表更安全:
tablename表类型= InnoDB;
3.1 InnoDB表不能用于修复表命令myisamchk -r table_name
但是,您可以使用检查表,并mysqlcheck { } { }选择数据库表
4。以下参数添加到MySQL数据库的命令行中,以使新发布的MySQL数据表默认使用事务(
只有创建语句受到影响。)
-默认表类型= InnoDB
测试命令:
使用测试;
如果存在TN表;
创建表的TN(varchar(10));
显示创建表;
5。可以使用默认表类型的临时更改:
集table_type = InnoDB;
显示变量like'table_type;
或:
C: / /斌/ MySQL mysqld Max NT --独立--默认表类型= InnoDB