场景说明 日常开发中,连接多个数据库是一个很常见的需求,我们的系统是基于spring boot+mybatis进行数据库的操作,网上常见的思路是基于不同的数据库创建不同的bean,大概的实现方式如下: package c…
分类:MySql
Mysql 主从同步问题整理.
今早mysql同步失败,主数据库有530W而从数据库只有去350W,幸亏是做备份要不然这个就是个事故了. 问题如下: Last_Error: Relay log read failure: Could not parse…
MySQL ORDER BY主键id加LIMIT限制走错索引
背景及现象 report_product_sales_data表数据量2800万; 经测试,在当前数据量情况下,order by主键id,limit最大到49的时候可以用到索引report_product_sales_d…
读《MySQL必知必会》笔记
本书的一些简介,以及其他详情可以参见《MySQL必知必会》 MySQL是世界上最受欢迎的数据库管理系统之一。书中从介绍简单的数据检索开始,逐步深入一些复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储…
MySQL SQL Tuning:深入理解Order By
在MySQL中ORDER BY按先后顺序有2种实现方式,先走索引无排序,如果不行,则用FILESORT走索引无排序需要满足2个条件:①排序字段和执行计划中所利用INDEX的索引键(或前面几个索引键)完全一致②表访问方式为…
让 MySQL 支持 emoji 图标存储
在MySLQ中 UPDATA 和 INSERT 数据的时候,如果数据上面带有emoji图标,例如:💗、👽、💔很容易更新活着插入不成功,导致报错。 Error: ER_TRU…
InnoDB 缓冲池
InnoDB 缓冲池 InnoDB 维护一个称为缓冲池的存储区域, 用于缓存内存中的数据和索引 缓冲池的大小当然是越大越好 (为服务器上的其他进程留下足够的内存) InnoDB 已块的形式存储缓存 通过以下参数配置缓存大…
深入理解MySQL 5.7 GTID系列(四):mysql.gtid_executed&PREVIOUS GTID EVENT
之所以把MySQL.GTID_EXECUTED表的作用和PREVIOUS GTID EVENT的改变放到一起进行描述是因为它们后面文章探讨的基础。这部分使用到了我自己使用C语言写的原生BINLOG解析工具INFOBIN。…
深入理解Mysql索引底层数据结构与算法
深入理解Mysql索引底层数据结构与算法 这是我第一篇CSDN文章,谢谢关注 做笔记的好处 Mysql数据库涉及的算法 mysql存储引擎(针对于表) 这是我第一篇CSDN文章,谢谢关注 你好CSDN! 这是我第一次在C…
MySql双主搭建
简单介绍一下搭建MySql双主的背景: 1. 两台mysql都可读写,互为主备,默认只使用一台(masterA)负责数据的写入,另一台(masterB)备用; 2.masterA是masterB的主库,masterB又是…
[MySQL]MySQL分区与传统的分库分表
传统的分库分表 传统的分库分表都是通过应用层逻辑实现的,对于数据库层面来说,都是普通的表和库。 分库 分库的原因 首先,在单台数据库服务器性能足够的情况下,分库对于数据库性能是没有影响的。在数据库存储上,database…
二进制日志-记录了什么
二进制日志的作用是记录数据库的更改,然后用于复制和PITR(即时恢复),对那些不改变数据库的语句则不会写入二进制日志,如果一些常用的查询语句等。二进制日志按照master上事务提交的顺序记录他们,取决于事务提交时间。我们…