Flume监听oracle表增量的步骤详解

需求:获取oracle表增量信息,发送至udp514端口,支持ip配置

步骤:

(1)需要的jar  oracle的 odbc5.jar(oracle安装目录  /jdbc/lib下查找)

(2)flume的开源包flume-ng-sql-source-1.4.3.jar  最新的好像是1.5的 小版本记不住了 这个下载地址直接csdn上就有

这两个jar 都拷贝到flume的lib下

(3)flume配置文件

a1.sources = r1
a1.sinks = k1
a1.channels = c1
#接收syslog配置
#a1.sources.r1.type = syslogudp
#a1.sources.r1.port = 514
#a1.sources.r1.host = 0.0.0.0
###########sql source#################
a1.sources.r1.type = org.keedio.flume.source.SQLSource
a1.sources.r1.hibernate.connection.url = jdbc:oracle:thin:@10.9.224.36:1521/soc
# Hibernate Database connection properties
a1.sources.r1.hibernate.connection.user = soc_app
a1.sources.r1.hibernate.connection.password = soc_app
a1.sources.r1.hibernate.connection.autocommit = true
a1.sources.r1.hibernate.dialect = org.hibernate.dialect.Oracle10gDialect
a1.sources.r1.hibernate.connection.driver_class = oracle.jdbc.driver.OracleDriver
a1.sources.r1.run.query.delay=1
a1.sources.r1.status.file.path = /usr/local/flume
a1.sources.r1.status.file.name = a1.sqlSource.status
# Custom query
a1.sources.r1.start.from = '2017-07-31 07:06:20'
a1.sources.r1.custom.query = SELECT CHR(39)||TO_CHAR(CREATETIME,'YYYY-MM-DD HH24:MI:SS')||CHR(39),MSG FROM FLUME_NG_SQL_SOURCE WHERE CREATETIME > TO_DATE($@$,'YYYY-MM-DD HH24:MI:SS') ORDER BY CREATETIME ASC
a1.sources.r1.batch.size = 6000
a1.sources.r1.max.rows = 1000
a1.sources.r1.hibernate.connection.provider_class = org.hibernate.connection.C3P0ConnectionProvider
a1.sources.r1.hibernate.c3p0.min_size=1
a1.sources.r1.hibernate.c3p0.max_size=10
###########sql source#################
#自定义类型
a1.sinks.k1.type = com.neusoft.utils.SyslogSink
#配置发送ip
a1.sinks.k1.destination = 10.9.224.36
a1.channels.c1.type = memory
a1.channels.c1.capacity = 10000
a1.channels.c1.transactionCapacity = 10000
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
#启动命令 ./flume-ng agent -c ../conf -f ../conf/flume-sql.conf -n a1 -Dflume.root.logger=INFO,console &

由于是自己定义的sink 在我的博客中也有提到,所以配置了自定义的sink。

总结

以上所述是小编给大家介绍的Flume监听oracle表增量的步骤详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Flume监听oracle表增量的步骤详解

    需求:获取oracle表增量信息,发送至udp514端口,支持ip配置 步骤: (1)需要的jar  oracle的 odbc5.jar(oracle安装目录  /jdbc/lib下查找) (2)flume的开源包flume-ng-sql-source-1.4.3.jar  最新的好像是1.5的 小版本记不住了 这个下载地址直接csdn上就有 这两个jar 都拷贝到flume的lib下 (3)flume配置文件 a1.sources = r1 a1.sinks = k1 a1.channels

  • Angular中使用$watch监听object属性值的变化(详解)

    Angular中的$watch可以监听属性值的变化,然后并做出相应处理. 常见用法: $scope.$watch("person", function(n, o){ //todo something... }) 但是对于一个对象中的某个属性值变化时,$watch似乎不管用了. 示例代码: <body> <div ng-controller="mainCtrl"> <input id="myText" type=&qu

  • Android 监听软键盘状态的实例详解

    Android 监听软键盘状态的实例详解 近日遇到要检测软键盘是否显示或隐藏的问题,搜了一下网上,最后找到一个很简单的,记录一下. activityRoot是activity的根view,就是xml里面的第一个view,给它设置一个id. final View activityRootView = findViewById(R.id.activityRoot); activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(ne

  • 微信小程序 监听手势滑动切换页面实例详解

    微信小程序 监听手势滑动切换页面实例详解 1.对应的xml里写上手势开始.滑动.结束的监听: <view class="touch" bindtouchstart="touchStart" bindtouchmove="touchMove" bindtouchend="touchEnd" ></view> 2.js: var touchDot = 0;//触摸时的原点 var time = 0;// 时

  • npm script 的文件监听和自动刷新的命令详解

    文件监听的作用是为了实现自动化,释放双手和精力,提高效率,让开发者更加关注于开发.npm script 文件监听和 grunt.gulp 功能类似. 自动刷新,意思就是改动文件保存后,页面自动刷新,减少日常开发的操作. 代码检查的监听和自动化 代码检查工具 stylelint.eslint.jsonlint 这些对 watch 支持很弱,所以就需要引入工具包 onchange 安装命令依赖包 npm i onchange -D // 或 yarn add onchange -D 编写命令 "sc

  • android studio按钮监听的5种方法实例详解

    1.匿名内部类 public class MainActivity extends AppCompatActivity implements View.OnClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn1 = fin

  • Oracle 手动创建数据库步骤详解

    下面先给大家列出oracle手动创建数据库步骤如下所示: 1.编写初始化参数文件 2.设置操作系统环境变量 3.创建实例 4.以管理员身份连接数据库 5.启动实例 6.create database 创建数据库 7.运行数据字典脚本 8.Oracle的网络配置 (客户端连接到服务端) 初始化参数文件 从%ORACLE_HOME%\admin\sample\pfile从复制initsmpl.ora文件,并黏贴到$ORACLE_HOME%\database目录下,改名为init<sid>假设改为i

  • Bootstrap滚动监听组件scrollspy.js使用方法详解

    其实滚动监听使用的情况还是很多的,比如导航居于右侧,当主题内容滚动某一块的时候,右侧导航对应的要高亮. 实现功能 1.当滚动区域内设置的hashkey距离顶点到有效位置时,就关联设置其导航上的指定项 2.导航必须是 .nav > li > a 结构,并且a上href或data-target要绑定hashkey 3.菜单上必须有.nav样式 4.滚动区域的data-target与导航父级Id(一定是父级)要一致. <div id="selector" class=&qu

  • js实现无刷新监听URL的变化示例代码详解

    无刷新改变路由的两种方法通过hash改变路由 代码 window.location.hash='edit' 效果 http://xxxx/#edit 通过history改变路由 history.back(): 返回浏览器会话历史中的上一页,跟浏览器的回退按钮功能相同 history.forward():指向浏览器会话历史中的下一页,跟浏览器的前进按钮相同 history.go(): 可以跳转到浏览器会话历史中的指定的某一个记录页 history.pushState()可以将给定的数据压入到浏览器

  • SpringBoot如何监听redis Key变化事件案例详解

    目录 一 .功能概览 二.事件类型 三.配置 三.案例 代码 新增和修改都是set指令 删除 过期 总结 键空间通知(keyspace notification) 一 .功能概览 键空间通知使得客户端可以通过订阅频道或模式, 来接收那些以某种方式改动了 Redis key变化的事件. 所有修改key键的命令. 所有接收到 LPUSH key value [value …] 命令的键. db数据库中所有已过期的键. 事件通过 Redis 的订阅与发布功能(pub/sub)来进行分发, 因此所有支持

随机推荐