Oracle:On ROWNUM and Limiting Results
转载记录一篇关于ROWNUM伪列的文章来自Tom Kyte大师 https://blogs.oracle.com/oraclemagazine/on-rownum-and-limiting-results This issue’s Ask Tom column is a little different from the typical column. I receive many quest
MySQL:关于Bug #81119
修复版本5.7.18,下面是commit,记录一下后面详细学习。 故障 下面是commit $ git show a43f7d5a6130550619afad3fb513c98e00dc505e commit a43f7d5a6130550619afad3fb513c98e00dc505e Author: Daogang Qu <bill.qu@oracle.com>
MySQL:一个innodb_thread_concurrency设置不当引发的故障
一、问题来源欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 这是一个朋友问我的典型案例。整个故障现象表现为,MySQL数据库频繁的出现大量的请求不能响应。下面是一些他提供的证据: 1、show processlist从状态信息来看出现如下情况: insert操作:状态为update update/delete操作:状态为updatingselect操作:状态为sendi
随笔:MySQL:双主情况下跳过Event的方式
简单记录如下: 双主情况下跳过相同server id Event的方式: IO线程 通过对比SERVER_ID 进行跳过操作 { mi->set_master_log_pos(mi->get_master_log_pos() + inc_pos); memcpy(rli->ign_master_log_name_end, mi->
[c++11]我理解的右值引用、移动语义和完美转发
转载 自 https://www.jianshu.com/p/d19fc8447eaa c++中引入了右值引用和移动语义,可以避免无谓的复制,提高程序性能。有点难理解,于是花时间整理一下自己的理解。 左值、右值C++中所有的值都必然属于左值、右值二者之一。左值是指表达式结束后依然存在的持久化对象,右值是指表达式结束时就不再存在的临时对象。所有的具名变量或者对象都是左值,而右值不具名。很难得到左
MySQL:FTWRL一个奇怪的堵塞现象和堵塞总结
本案例由徐晨亮提供,并且一起探讨。 本文中FTWRL = “flush table with read lock” 关于常用操作加MDL LOCK锁类型参考文章:http://blog.itpub.net/7728585/viewspace-2143093/ 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 一、两个不同的现象首先建立一张有几条数据的表就可以了,我这
MySQL 字符串转double转换栈帧(可能丢失精度)
简单记录栈帧以备后用 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 一、转换案例最近有朋友讨论字符串转换double丢失精度的问题案例如下: 本案例来自朋友徐晨亮 root@mysqldb 22:12: [xucl]> show create table t1\G *************************** 1. row ********
MySQL 8部分新特性(8.0.17)
参考官方文档,记录了部分我关注的新特性。本文仅仅是大概记录而已,准确描述参考官方文档: MySQL 8.0 Reference Manual 数据字典使用事务性存储引擎。以前版本数据字典存储在文件或者非事务引擎表中参考第14节。支持原子性DDL,进行原子性的数据库字典更新,并且binlog的写入和DDL操作为同一个原子性事务。参考13.1.1节升级过程,安装新版本后自动进行升级操作,而不需
MySQL 8部分新特性(8.0.17)
参考官方文档,记录了部分我关注的新特性。本文仅仅是大概记录而已,准确描述参考官方文档: MySQL 8.0 Reference Manual 数据字典使用事务性存储引擎。以前版本数据字典存储在文件或者非事务引擎表中参考第14节。支持原子性DDL,进行原子性的数据库字典更新,并且binlog的写入和DDL操作为同一个原子性事务。参考13.1.1节升级过程,安装新版本后自动进行升级操作,而不需
第28节 从库Seconds_Behind_Master延迟总结
从库Seconds_Behind_Master延迟总结 注意:本文是《深入理解MySQL主从原理 32节》的第28节 到这里本系列已经接近尾声了,是时候对常见引起主从延迟的情形进行一个总结了。我想如果我一开始就把这些情形拿出来也许大家对具体的原因不是那么清楚,但是经过本系列的学习,我相信当我说起这些情形的时候大家都很清楚它的原因了。当然如果还有其他造成延迟的情形也欢迎大家一起讨论。 一、
第28节 从库Seconds_Behind_Master延迟总结
从库Seconds_Behind_Master延迟总结 注意:本文是《深入理解MySQL主从原理 32节》的第28节 到这里本系列已经接近尾声了,是时候对常见引起主从延迟的情形进行一个总结了。我想如果我一开始就把这些情形拿出来也许大家对具体的原因不是那么清楚,但是经过本系列的学习,我相信当我说起这些情形的时候大家都很清楚它的原因了。当然如果还有其他造成延迟的情形也欢迎大家一起讨论。 一、
随笔:MySQL 查询事务状态字段说明
今天一个朋友想查看一下的MySQL层事务提交状态经历的过程,比如我们常说的prapare flush sync commit 几个阶段,但是找了一下发现视乎没有视图可以看到一共看了3个地方: information_schema.INNODB_TRX 的trx_state字段information_schema.INNODB_TRX 的trx_operation_state字段perform
随笔MySQL:Searching rows for update状态解析
欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 1、限制条件一般不能是唯一键和主键,也不能是全表,代码如下: if (used_index != MAX_KEY) //不能是唯一键(主键) 和 全表 { // Check if we are modifying a key that we are used to search with: used_key_i
第24节 从库数据查找和参数slave_rows_search_algorithms
从库数据查找和参数slave_rows_search_algorithms
随笔:MYSQL_BIN_LOG::COND_done 是什么
一、问题 是什么 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 二、找到影响位置整个寻找过程应该找到key_BINLOG_COND_done这个取值,然后去看他是在那里被定义到相应的mutex/cond上,然后查找mutex/cond的作用即可。 定义:static PSI_cond_info all_server_conds[]={{ &key_PAGE_
事务状态持久化
函数接口: trx_lists_init_at_db_start trx_resurrect_insert trx_resurrect_update 事物状态: /*-------------------------------------------------------------*/ #define TRX_UNDO_STATE 0 /*!< T
show processlist time负数的初探
select * from information_schema.processlist;show processlist 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 一、show processlist函数接口:mysqld_list_processes 栈帧: #0 mysqld_list_processes (thd=0x7ffedc008250, u
show processlist time负数的初探
select * from information_schema.processlist;show processlist 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 一、show processlist函数接口:mysqld_list_processes 栈帧: #0 mysqld_list_processes (thd=0x7ffedc008250, u
binlog 异常暴涨分析
binlog 异常暴涨分析
第16节:基于WRITESET的并行复制方式
欢迎关注我的专栏《深入理解MySQL主从原理 32讲》具体可以点击:ttps://j.youzan.com/yEY_Xi 基于COMMIT_ORDER的并行复制只有在有压力的情况下才可能会形成一组,压力不大的情况下在从库的并行度并不会高。但是基于WRITESET的并行复制目标就是在ORDER_COMMIT的基础上再尽可能的降低last commit,这样在从库获得更好的并行度(即便在主库