1. 硬件优化

1.1 内存(Memory)

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

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

在主板上使用更多RAM插槽会增加总线频率,RAM和CPU之间会有更多延迟。因此,最好使用每个插槽的最大RAM大小。

1.2 磁盘(Disks)

快速磁盘访问至关重要,因为最终它是数据所在的位置。关键指标是磁盘搜索时间,衡量物理磁盘移动访问数据的速度,因此请选择寻道时间尽可能低的磁盘。

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

1.3 网速(Ethernet)

更快的网速主要影响数据接收和发送的速度,在可能的情况一般建议采用局域网的连接方式。

1.4 处理器(CPU)

虽然硬件瓶颈通常落在其他地方,但更快的处理器允许更快地执行计算,并且结果更快地发送回客户端。

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

2. 创建索引

通常用的索引:主键(Primary keys),唯一索引(Unique Index),普通索引(Plain Index),全文索引(Full-Text Index)

2.1 主键(Primary keys)

主键是唯一的,永远不能为空,否则无法创建索引。它始终只能识别一条记录,并且必须表示每条记录。每个表只能有一个主键。

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

2.2 唯一索引(Unique Index)

唯一索引必须是唯一的,但它可以为null,可以单个列和多个列组合。

2.3 普通索引(Plain Index)

不需要唯一,可以单个列和多个列组合。

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

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

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

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

MariaDB数据库性能优化的更多相关文章

  1. SQL Server数据库性能优化之SQL语句篇【转】

    SQL Server数据库性能优化之SQL语句篇http://www.blogjava.net/allen-zhe/archive/2010/07/23/326927.html 近期项目需要, 做了一 ...

  2. mysql数据库性能优化(包括SQL,表结构,索引,缓存)

    优化目标减少 IO 次数IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当 ...

  3. 数据库性能优化:SQL索引

    SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱. 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引 ...

  4. MySQL 数据库性能优化之索引优化

    接着上一篇 MySQL 数据库性能优化之表结构,这是 MySQL数据库性能优化专题 系列的第三篇文章:MySQL 数据库性能优化之索引优化 大家都知道索引对于数据访问的性能有非常关键的作用,都知道索引 ...

  5. DB2数据库性能优化介绍

    DB2数据库性能优化介绍 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 前段时间,我从CSDN得到了这本书<DB2数据库性能调整和优化(第2版)& ...

  6. 数据库性能优化一:SQL索引一步到位

    SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱. 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引 ...

  7. 浅谈Oracle数据库性能优化的目标

    Oracle性能优化保证了Oracle数据库的健壮性,为了保证Oracle数据库运行在最佳的性能状态下,在信息系统开发之前就应该考虑数据库的优化策略.从数据库性能优化的场景来区分,可以将性能优化分为如 ...

  8. (转)Db2 数据库性能优化中,十个共性问题及难点的处理经验

    (转)https://mp.weixin.qq.com/s?__biz=MjM5NTk0MTM1Mw==&mid=2650629396&idx=1&sn=3ec17927b3d ...

  9. 基于SSD固态硬盘的数据库性能优化

    基于SSD固态硬盘的数据库性能优化 2010-11-08 00:0051cto佚名   关键字:固态硬盘 数据库管理 SSD 企业软件热点文章 Java内存结构与模型结构分析 Oracle触发器的语法 ...

随机推荐

  1. 正则匹配身份证有bug你知道么?

    在开发中,我们需要验证用户的输入信息,多半采用正则验证,下面就是身份证证号的几种常用的正则表达式: var  reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x) ...

  2. ONLYOFFICE连接数20个限制的由来

    搜onlyoffice document server的github上的issue,会得到这2个地址https://github.com/ONLYOFFICE/DocumentServer/issue ...

  3. python turtle 例子 海归绘图

          太阳花 1 # coding=utf-8 2 import turtle 3 import time 4   5 # 同时设置pencolor="red", fillc ...

  4. 一种通过async/await实现函数同步执行的方式

    const testArr = [ () => { return new Promise((resolve, reject) => { setTimeout(()=> { alert ...

  5. redie config 详解

    # redis 配置文件示例 # 当你需要为某个配置项指定内存大小的时候,必须要带上单位,# 通常的格式就是 1k 5gb 4m 等酱紫:## 1k => 1000 bytes# 1kb =&g ...

  6. Django之FBV&CBV

    CBV与FBV是django视图中处理请求的两种方式 FBV FBV也就是function base views,字面意思函数基础视图,使用函数的方式处理请求url分发中添加的参数为视图处理函数名, ...

  7. Qt在控件未显示时如何获取正确的控件尺寸

    因为打算全屏显示一个对话框,而对话框内有几个QLabel的尺寸要在确定QLabel可用的最大尺寸后,再根据内容调整一次,所以在对话框构造函数内就想确定QLabel的最大尺寸,但因为QWidget::u ...

  8. jQuery插件实例七:一棵Tree的生成史

    在需要表示级联.层级的关系中,Tree作为最直观的表达方式常出现在组织架构.权限选择等层级关系中.典型的表现形试类似于: 一颗树的生成常常包括三个部分:1)数据库设计:2)后台程序:3)前端代码.那么 ...

  9. 3.5星|《订阅》:Youtube对用户喜好的发现与应对

    订阅:数字时代的商业变现路径 主要内容我总结是Youtube对用户喜好的发现与应对.可以认为很多时候作者说的是Youtubu官方的态度与想法.穿插了许多Youtube上的成功创作者的故事. Youtu ...

  10. 【高德地图API】从零開始学高德JS API(四)搜索服务——POI搜索|自己主动完毕|输入提示|行政区域|交叉路口|自有数据检索

    地图服务.大家能想到哪些?POI搜素,输入提示,地址解析,公交导航,驾车导航,步行导航,道路查询(交叉口),行政区划等等.假设说覆盖物Marker是地图的骨骼,那么服务,就是地图的气血. 有个各种各样 ...