数据库
文章平均质量分 60
nuaazhaofeng
爱生活,爱coding
展开
-
Mybatis的mapper文件中$和#的区别
一般来说,我们使用mybatis generator来生成mapper.xml文件时,会生成一些增删改查的文件,这些文件中需要传入一些参数,传参数的时候,我们会注意到,参数的大括号外面,有两种符号,一种是#,一种是$。这两种符号有什么区别呢?SELECT * FROM employee WHERE name=#{name}SELECT * FROM employee ORDER BY ${salar原创 2016-12-13 21:45:58 · 2525 阅读 · 0 评论 -
【源码】canal和otter的高可靠性分析
一般来说,我们对于数据库最主要的要求就是:数据不丢。不管是主从复制,还是使用类似otter+canal这样的数据库同步方案,我们最基本的需求是,在数据不丢失的前提下,尽可能的保证系统的高可用,也就是在某个节点挂掉,或者数据库发生主从切换等情况下,我们的数据同步系统依然能够发挥它的作用–数据同步。本文讨论的场景是数据库发生主从切换,本文将从源码的角度,来看看otter和canal是如何保证高可用和高可原创 2017-10-17 15:35:25 · 915 阅读 · 0 评论 -
【文档】七、Mysql Binlog不同事件类型的事件内容
下面主要讲述了每个类型的事件中的固定和可变部分的数据。Start_log_event_v3/START_EVENT_V3这个事件出现在v1或v3的binlog文件的开头部分。对于4.0和4.1版本的Mysql,这个事件只是被写在服务启动后的第一个binlog文件中,到达一定的条件后,会产生新的日志文件,但是新的日志文件中不包含这个事件。对于所有的Mysql5.0及以上版本,每个日志文件都会以FORM翻译 2017-10-10 08:09:56 · 390 阅读 · 0 评论 -
【文档】六、Mysql Binlog版本
binlog文件格式有以下几种: - v1:用于3.23版本 - v3:用于4.0.2到4.1版本 - v4:用于5.0及以上版本v2版本只在4.0.x版本中使用,目前已经不再支持了。处理binlog的程序必须支持以上所有的版本。这部分描述了服务器是如何区分所有的格式的,以便辨别binlog使用的版本。mysqlbinlog也是使用的相同的规则。重要的常量: - START_EVENT_V3翻译 2017-10-10 08:09:25 · 726 阅读 · 0 评论 -
【文档】五、Mysql Binlog事件结构
这个部分描述了事件被写入binlog或者delay log中的属性。所有的事件有相同的整体结构,也就是包含事件头和事件数据:+===================+| event header |+===================+| event data |+===================+具体的内容随着Mysql版本的升级而不同,这导致了binlo翻译 2017-10-09 10:23:00 · 340 阅读 · 0 评论 -
【文档】四、Mysql Binlog事件含义详解
下面对binlog中事件做个简单说明:UNKNOWN_EVENT这个事件类型应该永远不会出现。它从不会写入binlog中。如果binlog中的事件没法被识别成其他已知事件,他被当做UNKNOWN_EVENT。START_EVENT_V3在binlog文件最开始的符号事件(在Mysql的4.0和4.1版本中,这个事件只会在服务启动时,写到第一个binlog文件中)。这个事件在3.23到4.1版翻译 2017-10-08 15:54:40 · 627 阅读 · 0 评论 -
【文档】三、Mysql Binlog事件类文件和类型
在内部,服务器使用C++类文件来表示binlog事件。标准在log_event.h文件中,这些类的方法代码在log_event.cc中。log_event是基础类。其他的详细的事件子类都是来源于他。一个事件的二进制序列包含头和数据两部分。类型码在每个事件的头部出现。事件可能的类型码定义在log_event_type枚举类中:enum Log_event_type { UNKNOWN_EVENT翻译 2017-10-08 15:04:52 · 406 阅读 · 0 评论 -
【文档】二、Binlog结构和内容概述
binlog是一系列文件,这些文件包含了Mysql服务实例中数据的变化。 - binlog包含一系列二进制日志文件,还包含一个索引文件。 - 每个日志文件包含了一个4字节的魔法数,后面跟着描述数据变化的事件内容。 - 魔法数字可以是0xfe 0x62 0x69 0x6e=0xfe ‘b”i”n’(这是在log_event.h中定义的BINLOG_MAGIC常量) - 每个事件翻译 2017-10-08 14:33:29 · 639 阅读 · 2 评论 -
【文档】一、Mysql BinLog概述
Binlog是一系列日志文件,他们包含的内容是Mysql数据内容的改变。如果想开启binlog功能,需要在启动时带上–log-bin参数。binlog是从Mysql3.23.14版本开始的。它包含所有更新数据的sql语句。它还包含可能更新数据的语句(比如,删除不存在的数据行的语句),除非日志的记录是以基于行的。sql语句是以描述修改的事件形式存储的。binlog也包含每个语句的执行时间。binlog翻译 2017-10-08 14:07:16 · 258 阅读 · 0 评论 -
【Druid】Access Denied for User ''@'ip'
今天在写单元测试时,遇到一个很奇葩的问题,一直在报这样的错误:Caused by: java.sql.SQLException: Access denied for user ''@'183.134.103.169' (using password: YES) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:998)原创 2017-08-07 14:52:34 · 768 阅读 · 0 评论 -
【源码】otter工程结构
最近在搞数据同步相关的内容,需要对otter的代码进行扩展,所以需要先熟悉一下otter的源码。首先我们整体来看下otter的工程结构。otter的工程结构比较复杂,需要花费一定的时间来理解各个部分的内容,仅仅通过官方文档无法准确的理解各个模块的内容,现分析如下:otter整体的工程结构如下:otter|--manager |--biz |--deployer原创 2018-01-22 14:51:58 · 931 阅读 · 0 评论