龙空技术网

如何将Oracle的blob同步到MySQL

希嘉工程师 128

前言:

目前兄弟们对“mysql导入blob”大约比较重视,各位老铁们都需要剖析一些“mysql导入blob”的相关内容。那么小编也在网络上收集了一些有关“mysql导入blob””的相关知识,希望同学们能喜欢,姐妹们一起来学习一下吧!

文章标题1.0版

Oracle的blob类型字段同步到MySQL

1 情景描述

需要把Oracle的blob类型字段同步到MySQL数据库中

2 解决方案

2.1 因为oracle的blob默认长度大于MySQL的blob默认长度,所以mysql需要修改字段类型位longblob。

2.2 使用ODI仍然会报错,需要修改配置文件。

根据配置文件会限制server接受的数据包大小。 SHAPE \* MERGEFORMAT

有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败。

查看目前配置, Windows 系统 配置文件为 my.ini, max 系统 配置文件为 my.cnf

此处使用本地数据库操作:

  cmd 进入mysql bin 目录 --》

  登录本地 --》

  mysql -u root -p --》

  登录密码 --》

  show VARIABLES like '%max_allowed_packet%';

  显示的结果为:

  以上说明目前的配置是:1M

2.2.1 方法1

可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。

max_allowed_packet = 20M

如果找不到my.cnf可以通过

mysql --help | grep my.cnf

去寻找my.cnf文件。

2.2.2 方法2

进入mysql server

在mysql 命令行中运行

set global max_allowed_packet = 2*1024*1024*10

然后关闭掉这此mysql server链接,再进入。

2.3 使用kettle可以直接将Oracle的blob类型字段同步到MySQL;

PAGE

北京希嘉创智教育科技有限公司1/1

标签: #mysql导入blob