![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DB
文章平均质量分 86
Insu1ators
这个作者很懒,什么都没留下…
展开
-
美团DB数据同步到数据仓库的架构与实践
https://tech.meituan.com/2018/12/06/binlog-dw.html转载 2019-02-02 10:58:47 · 164 阅读 · 0 评论 -
MYSQL性能优化的最佳20+条经验
为查询缓存优化你的查询 大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。 这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查询语句会让MySQL不使用缓存。请看下面的示例: // ...转载 2019-03-20 09:02:30 · 81 阅读 · 0 评论 -
如何正确的建立MySQL索引
1、较频繁地作为查询条件的字段 这个都知道。什么是教频繁呢?分析你执行的所有SQL语句。最好将他们一个个都列出来。然后分析,发现其中有些字段在大部分的SQL语句查询时候都会用到,那么就果断为他建立索引。 2、唯一性太差的字段不适合建立索引 什么是唯一性太差的字段。如状态字段、类型字段。那些只存储固定几个值的字段,例如用户登录状态、消息的status等。这个涉及到了索引扫描的特性。例如:通过索引查找...转载 2019-03-22 08:43:03 · 82 阅读 · 0 评论 -
MySQL慢查询(一) - 开启慢查询
一、简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。 二、参数说明 slow_query_log 慢查询开启状态 slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录) long_query_time 查询超过多少秒才记录 三、设置步骤...转载 2019-03-22 09:04:30 · 48 阅读 · 0 评论 -
MYSQL优化(索引创建规则)
一、SQL语句优化 (1)使用limit对查询结果的记录进行限定 (2)避免select *,将需要查找的字段列出来 (3)使用连接(join)来代替子查询 (4)拆分大的delete或insert语句 二、选择合适的数据类型 (1)使用可存下数据的最小的数据类型,整型 < date,time < char,varchar < blob (2)使用简单的数据类型,整型比字符处理开...转载 2019-03-22 09:13:18 · 78 阅读 · 0 评论 -
MySQL分区和分表
一、概念 1.为什么要分表和分区? 日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,性能低下,如果涉及联合查询的情况,性能会更加糟糕。分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。 2.什么是分表? 分表是将一个大表按照一定的规则分解成多张具有独立存储空间的实...转载 2019-03-22 10:03:09 · 54 阅读 · 0 评论 -
MySQL的语句执行顺序
MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作。其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来说是透明的,但是只有最后一个虚拟的表才会被作为结果返回。如果没有在语句中指定某一个子句,那么将会跳过相应的步骤。 下面我们来具体分析一下查询处理的每一个阶段 FORM: 对FROM的左边的表和右边的...转载 2019-03-19 11:40:27 · 82 阅读 · 0 评论