hive="/usr/bin/hive"
field_segmentation="\001"
source_database="postgres"
source_username="postgres"
source_pwd=""
source_ip=""
source_port="5432"
source_pgsqldb=""
external_storage_path="/user/hive/warehouse/文件路径"
if [ -n "$1" ] ;then
do_day=$1
else
do_day=`date -d "-1 day" +%F`
# do_day=`date +%F`
fi
/usr/bin/sqoop eval --connect jdbc:postgresql://$source_ip:$source_port/$source_pgsqldb --username $source_username --password $source_pwd \
--query "delete from pgsql的表"
#--where dt = '$do_day'"
/usr/bin/sqoop export \
--connect jdbc:postgresql://$source_ip:$source_port/$source_pgsqldb \
--username $source_username --password $source_pwd \
--table hive的原始表\
--export-dir $external_storage_path/HDFS文件路径/dt=$do_day/ \
--fields-terminated-by $field_segmentation \
--columns "字段可以不指定" \
--update-mode allowinsert \
--m 1 \
--input-null-string '\\N' --input-null-non-string '\\N'
if [ $? -eq 0 ];then
echo "============<成功>=========="
else
echo "================<失败,时间为[`date "+%Y-%m-%d %H:%M:%S"`]>=============="
exit 1
fi
03-16