第3节 sqoop:7、通过java代码远程连接linux执行shell命令
数据库的数据同步软件
sqoop 数据同步 关系型数据库到大数据平台
任务:sqoop 是批量导入数据太慢,如何做到实时的数据同步
实时的数据同步工具:
canal 阿里开源的一个数据库数据实时同步的软件,解析mysql的binlog日志进行数据同步
streamset 数据库的数据同步工具
flume 采集mysql的变化的数据,github上面有这样的一个项目,自定义source实时抽取mysql的数据
==================================================================
3、java执行shell命令
需求描述:在实际工作中,总会有些时候需要我们通过java代码通过远程连接去linux服务器上面执行一些shell命令,包括一些集群的状态管理,执行任务,集群的可视化界面操作等等,所以我们可以通过java代码来执行linux服务器的shell命令
为了解决上述问题,google公司给提出了对应的解决方案,开源出来了一个jar包叫做sshxcute,通过这个jar包我们可以通过java代码,非常便捷的操作我们的linux服务器了
项目地址如下:
https://code.google.com/archive/p/sshxcute/
使用说明
https://www.ibm.com/developerworks/cn/opensource/os-sshxcute/
第一步:创建maven的java工程并导入jar包
由于这个jar包没有maven坐标,所以需要我们手动导入并添加到工程的build path当中去
第二步:开发测试用例
public static void main(String[] args) throws TaskExecFailException {
ConnBean connBean = new ConnBean("192.168.8.100", "root", "yourpassword");
SSHExec instance = SSHExec.getInstance(connBean);
instance.connect();
ExecCommand execCommand = new ExecCommand("echo 'hello world'");
instance.exec(execCommand);
instance.disconnect();
}
最新文章
- C# TCP socket发送大数据包时,接收端和发送端数据不一致 服务端接收Receive不完全
- 【java开发】方法重写和方法重载概述
- 01-C#入门(函数一)
- STL之set
- 搭建maven环境
- java中instanceof和getClass()的区别分析
- OC前15天重点回顾
- Android Studio如何设置代码自动提示
- Node.js 创建HTTP服务器(经过测试,这篇文章是靠谱的T_T)
- wpf的学习日志(二)
- Solr4.8.0源码分析(12)之Lucene的索引文件(5)
- 使用UIPageControl UIScrollView制作APP引导界面
- Python之路第六天,基础(7)-正则表达式(re)
- Nginx学习笔记六Nginx的模块开发
- php使用ZipArchive压缩文件的心得
- 多线程之Java线程阻塞与唤醒
- JGUI源码:实现简单进度条(19)
- Ext NumberField使用
- Educational Codeforces Round 32 Problem 888C - K-Dominant Character
- Java如何判断线程池所有任务是否执行完毕