JAVA-每日一面 2022-01-15

问:
mysql有哪些搜索引擎,以及他们之间的区别?
答:
InnoDB

  1. 支持事务处理
    2.支持外键
    3.支持行锁
    4.不支持 FULLTEXT类型的索引(在Mysq56已引入)
    5.不保存表的具体行数,扫描表来计算有多少行
    6.对于 AUTO INCREMENT类型的字段,必须包含只有该字段的索引
    7.DELETE表时,是一行一行的删除
    8.InnoDB把数据和索引存放在表空间里面
    9.跨平台可直接拷贝使用
    10.表格很难被压缩

MyISAM
1.不支持事务,回滚将造成不完全回滚,不具有原子性
2.不支持外键
3.支持全文搜索
4.保存表的具体行数,不带 where时,直接返回保存的行数

  1. DELETE表时,先drop表,然后重建表
  2. MyISAM表被存放在三个文件,frm表格定义。数据文件是MYD( MYData)。索引文件是MYI( MYIndex)引伸
    7.跨平台很难直拷贝
  3. AUTO INCREMENT类型字段可以和其他字段一起建立联合索引
    9.表格可以被压缩

选择:因为 MyISAM相对简单所以在效率上要优于 InnoDB如果系统读多,写少。对原子性要求低。那么 MyISAM最好的选择。
且 MyISAM恢复速度快。可直接用备份覆盖恢复。如果系统读少,写多的时候,尤其是并发写入高的时候。InnoDB就是首选了

你可能感兴趣的:(JAVA-每日一面 2022-01-15)