【sqoop】定时执行shell脚本,sqoop从mysql导出多张表信息到hbase

一、shell脚本

 

#!/bin/bash
#coding=UTF-8

#date_year=$(date +%Y)
#echo $date_year
source /etc/profile
for((i=3;i<=8;i++));
do
/opt/sqoop-1.4.6/bin/sqoop import --connect jdbc:mysql://192.168.150.86:3306/ablesky_play_log 
--query "SELECT id_cpl,id_account_cpl,id_course_cpl,play_time_cpl,CONCAT_WS('_', id_cpl, play_time_cpl)AS rowkey FROM sta_course_play_log_cpl_2017_0"$i" WHERE 1=1 AND id_account_cpl != 19 AND is_trial_cpl=1 AND \$CONDITIONS" 
--split-by id_cpl  
--hbase-table courseAuditionLog
 --column-family info 
--hbase-row-key rowkey 
 --username 'zzzzz'
 -password 123456
done 


动态插入变量

$i

只需要在query后的两个字符串之间即可,不用++连接

这里query用的双引号,$CONDIYIONS 前要用反斜杠转义字符

 

二、定时任务设置

 

25 16 * * *     /usr/bin/sh  /opt/cronfile/test/zhang/sqoop.sh >> /opt/cronfile/test/zhang/logs/sqoop_`date +\%Y\%m\%d\%H\%M\%S`.log 2>&1

 

 

 

 

 

你可能感兴趣的:(大数据)