Mysql经验-------持续更新

1.单表行数超过 500 万行或者单表容量超过 2GB,才推荐进行分库分表
说明:若是预计三年后的数据量根本达不到这个级别,请不要在建立表时就分库分表。数据库

 

2.用DECIMAL代替FLOAT和DOUBLE存储精确浮点数,越简单越好:将字符转化为数字、使用TINYINT来代替ENUM类型spa

 

3.重要的SQL必须被索引,好比:对象

(1) UPDATE、DELETE语句的WHERE条件列索引

(2) ORDER BY、GROUPBY、DISTINCT的字段it

 

4.不要用select *,查询哪几个字段就select 这几个字段io

 

5.研发要常用explain,若是发现索引选择性差,必须让他们学会使用hint模板

 

6.limit分页注意效率。Limit越大,效率越低。能够改写limit,好比例子改写:效率

select id from tlimit 10000, 10; => select id from t where id > 10000limit10;渲染

 

7.分层领域模型规约select

  • DO(Data Object):此对象与数据库表结构一一对应,经过 DAO 层向上传输数据源对象。
  • DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
  • BO(Business Object):业务对象,由 Service 层输出的封装业务逻辑的对象。
  • AO(Application Object):应用对象,在 Web 层与 Service 层之间抽象的复用对象模型,极为贴近展现层,复用度不高。
  • VO(View Object):显示层对象,一般是 Web 向模板渲染引擎层传输的对象。 
  • Query:数据查询对象,各层接收上层的查询请求。注意超过 2 个参数的查询封装,禁止使用 Map 类来传
相关文章
相关标签/搜索