千家信息网

记一次从oracle到hive的历史数据迁移(一)

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,介绍一下具体场景需要从现有在用的oracle中将历史数据迁移出来并导入到hive中,存在几个问题:1、现有oracle数据库在使用无法整个库导出,数据库服务器没有权限;2、由于各个数据提供方的各次升级
千家信息网最后更新 2024年09月21日记一次从oracle到hive的历史数据迁移(一)

介绍一下具体场景

需要从现有在用的oracle中将历史数据迁移出来并导入到hive中,存在几个问题:1、现有oracle数据库在使用无法整个库导出,数据库服务器没有权限;2、由于各个数据提供方的各次升级,oracle数据库采取添加字段而不删除字段的方式更新,而hive中建立的表数据结构要按新的来,也就是说oracle导出的数据到hive表中需要做字段对应。

决定先将oracle导入到另一个oracle中,将oracle中表字段和hive中的表字段进行比对得到各个的对应关系,之后写对应的sqoop语句对应利用ETL流程安装账期一天一天导入。

从一个oracle到另一个oracle导入的方案,利用大神写出的sqluldr2 工具用来导出数据,导入利用

sqlldr 命令导入到另一个库表中。

导出的具体命令

sqluldr2.bin user=root/pwd@tnsname query="select /*+ parallel(8) */ * from table " head=no File=/data/oracle/tmp/file 导出到本地目录

导入的具体命令

sqlldr root/pwd@@ip:1521/tnsname control=/data/oracle/shell/xxx.ctl

data=/data/oracle/tmp/file

log=/data/oracle/log/file.log errors=0 rows=100000 bindsize=1024000000 direct=y;

xxx.ctl 是用来指定导入表的字段和分割符如下写法

load data

truncate into table tablename

Fields terminated by ',' #文件的列分隔符

TRAILING NULLCOLS

(

IP char(255),

APPKEY char(255),

PLATFORM char(255),

PORTAL char(255),

COMPANYID char(255) )


数据 字段 命令 数据库 历史 历史数据 中将 中表 也就是 也就是说 供方 写法 几个问题 分隔符 场景 大神 工具 数据结构 文件 方式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 什么人不适合学习计算机网络技术 北京it 软件开发java 国家网络安全共识 中国互联网发展史亚信科技 网络安全f防范教育 棋牌作弊软件开发一个多少钱 税务系统网络安全法 宝塔面板删除数据库删不掉 易安卓网站服务器 平台数据库有哪些 win7可以做服务器操作系统么 西瓜视频服务器怎么样 四川服务器托管商虚拟主机 护苗网络安全课堂演讲稿 英特尔二代服务器cpu最高主频 世上真的有网络安全大赛吗 数据库技术三级考试要求 如东口碑好的网络技术专业服务 东迅网络技术有限公司诈骗 服务器 竖装 壹加叁网络技术服务 习水物业收费软件开发 个人云服务器软件下载 怎么下载数据库文件 石家庄行为管理服务器多少钱 威海金蝶软件开发公司 数据库加密的常用方法 obs软件的服务器地址 如何把云服务器恢复为个人电脑 公司有必要用两个数据库吗
0