## 前言
在传统行业的软件系统中,数据库开发占重要一环,尤其是关系型数据库,如MySQL、Oracle。在这些系统的开发工作中,数据库开发(写SQL)只是基础,数据库优化才是进阶之路。
<div class="article-ads"></div>
<!-- more -->
## 优化原则
### 数据库设计优化
1. 不要建立外键索引,而是使用约定的方式确定主外键关系。
2. 在确定数据唯一的字段上建立唯一索引。
3. 在确定频繁作为查询条件的字段上建立索引。
> PS:在关系型数据库中,有些数据库功能设计初衷是好的,但是真实使用时容易造成不可预料的错误,这类功能应尽量避免使用,如`外键索引`。
### SQL优化
1. 能单表就别连表。
2. 尽可能少的、且确定的查询字段(尽量不要用select * )。
3. 尽可能少的使用模糊查询。
4. 连表查询时,能在连表前使用的条件不要留在连表后。(减少连表关联的数据量)
### 其他细节优化
1. 正式环境尽量不要打印sql日志。(尤其是批量处理的sql)
2. 尽可能降低执行sql次数,降低数据库访问次数。
---
未完待续...
- SQL语句优化将记录在文章:[常见SQL优化](https://oldmoon.top/post/94)
<div class="article-ads"></div>