业务背景

利用sqoop对mysql进行查询、加入、删除等操作。

业务实现

select操作:

sqoop eval \
--connect jdbc:mysql://127.0.0.1:3306/market \
--username admin \
--password 123456 \
--query "select end_user_id, category_id, score, last_bought_date, days_left, update_time
from market.PERIOD_RECOMMEND limit 10"

运行结果例如以下:

[pms@yhd-jqhadoop39 /home/pms/workspace/ouyangyewei/data]
$sqoop eval \
> --connect jdbc:mysql://10.0.2.54:3307/market \
> --username marketuser \
> --password 123456 \
> --query "select end_user_id, category_id, score, last_bought_date, days_left, update_time
> from market.PERIOD_RECOMMEND limit 10"
Warning: /usr/lib/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
15/06/09 09:36:53 INFO sqoop.Sqoop: Running Sqoop version: 1.4.4-cdh5.0.2
15/06/09 09:36:53 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
15/06/09 09:36:53 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
--------------------------------------------------------------------------------------------------------------
| END_USER_ID | CATEGORY_ID | SCORE | LAST_BOUGHT_DATE | DAYS_LEFT | UPDATE_TIME |
--------------------------------------------------------------------------------------------------------------
| 1020 | 6639 | 0.03765381553445836 | 2015-02-26 | 42 | 2015-06-01 10:57:09.0 |
| 1180 | 6008 | 0.49232472007320505 | 2015-05-16 | 5 | 2015-06-01 11:00:30.0 |
| 1180 | 6638 | 0.12863038975524008 | 2015-05-16 | 10 | 2015-06-04 11:04:18.0 |
| 1180 | 6641 | 0.016126884197067093 | 2015-05-16 | 17 | 2015-06-08 11:06:54.0 |
| 1180 | 972108 | 0.9059551911095096 | 2015-04-12 | 4 | 2015-06-01 11:00:30.0 |
| 1580 | 959307 | 0.015703642709355377 | 2015-04-26 | 29 | 2015-06-07 11:20:13.0 |
| 1620 | 5059 | 0.03979611383975357 | 2015-03-11 | 39 | 2015-06-02 11:24:50.0 |
| 1680 | 959307 | 0.21385565120306954 | 2015-05-07 | 11 | 2015-06-04 11:28:21.0 |
| 2030 | 6638 | 0.03160084296270789 | 2015-03-09 | 41 | 2015-06-03 11:35:04.0 |
| 2110 | 6641 | 0.9888130446112331 | 2015-03-14 | -6 | 2015-06-05 11:41:16.0 |
--------------------------------------------------------------------------------------------------------------

删除操作:

sqoop eval \
--connect jdbc:mysql://127.0.0.1:3306/market \
--username admin \
--password 123456 \
--query "delete from PERIOD_RECOMMEND where update_time < '2015-06-01'"

运行结果:

[pms@yhd-jqhadoop39 /home/pms/workspace/ouyangyewei/data]
$sqoop eval \
> --connect jdbc:mysql://10.0.2.54:3307/market \
> --username marketuser \
> --password 123456 \
> --query "delete from PERIOD_RECOMMEND where update_time < '2015-06-05'"
Warning: /usr/lib/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
15/06/09 09:47:18 INFO sqoop.Sqoop: Running Sqoop version: 1.4.4-cdh5.0.2
15/06/09 09:47:18 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
15/06/09 09:47:18 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
15/06/09 09:47:31 INFO tool.EvalSqlTool: 556430 row(s) updated.

利用sqoop eval。仅仅须要在參数--query中指定sql语句就可以对mysql运行DML操作。

[Sqoop]利用sqoop对mysql运行DML操作的更多相关文章

  1. 利用sqoop对mysql执行DML操作

    业务背景 利用Sqoop对MySQL进行查询.添加.删除等操作. 业务实现 select操作: sqoop eval \ --connect jdbc:mysql://127.0.0.1:3306/m ...

  2. 利用mk-table-checksum监测Mysql主从数据一致性操作记录

    前面已经提到了mysql主从环境下数据一致性检查:mysql主从同步(3)-percona-toolkit工具(数据一致性监测.延迟监控)使用梳理今天这里再介绍另一种Mysql数据一致性自动检测工具: ...

  3. MySQL 大DML操作建议

    ㈠ 大数据量INSERT          ⑴ 使用多行插入代替单行:insert into t values (),(),(),...          ⑵ LOAD DATA INFILE ... ...

  4. Oracle-31-对视图DML操作

    一.对视图进行DML操作 1.创建一个视图v_person create or replace noforceview v_person as select *from person where id ...

  5. 利用Sqoop将MySQL海量测试数据导入HDFS和HBase

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.安装Sqoop 1.下载sqoop,解压.文件夹重命名 wget http://mirror.bit.edu.cn/apache/sqoop/1 ...

  6. 如何利用sqoop将hive数据导入导出数据到mysql

    运行环境  centos 5.6   hadoop  hive sqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,hive之间数据导入导出的一个工具. 上海尚学堂 ...

  7. 利用sqoop将hive数据导入导出数据到mysql

    一.导入导出数据库常用命令语句 1)列出mysql数据库中的所有数据库命令  #  sqoop list-databases --connect jdbc:mysql://localhost:3306 ...

  8. 使用sqoop从Oracle或mysql抽取数据到HDFS遇到的报错及解决

    一.参考文档: 1.https://www.rittmanmead.com/blog/2014/03/using-sqoop-for-loading-oracle-data-into-hadoop-o ...

  9. hbase结合hive和sqoop实现数据指导mysql

    hive综合hbase两个优势表中的:     1.实现数据导入到MYSQL.     2.实现hbase表转换为另外一张hbase表.  三个操作环节:      1.hbase关联hive作为外部 ...

随机推荐

  1. 从ELK到EFK演进

    背景 作为中国最大的在线教育站点,目前沪江日志服务的用户包含网校,交易,金融,CCTalk 等多个部门的多个产品的日志搜索分析业务,每日产生的各类日志有好十几种,每天处理约10亿条(1TB)日志,热数 ...

  2. Java多线程Lock

    JDK5以后为代码的同步提供了更加灵活的Lock+Condition模式,并且一个Lock可以绑定多个Condition对象 1.把原来的使用synchronized修饰或者封装的代码块用lock.l ...

  3. Python爬虫小实践:寻找失踪人口,爬取失踪儿童信息并写成csv文件,方便存入数据库

    前两天有人私信我,让我爬这个网站,http://bbs.baobeihuijia.com/forum-191-1.html上的失踪儿童信息,准备根据失踪儿童的失踪时的地理位置来更好的寻找失踪儿童,这种 ...

  4. pandas基本介绍-【老鱼学pandas】

    前面我们学习了numpy,现在我们来学习一下pandas. Python Data Analysis Library 或 pandas 主要用于处理类似excel一样的数据格式,其中有表头.数据序列号 ...

  5. SpringMVC注解HelloWorld

    今天整理一下SpringMVC注解 欢迎拍砖 @RequestMapping RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上.用于类上,表示类中的所有响应请求的方法都是 ...

  6. Python环境变量搭建

    1.首先下载相对应的Python版本,安装后在系统环境变量的path路径下加入安装的默认路径: 2.测试:dos命令下输入python.回车,然后测试,exit()退出来,测试完成.

  7. Centos下mongodb的安装与配置

    安装MongoDB的方法有很多种,可以源代码安装,在Centos也可以用yum源安装的方法. 1.准备工作 运行yum命令查看MongoDB的包信息 yum info mongodb-org (提示没 ...

  8. unity android相互调用

    简介 有一些手机功能,Unity没有提供相应的接口,例如震动,例如不锁屏,例如GPS,例如... 有太多的特殊功能Unity都没有提供接口,这时候,我们就需要通过使用Android原生的ADT编辑器去 ...

  9. 裸板驱动总结(makefile+lds链接脚本+裸板调试)

    在裸板2440中,当我们使用nand启动时,2440会自动将前4k字节复制到内部sram中,如下图所示: 然而此时的SDRAM.nandflash的控制时序等都还没初始化,所以我们就只能使用前0~40 ...

  10. cinder存储节点 后端采用lvm、nfs安装配置

    #cinder存储节点 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html #cinder存储节点 #cinder后端采 ...