1、选取最适用的字段属性
1)数据库中的表越小,查询效率越高,所以将表中字段的宽度设计的尽可能小
2)字段设置为not null,减少比较Null值
3)对于省份与性别等,可定义为enum类型(数值型数据,处理速度比文本类型快)
2、适用连接(join)代替子查询(sub-queries)
使用join减少MySQL在内存创建临时表来完成逻辑上的两个步骤
3、使用联合(union)代替手动创建的临时表
使用union将多个select语句连接起来,select语句中字段数目要相同
4、事务
1)保证数据的一致性和完整性(要么都成功,要么都失败)
2)多个用户同时使用相同的数据源时,可以锁定数据库来提供一种安全的访问方式
5、锁定表
事务独占性,在高并发是会影响数据库的性能,产生严重的响应延迟
6、使用外键
锁定表数据关联性差,可以使用外键保证数据的关联性
7、使用索引
1)索引是提高数据库性能的常用方法,它可以令数据库服务器以 比没有索引快得多的速度检索特定的行,尤其是在查询语句当中包含有MAX(), MIN()和ORDERBY这些命令的时候,性能提高更为明显
2)建立用于join、where判读和order by排序等字段上,避免使用有大量重复的值的字段做索引
8、优化的查询语句
1)相同类型的字段进行比较操作(char和varchar类型字段大小相同时可进行比较)
2)在建有索引的字段上尽量不使用函数进行操作
3)应该注意避免在查询中让MySQL进行自动类型转换,使得索引不起作用