一、数据库CDC是什么

CDC 是change data capture,即变化数据捕捉。是数据库进行备份的一种方式,常用于大量数据的备份工作。分为入侵式的和非入侵式的备份方法,入侵式的有基于触发器备份、基于时间戳备份、基于快照备份,非入侵式的备份方法是基于日志的备份。mysql 基于日志的CDC就是要开启mysql binary log。

二、Mysql基于日志的CDC配置

1、查看mysql是否开启Binlog

show variables like 'log_bin';

若变量log_bin的值为“OFF”,则说明Binlog未开启,继续执行下一步。

若变量log_bin的值为“ON”,则说明Binlog已开启,继续执行以下SQL命令,检查相关参数的配置是否符合要求。

show variables like '%binlog_format%';
show variables like '%binlog_row_image%';

变量binlog_format的值应该为“ROW”,变量binlog_row_image的值应该为“FULL”。

2、执行以下命令编辑MySQL配置文件,然后按“i”进入输入模式。

vi /etc/my.cnf

在配置文件中增加如下配置,开启Binlog。

server-id = 123
log_bin = mysql-bin
binlog_format = row
binlog_row_image = full
expire_logs_days = 10
gtid_mode = on
enforce_gtid_consistency = on

其中:

server-id的值应为大于1的整数,请根据实际规划设置,并且在创建数据集成任务时设置的“Server Id”值需要此处设置的值不同。
expire_logs_days为Binlog日志文件保留时间,超过保留时间的Binlog日志会被自动删除,应保留至少2天的日志文件。
“gtid_mode = on”和“enforce_gtid_consistency = on”仅当MySQL的版本大于等于5.6.5时才需要添加,否则删除这两行内容。

按“Esc”退出输入模式,然后输入“:wq”并回车,保存退出。
执行以下命令重启MySQL数据库。

service mysqld restart

以root用户登录数据库,执行以下命令,查询变量log_bin的值是否为“ON”,即是否已开启Binlog。

show variables like 'log_bin';

3、在数据库中执行以下命令创建ROMA连接数据库的用户并配置权限。

CREATE USER 'roma'@'%' IDENTIFIED BY 'password';
GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'roma'@'%';

其中:

roma为ROMA连接用户名,请根据实际规划设置。
password为ROMA连接用户密码,请根据实际规划设置。

简单理解什么是数据库CDC?(以mysql为例)相关推荐

  1. 通过JDBC进行简单的增删改查(以MySQL为例)

    目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操作 (1)定义记录的类(可选) (2)连接的获取 ( ...

  2. jdbc测试类代码mysql_通过JDBC进行简单的增删改查(以MySQL为例)

    JDBC基本操作 下面的所有方法和数据成员都在public class JDBCOperation内部. (1)定义记录的类(可选) 这样做主要是为了便于操作和接口定义,是非必须的. static c ...

  3. sakila mysql样例数据库解析_Sakila MySQL 样例数据库解析

    0.前言 Sakila 可以作为数据库设计的参考,也可作为实验数据.本例是用作数据分析学习的实验数据. The Sakila sample database was developed by Mike ...

  4. 数据库|第一范式、第二范式、第三范式、BC范式、第四范式简单理解

    数据库|第一范式.第二范式.第三范式.BC范式.第四范式简单理解 在设计数据库的时候,虽说将我们要的数据正确完整导入数据库是很关键的,但是对于数据库的设计者来说,如何将大量数据合理有效正确地导入数据库 ...

  5. JavaWEB01:MySQL基础——数据库相关概念、MySQL安装和配置、基础的SQL语句

    JavaWEB01:MySQL基础--数据库相关概念.MySQL安装和配置.基本的SQL语句 JavaWEB02:MySQL高级--约束.数据库设计.多表查询.事务 JavaWEB03:JDBC Ja ...

  6. mysql编程_PHP数据库编程之一MySQL优化策略概述

    本文简单讲述了PHP数据库编程之MySQL优化策略.分享给大家供大家参考,具体如下: 前些天看到一篇文章说到PHP的瓶颈很多情况下不在PHP自身,而在于数据库.我们都知道,PHP开发中,数据的增删改查 ...

  7. Mysql的全文索引原理的简单理解

    Mysql的全文索引实际是通过 倒排索引 来实现的. 倒排索引实际就是将要插入的文本按照相应的词进行拆分,然后额外建立一张表,存储这些出现的单词,并做出相应的统计. 创建一张表: CREATE TAB ...

  8. 数据库学习之MySQL (三)——数据库小试牛刀 + 利用对象思维理解表行列

    文章目录 前言 ´・ᴗ・` 获得自己第一个数据库 执行代码 小试牛刀 简单语句的实验方法 表 的理解 总结 ´◡` 前言 ´・ᴗ・` 本文我们将通过运行sql代码 得到自己的第一个数据库 我们学习的重 ...

  9. mysql是逻辑库吗_mycat是一种比较简单的中间件产品,可以帮助mysql进行分库,同时统一在一个逻辑库。硬件环境:系统:centos 7.6数据库版本:5.7.19mycat:...

    mycat是一种比较简单的中间件产品,可以帮助mysql进行分库,同时统一在一个逻辑库. 硬件环境: 系统:centos 7.6 数据库版本:5.7.19 mycat:1.6..6.1 github上 ...

最新文章

  1. centos7配置br0_centos 7.2 网卡配置文件 及 linux bridge的静态配置
  2. Debug无忧!清华校友打造Python调试神器:反向追踪变量、数据流等 | 开源
  3. debian下安装LNMP环境(二)
  4. python利器怎么用-bluepy 一款python封装的BLE利器简单介绍
  5. mysql协议解析器_mysql协议解析
  6. python 32bit数据结构_python实现bitmap数据结构详解
  7. linux开源视频播放器_什么定义了Linux的顶级开源音乐播放器?
  8. zip 打包_Thinkphp6利用ZipArchive打包下载文件
  9. 压力测试工具siege的用法
  10. 036、JVM实战总结:糟糕!运行着的线上系统突然卡死无法访问,万恶的JVM GC!
  11. db2设置默认schema_dataSource配置jdbc连接db2源url项指定currentSchema
  12. 问题的分析与解决(培训总结)
  13. paip.java 开发中web server的选择jboss resin tomcat比较..
  14. 一键卡iPhoneQQ在线
  15. java数组表示方法_Java中数组总结
  16. 《计算机网络:自顶向下的方法》课后习题_第二章
  17. Amazon教程:刚买就降价!避免损失,申请PRICE MATCH(价格保护)的方法
  18. pikachu靶场打靶分析
  19. 戴尔台式计算机usb驱动,dell服务器和电脑不支持usb2.0设备安装系统的解决方案方法...
  20. 关于X509证书和密钥的概念

热门文章

  1. 关于ospf几种状态机模式的停留
  2. 云原生社区 大佬博客
  3. Stream API
  4. 职业精神--由风味烤串说开去
  5. c++头文件加.h不加.h 命名空间
  6. Devfest 谷歌开发者大会来了!
  7. 杰理AC692N 系列录音功能开发
  8. 一个项目经理的自述:资源永远少,时间永远不够,需求永远变化…
  9. 基于LSTM-CNN-CBAM模型的股票预测研究
  10. 求 职 信 的 内 容