云服务器内容精选
-
后续操作 如果系统表结构发生了变化或者有表级别调整,则需要重新开启CDC配置,配置步骤如下: 先关闭CDC配置,请根据实际情况填写schema和name。 EXEC sys.sp_cdc_disable_table @source_schema = N'dbo', @source_name = 'baris', @capture_instance ='all' 重新开启CDC配置,请根据实际情况填写schema和name。 开启表级别配置。 IF EXISTS(SELECT 1 FROM sys.tables WHERE name='baris' AND is_tracked_by_cdc = 0) BEGIN EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', -- source_schema @source_name = 'baris', -- table_name @capture_instance = NULL, -- capture_instance @supports_net_changes = 1, -- supports_net_changes @role_name = NULL -- role_name END
-
前提条件 已完成源端数据源和目标端数据源的接入,具体操作请参考接入数据源。 在源端数据源接入配置中,“数据库名”的大小写应与实际数据库名保持一致,否则会导致数据同步失败。 源端数据源已开启CDC功能,根据不同的数据源类型和CDC实现模式,具体操作请参考: 配置Oracle CDC(LogMiner)(推荐使用) 配置Oracle CDC(XStream) 配置MySQL CDC(Binlog) 配置SQL Server CDC 源端数据源中CDC归档日志的保留时间需要大于集成任务解析的日志时间,否则会造成集成任务找不到归档日志而导致增量同步失败。因此,数据集成任务停止运行的时间不宜过长。建议最少保留2天以上的归档日志。 在首次执行数据同步期间,建议不要对源端数据库做DDL操作。 如果创建组合任务个数过多,对数据库服务器、FDI插件进程均会产生资源消耗,所以建议对一个数据库,不要创建过多组合任务。 FDI支持单个CDC任务中配置多个Schema下的多个数据库表,实现统一的全量或增量采集能力。 组合任务在运行过程中支持添加表,选择重启后可对新表执行全量采集或者增量采集。 源端Oracle数据源: 大文本类型和二进制类型的字段不支持同步。 表名为小写的数据表不支持同步。 无主键的数据表不支持同步。 如果表中数据较少,建议通过每天采集一次全量数据的方式进行采集,目前PostgreSQL类型表支持写入前清空数据。对于从Oracle数据库采集数据,但表中没有主键的情况,可以利用Oracle内部的RowId作为主键,RowId一般是使用数字、字母生成18位长度的字符串。 名称为数据库自身保留字的数据表或数据字段不支持同步。 truncate方式删除的数据不支持同步,整表方式删除的数据不支持同步。 源端MySQL数据源: 如果MySQL数据库使用的是MGR集群模式,在接入源端数据源时,必须直接连接主节点,不能连接route节点。 如果MySQL数据库中数据量特别巨大,在首次执行数据同步时可能会连接数据库超时,可以通过修改MySQL数据库的超时参数interactive_timeout和wait_timeout来规避。
-
操作步骤 建议由数据库管理员进行CDC功能的配置操作,以下配置以Linux环境为例进行说明。 开启Binlog。 使用命令行工具连接到MySQL数据库所在服务器,执行以下命令以root用户登录数据库。 mysql -uroot -ppassword 其中,password为数据库root用户的密码,可向数据库管理员获取。 执行以下命令,查询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,否则继续执行下一步。 执行以下命令退出数据库。 exit; 执行以下命令编辑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'; (可选):当创建MySQL CDC任务Schema映射时,MySQL数据库需要先开启配置项:binlog_rows_query_log_events =1;可在如上第 e 步骤中配置。 在数据库中执行以下命令创建ROMA Connect连接数据库的用户并配置权限。 CREATE USER 'roma'@'%' IDENTIFIED BY 'password'; GRANT SELECT, RELOAD, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'roma'@'%'; 其中: roma为ROMA Connect连接用户名,请根据实际规划设置。 password为ROMA Connect连接用户密码,请根据实际规划设置。 (可选)如果MySQL数据库版本为8.0,则需要执行以下命令,修改数据库连接用户的密码认证方式。 ALTER USER roma IDENTIFIED WITH mysql_native_password BY 'password'; 其中: roma为2中创建的数据库连接用户名。 password为数据库连接用户的密码。 执行以下命令退出数据库连接。 exit;
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格