-
Redis的快照为什么不会阻塞其他请求?
所属栏目:[MySql教程] 日期:2020-02-14 热度:199
副标题#e# 为什么这么设计(Why's THE Design)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对具体实现造成的影响。如果你有想要了解的问题,可以在文章下面留言[详细]
-
8种最坑的SQL错误用法,你有没有踩过坑?
所属栏目:[MySql教程] 日期:2020-02-07 热度:141
副标题#e# 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方。比如对于下面简单的语句,一般 DBA 想到的办法是在 type, name, create_time 字段上加组合索引。这样条件排序都能有效的利用到索引,性能迅速提升。 好吧,可能90%以上的 DBA 解决[详细]
-
新来的实习生不小心删库了,吓得我虎躯一震!
所属栏目:[MySql教程] 日期:2020-02-07 热度:79
昨天下午看一篇程序员的搞笑文章,看到了删库跑路的段子,然后想起了自己曾经的经历,于是就想写写了。 图片来自 Pexels 记得是发生在 2013 年,具体日期记不清了。那时候,我们的存储系统已经成功在全部门铺开了,当时我们正准备着手进行第二轮的优化。[详细]
-
数据库迁移,要停机发布么?看看别家的程序员怎么做的
所属栏目:[MySql教程] 日期:2020-02-07 热度:194
本来以为过年了要好好写文章,因为疫情的关系,新增的不少的需求。希望这场疫情早日过去吧,武汉加油。今天我们来聊一聊数据库迁移,这个其实非常的常见,例如我们要从自己的机房将数据迁移到腾讯云或者阿里云这些线上服务,或者我们有时候需要把一个业务[详细]
-
2019年全球最受欢迎数据库新鲜出炉,你猜中了吗?
所属栏目:[MySql教程] 日期:2020-01-14 热度:91
副标题#e# DB-Engines 2019:MySQL 获得年度数据库称号 计算结果基于当前最新的分数(2020年1月)和2019年1月的分数差值获得。最终的结果代表了一个产品在2019 年的受欢迎程度。DB-Engines表示之所以采用分数而不是百分比作为评估的维度,是为了照顾在开始时[详细]
-
“分库分表 不注意选型和流程的话,容易失控
所属栏目:[MySql教程] 日期:2020-01-12 热度:198
副标题#e# 数据库中间件之分库分表 恭喜你,贵公司终于成长到一定规模,需要考虑高可用,甚至分库分表了。但你是否知道分库分表需要哪些要素?拆分过程是复杂的,提前计划,不要等真正开工,各种意外的工作接踵而至,以至失控。 本文意图打开数据库中间件的[详细]
-
一文搞懂各种数据库SQL执行计划:MySQL、Oracle等
所属栏目:[MySql教程] 日期:2020-01-12 热度:81
副标题#e# 执行计划(execution plan,也叫查询计划或者解释计划)是数据库执行 SQL 语句的具体步骤,例如通过索引还是全表扫描访问表中的数据,连接查询的实现方式和连接的顺序等。如果 SQL 语句性能不够理想,我们首先应该查看它的执行计划。本文主要介绍如[详细]
-
Access、SQLite,我该如何选择?
所属栏目:[MySql教程] 日期:2020-01-11 热度:165
SQLite和Access,二者都是常用的轻型关系型数据库系统。在DB-Engines的数据库排名中,二者排名都比较靠前,名次也很接近,说明使用两种数据库的人群还都不少,很多朋友在二者之间难以选择。 SQLite:我虽渺小却锋利顽强! SQLite,是一款轻型的,遵守ACID的[详细]
-
MySQL数据库ORDER BY优化总结(为排序使用索引)
所属栏目:[MySql教程] 日期:2019-12-26 热度:58
副标题#e# 在使用order by时,经常出现Using filesort,所以对于此类sql语句我们需要去尽力优化,使其尽量使用Using index。 那么,我们对于这类型的语句我们怎么去做优化呢?因为这一块还是比较容易混淆的,所以我弄了个实验,相信大家跟我一起做下实验就都[详细]
-
几万年前,有一只猴子大闹地府后删库跑路...
所属栏目:[MySql教程] 日期:2019-12-26 热度:91
副标题#e# 话说几万年前,有一只猴子在大闹地府删库跑路,导致地府几百年没缓过劲儿来...... 在知乎上冒出这么一个问题:孙悟空无姓无名的时候,阎王生死簿是怎么写的呢? 生死薄技术上如何实现?广大生灵在生死薄中的唯一标记是什么?阴间数据库是什么样一个[详细]
-
Mybatis超详细插件机制解析,弄懂拦截器So easy
所属栏目:[MySql教程] 日期:2019-12-26 热度:58
副标题#e# 概述 Mybatis插件又称拦截器,本篇文章中出现的拦截器都表示插件。 Mybatis采用责任链模式,通过动态代理组织多个插件(拦截器),通过这些插件可以改变Mybatis的默认行为(诸如SQL重写之类的),由于插件会深入到Mybatis的核心,因此在编写自己的插[详细]
-
一文带你了解 Redis 的慢日志相关底层原理
所属栏目:[MySql教程] 日期:2019-12-24 热度:109
副标题#e# 相信很多小伙伴在使用 Redis 的时候都知道 Redis 有相关慢日志的查询功能,并且多多少少都看过。那 Redis 底层到底是如果创建慢日志以及慢日志的结构是什么样子的呢?这篇文章就带大家认识一下。我们先看一张慢日志的截图 使用slowlog get 2命令查[详细]
-
写一手好 SQL 很有必要
所属栏目:[MySql教程] 日期:2019-12-24 热度:147
副标题#e# 其实这是非常低级的错误,我不禁后背一凉,团队成员的技术水平亟待提高[详细]
-
别再问“分库分表”了,再问就崩溃了!
所属栏目:[MySql教程] 日期:2019-12-24 热度:55
副标题#e# 在谈论数据库架构和数据库优化的时候,我们经常会听到分库分表,分库分表其实涉及到很多难题,今天我们来汇总一下数据库分库分表解决方案。 图片来自 Pexels 数据切分 关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有[详细]
-
详解MySQL数据库删除所有表的外键约束、禁用外键约束相关脚本
所属栏目:[MySql教程] 日期:2019-11-05 热度:101
概述 数据库的外键虽然能保证数据数据一致性和完整性,但是也一定程度地影响了数据更新的性能。在开发中,我们使用PowerDesigner建立物理数据模型时,为了结构的清晰,增加可读性,会创建表与表之间的关联关系。 在实际开发中,数据库中一般不会存在外键,[详细]
-
分分钟解决 MySQL 查询速度慢与性能差
所属栏目:[MySql教程] 日期:2019-11-05 热度:188
副标题#e# 一、什么影响了数据库查询速度 1.1 影响数据库查询速度的四个因素 1.2 风险分析 QPS: QueriesPerSecond意思是每秒查询率,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 TPS: 是 Trans[详细]
-
超详细的5个Oracle数据库分组函数总结
所属栏目:[MySql教程] 日期:2019-11-05 热度:103
副标题#e# 概述 今天主要分享下Oracle数据库分组函数group by 、 rollup、cude、grouping 、grouping sets的常用用法,以下以Oracle自带schema做演示。 1、group by的使用 --根据DEPTNO和JOB进行分组。求相同DEPTNO,相同JOB的员工工资总和。 SELECTE.DEPTNO[详细]
-
MySQL事务,这篇文章就够了
所属栏目:[MySql教程] 日期:2019-11-04 热度:197
副标题#e# 0 什么是事务 事务(Transaction) 是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都 执行,要么都不执行,它是一个不可分割的工作单位。事务是数据库维护数据一致性的单位,在每 个事务结束时,都能保持数据一致性。 同时,[详细]
-
详解Oracle11g和12c的v$pwfile_user视图及区别
所属栏目:[MySql教程] 日期:2019-11-04 热度:180
V$PWFILE_USERS 列出的是password文件里已授予sysdba、sysoper权限的用户,如果查询没有记录,那就有可能没有了password文件了,没有了密码文件当然sqlplus sys/xx as sysdba这种用sys用sysdba用户就无法登录了。下面介绍一下11g和12c的v$pwfile_user视图[详细]
-
MySQL如何实时性能分析,诊断性能瓶颈
所属栏目:[MySql教程] 日期:2019-11-04 热度:169
一、概述 spotlight _on_mysql是mysql性能监控一个不错的小工具,它无需在要监控的机器上安装任何软件或客户端,只要提供mysql的连接的账号和连接地址,即可实现对mysql的性能监控。友好直观的图形界面,能帮你迅速发现潜在的性能瓶颈。 二、部署过程 2.1 前提[详细]
-
分享几个常用的Oracle 11g内存视图脚本
所属栏目:[MySql教程] 日期:2019-11-04 热度:196
今天主要分享几个关于Oracle数据库的内存视图的脚本,仅供参考。 一、V$MEMORY_DYNAMIC_COMPONENTS V$MEMORY_DYNAMIC_COMPONENTSdisplaysinformationaboutthedynamicSGAcomponents.ThisviewsummarizesinformationbasedonallcompletedSGAresizeoperationssi[详细]
-
一步一步带你入门MySQL中的索引和锁
所属栏目:[MySql教程] 日期:2019-11-04 热度:112
副标题#e# 索引 索引常见的几种类型 索引常见的类型有哈希索引,有序数组索引,二叉树索引,跳表等等。本文主要探讨 MySQL 的默认存储引擎 InnoDB 的索引结构。 InnoDB的索引结构 在InnoDB中是通过一种多路搜索树B+树实现索引结构的。在B+树中是只有叶子结[详细]
-
MongoDB一次节点宕机引发的思考
所属栏目:[MySql教程] 日期:2019-11-04 热度:53
副标题#e# 简介 最近一个 MongoDB 集群环境中的某节点异常下电了,导致业务出现了中断,随即又恢复了正常。 通过ELK 告警也监测到了业务报错日志。 运维部对于节点下电的原因进行了排查,发现仅仅是资源分配上的一个失误导致。 在解决了问题之后,大家也对[详细]
-
详解MySQL数据库Innodb内存结构和其是如何使用内存的?
所属栏目:[MySql教程] 日期:2019-11-04 热度:180
副标题#e# 概述 很多朋友可能会有许多关于Innodb如何使用内存的问题。我这里将简单介绍一下innodb内存结构,然后以innodb启动时的分配情况做一个解释。 1. INNODB内存结构 (1) 聚集索引与非聚集索引: 聚集索引:主键,有序,存储顺序与内存一致 非聚集索引[详细]
-
再有人问你为什么MySQL用B+树做索引,就把这篇文章发给她
所属栏目:[MySql教程] 日期:2019-11-04 热度:176
副标题#e# 索引这个词,相信大多数人已经相当熟悉了,很多人都知道MySQL的索引主要以B+树为主,但是要问到为什么用B+树,恐怕很少有人能把前因后果讲述的很完整。本文就来从头到尾介绍下数据库的索引。 索引是一种数据结构,用于帮助我们在大量数据中快速定[详细]