mysql数据库是常用的几种数据库之一,拥有良好的性能并且免费。数据库优化是一个经常遇到的问题,面试也会提这个问题,下面总结了一些数据库优化的方式
1、硬件优化
针对服务器,选择性能更佳的cpu和硬盘
2、数据库表结构优化
2.1选择合适的数据类型和长度
使用可以存下数据的最小的数据类型;
使用简单的数据类型,如int比varchar类型好处理;
尽量使用not null定义字段;
尽量少使用text类型,非用不可是可考虑分表
例:1、使用int类型存储日期时间,使用from-unixtime(),unix-timestamp()两个函数进行转换
2、使用bigint存储ip地址,利用inet-aton()、inet-ntoa()函数互相转换
2.2表的垂直拆分
把一个有很多列的表拆分成多个表,解决表的宽度问题,垂直拆分可以按一下原则进行:不常用的字段放一个表,常用的字段放一个表,大字段放一个表。
2.3表的水平拆分
当表数据比较多是,可以采用水平拆分,就是将一个表拆分成多个结构一样的表,
3、系统配置优化
mysql相关的配置调整到最优,包括缓存、io等
4、sql及索引优化
优化sql语句、适当增加索引