MySQL储存引擎MyISAM和InnoDB配置

  

MySQL存储引擎MyISAM和InnoDB配置

  <人力资源/>   

MyISAM和InnoDB最大特点:

  

MyISAM:

  

①不支持事务。

  

②表级锁定形式,数据在更新时锁定整个表。

  

③不支持外键约束,只支持全文索引。

  

④数据库在读取过程中相互阻塞。

  

⑤数据单独写入或读取,速度较快且占用资源相对要少。

  

InnoDB:

  

①支持事务。

  

②行级锁定,但是全表扫描仍然会是表级锁定。

  

③支持分区,表空间,类似甲骨文数据库。

  

④读写阻塞与事务隔离级别相关。

  

⑤表与主键以簇的方式储存。

  

⑥具有非常高效的缓存特性,能缓存引索,也能缓存数据。

  

如何查看存储引擎:

  
查看MySQL默认存储引擎:
  
 <代码> mysql>显示引擎;
  + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
  | | |评论| | XA事务支持引擎| |保存点
  + - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
  | InnoDB | |支持交易违约,行级锁,和外键|是的| |是的 
  
  
查看MySQL支持的引擎以及默认存储引擎。
     

查看表正在使用的存储引擎:

  
方法一:
  <前> <代码>从库显示表状态名,name='表名的;   
 <代码> mysql>显示表状态从jdy name='测试';
  + - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
  | | | |引擎版本名称Row_format | |行
  + - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - +
  | |测试InnoDB 10动态| | 0 | | #表的存储引擎InnoDB  
  
方法二:
  
 <代码>显示创建表的表名; 
  
 <代码> mysql>使用jdy;#进入查看表的数据库
  数据库修改
  mysql>显示创建表测试;
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | | |表创建表
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | |创建测试表“测试”(
  “名称”varchar(10)默认为空,
  “id”int(11)默认为空
  )引擎=InnoDB的默认字符集=utf8 | #表的存储引擎InnoDB
   
  

如何修改存储引擎:

  
      <李>   

    方法一:

      李   
  
 <代码> mysql>使用jdy;#进入查看表的数据库
  数据库修改
  mysql>显示创建表测试;
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | | |表创建表
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | |创建测试表“测试”(
  “名称”varchar(10)默认为空,
  “id”int(11)默认为空
  )引擎=InnoDB的默认字符集=utf8 | #表的存储引擎InnoDB
  
  #命令:alter table表名引擎=引擎;
  
  mysql>alter table测试引擎=MyISAM;#修改表的存储引擎为MyISAM
  查询好,0行影响(0.39秒)
  记录:0副本:0警告:0
  
  mysql>显示创建表测试;
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | | |表创建表
  + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
  | |创建测试表“测试”(
  “名称”varchar(10)默认为空,
  “id”int(11)默认为空
  )=MyISAM引擎默认字符集=utf8 | #修改成功

MySQL储存引擎MyISAM和InnoDB配置