欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

sqoop抽取数据样例

时间:2023-06-22
MySQL:

import --connect jdbc:mysql://192.168.11.2:3306/bookstack?characterEncoding=utf8 --username root --password 0000 --query “select concat(document_id,’=’,markdown,’=’,content,’+++’)content from md_document_store WHERe $CONDITIONS” --target-dir /user/hive/warehouse/stg_app.db/md_document_store -delete-target-dir --split-by ‘’

import --hive-import --connect jdbc:mysql://192.168.11.2:3306/bookstack?characterEncoding=utf8 --username root --password 0000 --hive-overwrite --hive-database dl_app --hive-table l_table_1 --table table_1 -m 1 --mysql-delimiters --input-fields-terminated-by ,

Oracle

import --hive-import --connect jdbc:oracle:thin:@//localhost:1521/testdb --username bigdata --password bigdata --hive-overwrite --hive-database dl_app --hive-table l_vehicle --table APP.SYS_USER -m 1

使用参数

import --hive-import --connect ${url} --username ${username} --password ${password} --hive-overwrite --hive-database dl_lj --hive-table l_table_1 --table table_1 -m 1 --mysql-delimiters

导出

– 对于导出乱码的情况可以参考: 去掉 --direct ,注意
export --connect jdbc:mysql://localhost:3306/data?characterEncoding=utf-8&useUnicode=true --username dp --password dp --table table_1 --export-dir /user/hive/warehouse/dl_app.db/l_table_1_export --input-fields-terminated-by “,” --input-null-string “N” --null-non-string “N” --mysql-delimiters -m 1

执行存储过程,注意call 后面跟的是一个tab,而不是空格

eval --connect “jdbc:mysql://localhost:3306/db?characterEncoding=utf-8&useUnicode=true” --username root --password 0000 --query “CALL p_test()”

在脚本中调用sqoop,并循环执行,参数在argument中添加

#!/bin/bash:set encoding=utf8export PYTHON_EGG_CACHE=/root/.python-eggstartnum=$1endnum=$2for ((days=startnum;days<=endnum;days++))do # echo ${days} sqoop eval --connect "jdbc:mysql://localhost:3306/db?characterEncoding=utf-8&useUnicode=true" --username root --password 0000 --query "CALLp_test()"done

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。