一、Mysql数据表
区分:事务表(InnoDb表、BDB表)、非事务表(MyISAM表)
MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。
InnoDB:用于事务处理应用程序,具有众多特性,包括ACID事务支持。
BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性。
二、Mysql进程状态
Mysql查看数据库进程状态:show processlist
三、创建表时指定引擎
可以在创建新表时指定存储引擎,或通过使用ALTER TABLE语句指定存储引擎。
要想在创建表时指定存储引擎,可使用ENGINE参数:
CREATE TABLE engineTest(
id INT
) ENGINE = MyISAM;
也可以使用TYPE选项到CREATE TABLE语句来告诉MySQL你要创建什么类型的表。
CREATE TABLE engineTest(
id INT
) TYPE = MyISAM;
虽然TYPE仍然在MySQL 5.1中被支持,现在ENGINE是首选的术语。
如果你省略掉ENGINE或TYPE选项,默认的存储引擎被使用。一般的默认是MyISAM,但你可以用--default-storage-engine或--default-table-type服务器启动选项来改变它,或者通过设置storage_engine或table_type系统变量来改变。
要想更改已有表的存储引擎,可使用ALTER TABLE语句:
ALTER TABLE engineTest ENGINE = ARCHIVE;
ALTER TABLE t ENGINE = MYISAM;
ALTER TABLE t TYPE = BDB;
四、存储引擎和事务
下述存储引擎支持事务:
· InnoDB:通过MVCC支持事务,允许COMMIT、ROLLBACK和保存点。
· NDB:通过MVCC支持事务,允许COMMIT和ROLLBACK。
· BDB:支持事务,允许COMMIT和ROLLBACK。
五、Mysql事务启用
set autocommit = false
或是mysql.ini定义
[mysqld]
init_innect =' set autocommit = false'