当前位置: 首页 > news >正文

厦门 网站建设 闽icp衡阳做网站

厦门 网站建设 闽icp,衡阳做网站,杭州网站开发工程师,网站服务器怎么迁移把Hive中的数据导入Oracle数据库。 1. 解释一下各行代码: sqoop export # 指定要从Hive中导出的表 --table TABLE_NAME # host_ip:导入oracle库所在的ip:导入的数据库 --connect jdbc:oracle:thin:HOST_IP:DATABASE_NAME # oracle用户账号 --username USERNAM…

把Hive中的数据导入Oracle数据库。

1. 解释一下各行代码:

sqoop export
# 指定要从Hive中导出的表
--table TABLE_NAME    
# host_ip:导入oracle库所在的ip:导入的数据库
--connect jdbc:oracle:thin:@HOST_IP:DATABASE_NAME # oracle用户账号
--username USERNAME
# oracle用户密码
--password PASSWORD # hive表数据文件在hdfs上的路径
--export-dir /user/hive/test/TABLE_NAME
# 指定表的列名,必须指定 
--columns ID,data_date,data_type,c1,c2,c3 # 列分隔符(根据hive的表结构定义指定分隔符)
--input-fields-terminated-by '\001'
# 行分隔符
--input-lines-terminated-by '\n' # 如果hive表中存在null字段,则需要添加参数,否则无法导入
--input-null-string '\\N' 
--input-null-non-string '\\N'

2. 案例:

sqoop export \
--connect jdbc:oracle:thin:@172.12.12.102:orcl \
--username test \
--password kong \
--table table_abc \
--export-dir /user/hive/warehouse/bonc_gjj.db/table_abc \
# 注意,这一行columns不能有多余的空格,否则会报错。
--columns zzjgdm,jgmc,jglx,jjlx,frdbhfzr,xzqhdm,yzbm,tzgb,hbzl,jgdz,dh,yxqzfrq,zczj,njq0,fzrq,zzzt,pzwhhzch,bfdw,lastdate,id,dir_id,dir_ver,dir_ver_serail_num,addtime,updatetime,edituser_id,edituser,editdept_id,editdept,inserttype,is_valid,audit_status,pk_md5,sys_encrypt \--input-fields-terminated-by '\001' \--input-lines-terminated-by '\n' \--input-null-string "\\\\N" \--input-null-non-string "\\\\N"

3. 表多的话,把所有表名存放在文件下,循环跑批每个表

#!/bin/bash 
a=0;
b=1;
# ``这两个反斜点,就是说里面这是一个变量,我的have_data_table_name是一个文件,里面存的是一堆表名。
# cat file_name,自己试试什么效果。for 开始循环表名。
for table_name in `cat ./have_data_table_name`doa=`expr $a + $b`echo "表名:$table_name,计数:$a";echo  "开始导入数据!"# 这一行就厉害了,简单来说就是取出一张表的所有列名,每个列名后加个逗号,然后去掉最后一个逗号,存在col这个变量中。col=`hive -e "desc database_name.${table_name}"|sed '1d'|awk '{printf $1","}'|sed 's/,$/\n/g'`sqoop export \
--connect jdbc:oracle:thin:@172.12.12.102:1521:orcl \
--username test \
--password kong \
--table ${table_name} \
--export-dir /user/hive/warehouse/database_name.db/${table_name} \
--columns ${col} \
--input-fields-terminated-by '\001' \
--input-lines-terminated-by '\n' \
--input-null-string "\\\\N" \
--input-null-non-string "\\\\N"echo "第${a}张表导入完毕!";
done

参考:
https://codeleading.com/article/51121246034/#google_vignette

http://www.yayakq.cn/news/138566/

相关文章:

  • 做金融网站拘留多久企业展厅设计网
  • 电脑什么软件可以做动漫视频网站dede笑话网站源码
  • 网站建设注意内容织梦可以放两个网站
  • 网站收录原创文章阿里云网站备份
  • 微网站开发服务网站优化一年多少钱
  • 服装代销的网站源码服务器网站怎么用
  • 网站中图片怎么做的网页设计与制作教程电子版pdf
  • 北京城建亚泰建设集团有限公司网站首页新闻大全
  • 网站根目录是什么意思制作网站需要注意什么
  • 移动app网站模板wordpress难不难
  • 网站栏目页 优化温州网站建设方案表
  • 怎么在网站中添加百度商桥国家免费职业培训平台
  • 南宁做企业网站培训班招生方案
  • 网站的关键词库怎么做的那么多品牌网站建设e小蝌蚪
  • 专题网站建设策划方案西安免费做网站多少钱
  • 可以做填字游戏的网站怎么查域名服务商
  • 怀柔重庆网站建设微信网站建设电话
  • 可以做驾校推广的网站2345网址导航官网
  • 深圳建设网站制作公司建设网站必须用dns
  • 成都企业网站建站wordpress内容构建器
  • 网站建设好多钱家具设计
  • 多媒体网站建设住房城乡建设网站查询
  • 摄影赚钱的网站云南建设厅网站资质查询
  • wordpress开发门户网站莱芜网页定制
  • 住房和城乡建设部网站科技项目网站开发都做些什么
  • 手机网站带后台源代码品牌推广营销方案
  • 开发网站如何选需要推广公司网站
  • 网站建设公司的市场开拓方案建筑工程网上叫什么
  • 网站备案注意事项鞍山网站制作推广
  • 服务器网站模板dw网站模板免费