MySQL · 引擎特性 · 基于InnoDB的物理复制实现(转载)
摘要:http://mysql.taobao.org/monthly/2016/05/01/ 在开始之前,你需要对InnoDB的事务系统有个基本的认识。如果您不了解,可以参考我之前的几篇关于InnoDB的文章,包括InnoDB的事务子系统,事务锁,redo log,undo log,以及崩溃恢复逻辑。在这
阅读全文
posted @
2017-12-26 16:55
devilwind
阅读(1477)
推荐(0)
InnoDB多版本(MVCC)实现简要分析(转载)
摘要:http://hedengcheng.com/?p=148 基本知识 假设对于多版本(MVCC)的基础知识,有所了解。InnoDB为了实现多版本的一致读,采用的是基于回滚段的协议。 行结构 InnoDB表数据的组织方式为主键聚簇索引。由于采用索引组织表结构,记录的ROWID是可变的(索引页分裂的时候
阅读全文
posted @
2017-12-26 16:54
devilwind
阅读(281)
推荐(0)
MySQL数据库事务各隔离级别加锁情况--read committed && MVCC(转载)
摘要:http://www.imooc.com/article/17290 http://www.51testing.com/html/38/n-3720638.html https://dev.mysql.com/doc/refman/5.7/en/innodb-multi-versioning.htm
阅读全文
posted @
2017-12-25 17:53
devilwind
阅读(958)
推荐(0)
MySQL数据库InnoDB存储引擎中的锁机制(转载)
摘要:http://www.uml.org.cn/sjjm/201205302.asp 00 – 基本概念 当并发事务同时访问一个资源的时候,有可能导致数据不一致。因此需要一种致机制来将访问顺序化。 锁就是其中的一种机制。我们用商场的试衣间来做一个比喻。试衣间供许多消费者使用。因此可能有多个消费者同时要试
阅读全文
posted @
2017-12-25 15:44
devilwind
阅读(436)
推荐(0)
mysql锁文章
摘要:http://www.genshuixue.com/i-cxy/p/15285416 http://blog.csdn.net/hw_libo/article/details/39080809 http://hedengcheng.com/?p=771 https://yq.aliyun.com/a
阅读全文
posted @
2017-12-22 17:48
devilwind
阅读(123)
推荐(0)
mysql 锁2
摘要:官网地址 https://dev.mysql.com/doc/refman/5.5/en/innodb-transaction-isolation-levels.html 这里主要是说事务隔离级别,以及对锁的影响 Transaction isolation is one of the foundat
阅读全文
posted @
2017-12-22 17:29
devilwind
阅读(196)
推荐(0)
mysql 意向锁的作用
摘要:直接copy知乎上的内容 https://www.zhihu.com/question/51513268 作者:尹发条地精链接:https://www.zhihu.com/question/51513268/answer/127777478来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商
阅读全文
posted @
2017-12-22 15:57
devilwind
阅读(4203)
推荐(4)
mysql 锁
摘要:转官网文档 https://dev.mysql.com/doc/refman/5.5/en/innodb-locking.html 14.8.1 InnoDB Locking This section describes lock types used by InnoDB. Shared and E
阅读全文
posted @
2017-12-22 14:50
devilwind
阅读(371)
推荐(0)
mariadb semi plugin遇到的坑
摘要:安装完semi plugin运行一段时间后,重启mariadb, 突然发现canal无法解析数据了,一直在报错,然后登陆mariadb, show plugins竟然没有看到之前安装的semi plugin,尝试再次安装却报错Duplicate entry 'rpl_semi_sync_master
阅读全文
posted @
2017-12-19 11:15
devilwind
阅读(539)
推荐(1)
java中友元的完美实现(转载)
摘要:http://blog.sina.com.cn/s/blog_ce5b9f7e0102vhiv.html C++中有一个友元机制,可以给予一个类访问另一个类中私有成员的权限。 这个机制有时候是很有用的。比如一个电视机类,其中有选台的私有方法,我们希望除了遥控器类以外所有的类都不能访问它。在C++中我
阅读全文
posted @
2017-12-18 17:20
devilwind
阅读(5005)
推荐(0)
dubbo服务telnet命令
摘要:转载 https://www.cnblogs.com/feiqihang/p/4387330.html dubbo服务发布之后,我们可以利用telnet命令进行调试、管理。Dubbo2.0.5以上版本服务提供端口支持telnet命令,下面我以通过实例抛砖引玉一下: 1.连接服务 测试对应IP和端口下
阅读全文
posted @
2017-12-18 17:04
devilwind
阅读(2154)
推荐(0)
Linux之lsof命令
摘要:转载 http://blog.csdn.net/xifeijian/article/details/9088137 lsof命令简介: lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访
阅读全文
posted @
2017-12-18 17:02
devilwind
阅读(852)
推荐(0)
tcpdump命令(转载)
摘要:https://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpd
阅读全文
posted @
2017-12-18 17:01
devilwind
阅读(1789)
推荐(0)
linux 查看进程启动路径
摘要:在linux下查看进程大家都会想到用 ps -ef|grep XXX 可是看到的不是全路径,怎么看全路径呢? 每个进程启动之后在 /proc下面有一个于pid对应的路径 例如:ps -ef|grep python 显示:oracle 4431 4366 0 18:56 pts/2 00:00:00
阅读全文
posted @
2017-12-18 17:00
devilwind
阅读(25974)
推荐(2)
MySQL事务提交过程(转载)
摘要:http://blog.csdn.net/sofia1217/article/details/53968214 上一篇文章我们介绍了在关闭binlog的情况下,事务提交的大概流程。之所以关闭binlog,是因为开启binlog后事务提交流程会变成两阶段提交,这里的两阶段提交并不涉及分布式事务,当然m
阅读全文
posted @
2017-12-18 16:26
devilwind
阅读(5302)
推荐(0)
mysql 5.6 binlog组提交实现原理(转载)
摘要:http://blog.itpub.net/15480802/viewspace-1411356/ Redo组提交 Redo提交流程大致如下 lock log->mutex write redo log buffer to disk unlock log->mutex fsync Fsync写磁盘耗
阅读全文
posted @
2017-12-18 16:25
devilwind
阅读(1808)
推荐(0)
MySQL并发复制系列一:binlog组提交 (转载)
摘要:http://blog.csdn.net/woqutechteam/article/details/51178803 MySQL Binary log在MySQL 5.1版本后推出主要用于主备复制的搭建,我们回顾下MySQL 在开启/关闭 Binary Log功能时是如何工作的 。 MySQL没有开
阅读全文
posted @
2017-12-18 16:24
devilwind
阅读(856)
推荐(0)
MySQL binlog 组提交与 XA(两阶段提交)--1
摘要:参考了网上几篇比较靠谱的文章 http://www.linuxidc.com/Linux/2015-11/124942.htm http://blog.csdn.net/woqutechteam/article/details/51178803 http://blog.itpub.net/15480
阅读全文
posted @
2017-12-18 16:23
devilwind
阅读(407)
推荐(0)
github中fork的使用
摘要:转载https://www.cnblogs.com/patchouli/p/6511251.html 由于git的权限控制功能比较弱,如果想给某个项目提供代码除了直接获得项目的push权限外,github另外提供了pull request的方式来进行协作。这种方式请求仓库拥有者拉自己的代码,而不需要
阅读全文
posted @
2017-12-18 14:23
devilwind
阅读(3197)
推荐(0)
当范型遇到重载
摘要:看以下这段代码 编译无法通过,因为编译阶段会把泛型擦除,等于两个方法定完全一样。
阅读全文
posted @
2017-12-18 11:34
devilwind
阅读(187)
推荐(0)
java 泛型 checkcast
摘要:我们来看一段代码 运行结果输出 1 asd 通过反射在运行期嗲噢哟红那个list的add方法,运行期已经擦除了类型参数信息,相当于运行期代码是 ArrayList array=new ArrayList(); array.add(1);array.getClass().getMethod("add"
阅读全文
posted @
2017-12-18 11:30
devilwind
阅读(2802)
推荐(0)
Java泛型深入理解(转载)
摘要:原文地址 http://blog.csdn.net/sunxianghuang/article/details/51982979 泛型之前 在面向对象编程语言中,多态算是一种泛化机制。例如,你可以将方法的参数类型设置为基类,那么该方法就可以接受从这个基类中导出的任何类作为参数,这样的方法将会更具有通
阅读全文
posted @
2017-12-18 09:41
devilwind
阅读(334)
推荐(0)
java字节码指令集
摘要:转载 https://www.cnblogs.com/vinozly/p/5399308.html 字节码指令集 Java虚拟机的指令由一个字节长度的、代表着某种特定操作含义的操作码(Opcode)以及跟随其后的零至多个代表此操作所需参数的操作数(Operands)所构成。 对于大部分为与数据类型相
阅读全文
posted @
2017-12-18 08:46
devilwind
阅读(2002)
推荐(0)
hashmap引起死循环
摘要:今天开发环境压测的时候出现cpu用满了情况,看线程堆栈,一堆线程都停留在org.apache.commons.collections4.map.AbstractHashedMap.put(AbstractHashedMap.java:285),查看google源代码 public Object pu
阅读全文
posted @
2017-12-15 17:54
devilwind
阅读(6468)
推荐(0)
mysql binlog协议分析--具体event
摘要:这几天在修改canal, 连接mysql和maria接收到的event有所区别 拿一个简单的insert sql来举例 mysql 会有以下几个event写入到binlog里 1.ANONYMOUS_GTID_LOG_EVENT2.QUERY_EVENTheader { version: 1 log
阅读全文
posted @
2017-12-15 14:40
devilwind
阅读(1888)
推荐(0)
redis批量删除
摘要:/work/app/redis/bin/redis-cli -a youpassword keys 'Volume:*' | xargs /work/app/redis/bin/redis-cli -a youpassword del
阅读全文
posted @
2017-12-15 09:09
devilwind
阅读(338)
推荐(0)
负数的二进制转换
摘要:1. 先使用正数转成二进制位 2.二进制位取反 3.取反后+1
阅读全文
posted @
2017-12-14 20:31
devilwind
阅读(2984)
推荐(0)
mysql 协议分析
摘要:MYSQL Binlog协议分析 此处不讨论建立连接,验证和handshake的交互协议 Binlog协议 一个MYSQL 通信包由包头包体组成 包体根据具体的交互协议有自身的组成结构, 在binlog消息体组成结构如下 + + | event | timestamp 0 : 4 | | heade
阅读全文
posted @
2017-12-14 20:25
devilwind
阅读(2370)
推荐(0)
gradle使用心得
摘要:gradle是语言式构建,和maven配置型还是差别挺大,琢磨了2天 1.在解析setting.gradle之后,开始解析build.gradle之前,这里如果要干些事情(更改build.gradle校本内容),可以写在beforeEvaluate 2.在所有build.gradle解析完成后,开始
阅读全文
posted @
2017-12-14 20:17
devilwind
阅读(808)
推荐(0)