随笔分类 - 数据库
摘要:出处: 互联网项目中mysql应该选什么事务隔离级别 1:一般互联网项目中mysql的事务隔离级别设置成 Read Commited 读已提交 Oracle,SqlServer 的默认事务隔离级别是读已提交(Read Commited); Mysql 的默认事务隔离级别是可重复读(Repeatabl
阅读全文
摘要:58沈剑 架构师之路: 业界难题-“跨库分页”的四种方案
阅读全文
摘要:作者:jiaxin 出处:http://www.cnblogs.com/YangJiaXin/ 目录 背景 分析测试 select xxx_record语句 delete xxx_record语句 实施 索引优化后 delete大表优化为小批量删除 总结 背景 XX实例(一主一从)xxx告警中每天凌
阅读全文
摘要:原文地址:https://www.toutiao.com/a6777338939360412171/ 1 开篇 相信大家都用过事务以及了解他的特点,如原子性(Atomicity),一致性(Consistency),隔离型(Isolation)以及持久性(Durability)等。今天想跟大家一起研究
阅读全文
摘要:出处:SQL的各种连接Join详解 SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。 最常见的 JOIN 类型:SQL INNER JOIN(简单的 JOIN)、SQL LEFT JOIN、SQL RIGHT JOIN、SQL FULL JOIN,其中前一种是内连
阅读全文
摘要:B树 我们来介绍面向磁盘结构一种最长见的数据结构 -- B树。他应该是大家在日常接触最多的数据结构之一了~ 因为只要你在使用数据库,你就是在用B树。甚至当你在用hbase的时候,他其实也只是个分布式的大B树而已。 我们一直都在强调,硬件是骨头,软件是肉。软件的目标就是尽可能的发挥硬件的技术特性,并尽
阅读全文
摘要:出处: 腾讯技术工程 链接: https://zhuanlan.zhihu.com/p/113917726 一步一步推导出 Mysql 索引的底层数据结构。 Mysql 作为互联网中非常热门的数据库,其底层的存储引擎和数据检索引擎的设计非常重要,尤其是 Mysql 数据的存储形式以及索引的设计,
阅读全文
摘要:你知道MySQL的原子性是怎么保证的吗? 谁都知道在事务里边原子性的意思:”一个事务包含多个操作,这些操作要么全部执行,要么全都不执行“ 事务保证需要用到一下几个常见 log undo log binlog redo log 一、什么是binlog binlog其实在日常的开发中是听得很多的,因为很
阅读全文
摘要:出处: https://www.cnblogs.com/leefreeman/p/8315844.html 一个问题? InnoDB一棵B+树可以存放多少行数据?这个问题的简单回答是:约2千万。为什么是这么多呢?因为这是可以算出来的,要搞清楚这个问题,我们先从InnoDB索引数据结构、数据组织方式说
阅读全文
摘要:出处: MySQL优化 - 性能分析与查询优化 优化应贯穿整个产品开发周期中,比如编写复杂SQL时查看执行计划,安装MySQL服务器时尽量合理配置(见过太多完全使用默认配置安装的情况),根据应用负载选择合理的硬件配置等。 1、性能分析 性能分析包含多方面:CPU、Memory、磁盘/网络IO、MyS
阅读全文
摘要:你只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题? 首先需要考虑到:更新数据库或者更新缓存都有可能失败,在这种前提下分析业务带来的影响。 一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求
阅读全文
摘要:一、什么影响了数据库查询速度 1.1 影响数据库查询速度的四个因素 1.2 风险分析 Tips:最好不要在主库上数据库备份,大型活动前取消这样的计划。 磁盘IO:磁盘IO性能突然下降、大量消耗磁盘性能的计划任务。解决:更快磁盘设备、调整计划任务、做好磁盘维护。 1.3 网卡流量:如何避免无法连接数据
阅读全文
摘要:出处: 一步一步带你入门MySQL中的索引和锁 索引 索引常见的几种类型 索引常见的类型有哈希索引,有序数组索引,二叉树索引,跳表等等。本文主要探讨 MySQL 的默认存储引擎 InnoDB 的索引结构。 InnoDB的索引结构 在InnoDB中是通过一种多路搜索树——B+树实现索引结构的。在B+树
阅读全文
摘要:《58到家MySQL军规升级版》 《数据库索引,到底是什么做的?》 《MyISAM与InnoDB的索引差异究竟是啥?》 《InnoDB,为何并发如此之高?》 《快照读,在RR和RC下的差异》 《InnoDB插入自增列,是表锁吗?》 《InnoDB并发插入,会不会互斥?》 《InnoDB,select
阅读全文
摘要:出处原文: 1分钟了解MyISAM与InnoDB的索引差异 数据库的索引分为主键索引(Primary Inkex)与普通索引(Secondary Index)。InnoDB和MyISAM是怎么利用B+树来实现这两类索引,其又有什么差异呢?这是今天要聊的内容。 一,MyISAM的索引 MyISAM的索
阅读全文
摘要:转载: https://zhuanlan.zhihu.com/p/34650908 事务: 说起mysql innodb存储引擎的事务,首先想到就是ACID(不知道的请google),数据库是如何做到ACID的呢?举个例子: 数据库数据存放的文件称为data file;日志文件称为log file;
阅读全文
摘要:转载: mysql在线修改表结构大数据表的风险与解决办法归纳 整理这篇文章的缘由: 互联网应用会频繁加功能,修改需求。那么表结构也会经常修改,加字段,加索引。在线直接在生产环境的表中修改表结构,对用户使用网站是有影响。 以前我一直为这个问题头痛。当然那个时候不需要我来考虑,虽然我们没专门的dba,他
阅读全文
摘要:相关文章出处链接: MySQL优化/面试,看这一篇就够了 史上最全的MySQL高性能优化规范建议 MySQL性能优化之骨灰级,高阶神技 ! 数据库命令规范 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括
阅读全文
摘要:出处: 查询语句的时候尽量避免全表扫描,使用全扫描,索引扫描!会引起全表扫描的几种SQL如下 1、模糊查询效率很低: 原因:like本身效率就比较低,应该尽量避免查询条件使用like;对于like ‘%...%’(全模糊)这样的条件,是无法使用索引的,全表扫描自然效率很低;另外,由于匹配算法的关系,
阅读全文