优化方式:使用存储引擎。(默认使用InnoDB)
建立什么类型的存储引擎?
InnoDB、MyISAM。
这两个有什么区别?
MyISAM是5.5之前的默认存储引擎,InnoDB是5.5以及之后的默认存储引擎。
MyISAM不支持事务,支持表锁,B树索引,全文索引,批量插入快。
InnoDB支持事务,支持行锁,B数索引,批量插入慢,支持外键。
怎么选择?
事务方面:
因为MyISAM不支持事务,所以更适合面向主要使用select和insert为主的业务,如日志。
如果需要事务支持的(有回滚需求),name就用InnoDB就好。
备份方面:
热备份(实时)、温备份(定时)、冷备份(不联网需要停掉服务)。
InnoDB使用的是热备份(联网实时备份)。
恢复方面:
系统崩溃后需要快速回复。那么首选使用热备份的InnoDB。MyISAM崩溃后损坏率高,恢复慢。
一个表一个存储引擎,不同的表可以用不同的引擎。
数据类型的设计:
1.尽可能小。更小的数据类型通常更快,因为它们占用更小的磁盘、内存和CPU缓存。
举例:放年龄的就不要用long,int了,大多数情况下tiniint足够用了,除非大于128岁。
2.简单就好。
简单数据类型的操作通常需要更少的CPU消耗