MariaDB数据库性能优化

1. 硬件优化

1.1 内存(Memory)

内存是最重要的因素,由于它容许您调整服务器系统变量更多的内存意味着能够将更大的密钥和表缓存存储在内存中,从而减小磁盘访问速度,下降一个数量级。缓存

若是未将服务器变量设置为使用额外的可用内存,则仅添加更多内存可能不会带来显着改进。服务器

在主板上使用更多RAM插槽会增长总线频率,RAM和CPU之间会有更多延迟。所以,最好使用每一个插槽的最大RAM大小。优化

1.2 磁盘(Disks)

快速磁盘访问相当重要,由于最终它是数据所在的位置。关键指标是磁盘搜索时间,衡量物理磁盘移动访问数据的速度,所以请选择寻道时间尽量低的磁盘。spa

您还能够为临时文件和事务日志添加专用磁盘。日志

1.3 网速(Ethernet)

更快的网速主要影响数据接收和发送的速度,在可能的状况通常建议采用局域网的链接方式。server

1.4 处理器(CPU)

虽然硬件瓶颈一般落在其余地方,但更快的处理器容许更快地执行计算,而且结果更快地发送回客户端。索引

除处理器速度外,处理器的总线速度和高速缓存大小也是须要考虑的重要因素。事务

2. 建立索引

 一般用的索引:主键(Primary keys),惟一索引(Unique Index),普通索引(Plain Index),全文索引(Full-Text Index)内存

2.1 主键(Primary keys)

主键是惟一的,永远不能为空,不然没法建立索引。它始终只能识别一条记录,而且必须表示每条记录。每一个表只能有一个主键。get

XtraDB / InnoDB表中,全部索引都包含主键做为后缀。所以,当使用该存储引擎时,保持主键尽量小是特别重要的。若是主键不存在且没有UNIQUE索引,则InnoDB会建立一个6字节的聚簇索引,该索引对用户不可见。

2.2 惟一索引(Unique Index)

惟一索引必须是惟一的,但它能够为null,能够单个列和多个列组合。

2.3 普通索引(Plain Index)

不须要惟一,能够单个列和多个列组合。

3.合理利用索引以及优化Sql语句

<,<=,> =,>,BETWEEN,LIKE 'xxx%' 都是能应用索引的;

可是例如:<>,!=,LIKE '%xxx'  等都是不会应用索引查询,通常状况单个表中的索引最好不要超过6个。

至于SQL优化这个范围有点广,后续再看看写吧~~~

相关文章
相关标签/搜索