您的位置:首页 > 数据库

数据库性能优化的五种方案(mycat,基于阿里coba开源的数据库中间件,很容易实现分库分表、主从切换功能。另一个当当网开源的一个库 sharding-jdbc)

2017-07-14 10:59 1696 查看
IT技术百货 2017-06-14 22:38

关系型数据库在互联网项目中应用极为广泛,今天小编就和大家分享几个数据库优化的几种方案:

建立索引

数据库优化第一步就是建立合理的索引,这也是最初级的优化,也是DBA常用的优化方案!MySql索引类型有:普通索引,主键索引,唯一索引,组合索引!

优化SQL语句

从业务角度,优化SQL语句;这里给大家分享一个例子,查询三个小时内,未处理的订单;使用一条SQL语句的效率要远远低于使用18条SQL语句,每条SQL语句搜取10分钟;



优化表结构

能用小字段类型,就尽量用小字段类型;如能用short,就不要用int;能用数字类型,就不要用字符串类型,举个例子,一般的订单号都是数字,很少有字母的。

拆分表

表的拆分一般分为横向拆分和纵向拆分,横向拆分不改变表结构,重复多建立几张表。这种优化方式类似于上文提到的SQL语句优化的例子;另一种是纵向拆分,两个表通过字段相关联。



分库

分库是数据库优化的一种较高级手段,实际上是横向分表的衍生;一般需要有中间件或者客户端做一些工作实现,这里给大家推荐两个分库的代码:一个是mycat,基于阿里coba开源的数据库中间件,很容易实现分库分表、主从切换功能。另一个当当网开源的一个库 sharding-jdbc



关于分库的知识,小编会在MYSQL高可用的文章中介绍!

好文推荐:

高可用分布式微服务架构搭建(附demo源码)



基于LVS+Keepalive搭建分布式集群(原理+实例)



50行代码搞定第一个机器学习系统(推荐系统)



互联网项目特点及高可用架构方案设计



欢迎关注,评论补充其他优化方案。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: