
MySQL
文章平均质量分 87
qq_43028008
Be who you were created to be, and you will set the world on fire。
展开
-
MVCC介绍
1 什么是 MVCC?MVCC, 即多版本并发控制。MVCC 的实现,是通过保存数据在某个时间点的快照来实现的,也就是说,不管需要执行多长时间,每个事务看到的数据都是一致的。根据事务开始的时间不同,每个事务对同一张表,同一时刻看到的数据可能是不一样的。2 Undo logredo log,它记录了事务操作变化。但是事务有时是需要回滚的,这时,undo log 就发挥了作用。undo log ...原创 2019-10-28 16:41:44 · 842 阅读 · 1 评论 -
Mysql是否需要开启缓存
从 MySQL 4.1 开始,增加了查询缓存(Query Cache,简称 QC)的功能,它会存储 select 语句的文本以及发送到客户端的结果。如果下一次收到一个相同的查询,就会从查询缓存中获得查询结果。关于 QC 的详细定义,可以查询 MySQL 5.7 官方手册那么是不是只要开启查询缓存就能提升查询速度呢?今天就一起探讨这一话题。1 认识 QCQC 需要缓存最新数据结果,因此表数据...原创 2019-10-28 16:32:32 · 2697 阅读 · 0 评论 -
哪些情况需要考虑分库分表?
使用数据库时,我们经常会聊到分库分表,那么分库分表有哪些方式?什么情况应该考虑分库分表呢?本节就来聊聊这些问题。MySQL 分库分表是指:把 MySQL 数据库物理地拆分到多个实例或者机器上去。从而降低单台 MySQL 实例的负载。那么这里讲的拆分究竟以什么方式实现的呢?这里就先来看看 MySQL 分库分表的拆分方法:1 MySQL 分库分表拆分方法MySQL 分库分表拆分方法分为:垂直拆分...原创 2019-10-25 15:48:47 · 1075 阅读 · 0 评论 -
mysql分布式事务
比如你在网上买了一本书,可以简化为在订单库增加订单,在库存库减掉这本书的 1 个库存。这里订单库和库存库是在不同的机器上,如果这两步放在两个事务里,增加订单这一步成功了,但是减库存这里失败了。那岂不是就乱了。这里就要引出分布式事务了。什么是分布式事务?1 认识分布式事务分布式事务是指一个大的事务由很多小操作组成,小操作分布在不同的服务器上或者不同的应用程序上。分布式事务需要保证这些小操作要么...原创 2019-10-24 17:28:25 · 458 阅读 · 0 评论 -
优化mysql数据库查询效率的方法
1、储存引擎选择:如果数据表需要事务处理,应该考虑使用InnoDB(默认),因为它完全符合ACID 特性;如果不需要事务处理,使用MyISAM是比较明智的。(在创建表时指定engine就行)2、分表分库,主从。(可以参考这篇文章)3、对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 orderby 涉及的列上建立索引。4、应尽量避免在 where 子句中对字段进行 null ...原创 2019-07-12 21:02:36 · 164 阅读 · 0 评论