MariaDB数据库性能优化
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数据库性能优化的更多相关文章
- SQL Server数据库性能优化之SQL语句篇【转】
SQL Server数据库性能优化之SQL语句篇http://www.blogjava.net/allen-zhe/archive/2010/07/23/326927.html 近期项目需要, 做了一 ...
- mysql数据库性能优化(包括SQL,表结构,索引,缓存)
优化目标减少 IO 次数IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当 ...
- 数据库性能优化:SQL索引
SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱. 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引 ...
- MySQL 数据库性能优化之索引优化
接着上一篇 MySQL 数据库性能优化之表结构,这是 MySQL数据库性能优化专题 系列的第三篇文章:MySQL 数据库性能优化之索引优化 大家都知道索引对于数据访问的性能有非常关键的作用,都知道索引 ...
- DB2数据库性能优化介绍
DB2数据库性能优化介绍 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 前段时间,我从CSDN得到了这本书<DB2数据库性能调整和优化(第2版)& ...
- 数据库性能优化一:SQL索引一步到位
SQL索引在数据库优化中占有一个非常大的比例, 一个好的索引的设计,可以让你的效率提高几十甚至几百倍,在这里将带你一步步揭开他的神秘面纱. 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引 ...
- 浅谈Oracle数据库性能优化的目标
Oracle性能优化保证了Oracle数据库的健壮性,为了保证Oracle数据库运行在最佳的性能状态下,在信息系统开发之前就应该考虑数据库的优化策略.从数据库性能优化的场景来区分,可以将性能优化分为如 ...
- (转)Db2 数据库性能优化中,十个共性问题及难点的处理经验
(转)https://mp.weixin.qq.com/s?__biz=MjM5NTk0MTM1Mw==&mid=2650629396&idx=1&sn=3ec17927b3d ...
- 基于SSD固态硬盘的数据库性能优化
基于SSD固态硬盘的数据库性能优化 2010-11-08 00:0051cto佚名 关键字:固态硬盘 数据库管理 SSD 企业软件热点文章 Java内存结构与模型结构分析 Oracle触发器的语法 ...
随机推荐
- hudson运行出现java.io.IOException Cannot run program的错误分析
作者:朱金灿 来源:http://blog.csdn.net/clever101 在昨天运行每日构建时hudson突然出错,错误信息如下: [MySoft3.1] $ cmd /c call &quo ...
- 商业智能BI和报表的区别?
报表是数据展示工具,商业智能BI是数据分析工具. 报表工具是一类报表制作工具和数据展示工具,用于制作各类数据报表.图形报表.或者制作特定格式的电子发票联.流程单.收据等等. 商业智能的重点在于商业数据 ...
- JSP内置对象——application对象
下面来举个具体的实例: 运行结果: 其中,city,postcode,email是我自己保存的属性名称,然后最后一行还获取到了当前JSP或者SERVLET的引擎名及版本号.
- nodejs设置NODE_ENV环境变量(1)
看下app.js文件中的一部分代码,如下: //开发环境错误处理 // will print stacktrace if (app.get('env') === 'development') { ap ...
- Httprunner学习
一.简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求. 核心特性: 继 ...
- 《ECMAScript6标准入门》第三版--读书笔记
2015年6月,ECMAScript 6正式通过,成为国际标准.尽管在目前的工作中还没有使用ES6,但是每项新技术出来总是忍不住想尝尝鲜,想知道ES6能为前端开发带来哪些变化?对自己的工作有哪些方面可 ...
- SQL Server复制入门(一)----复制简介 (转载)
简介SQL Server中的复制(Replication)是SQL Server高可用性的核心功能之一,在我看来,复制指的并不仅仅是一项技术,而是一些列技术的集合,包括从存储转发数据到同步数据到维护数 ...
- Asp连接Oracle (包含绿色版12.2客户端和ODBC驱动安装)
我能操作的终端电脑是一台linux系统可以上互联网 ,服务器在部署在独立的私网上,不方便上互联网.服务器是2008R2.安装vs不是很方便.其所linux下作开发不是不可以,java php mono ...
- python3.6和pip3安装
CenOS7 安装依赖环境 yum -y install openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc 编译 ...
- django -- Celery实现异步任务
1. 环境 python==2.7 djang==1.11.2 # 1.8, 1.9, 1.10应该都没问题 celery-with-redis==3.0 # 需要用到redis作为中间人服务(Bro ...