# Oracle 建立hive外部表

使用oracle的大数据连接器向建立hive的外部表,在通过在oracle中根据外部表建立内部表(create table as select * from external_table)即可实现hive表向oracle导出。

## Steps

1. 登陆141 fast用户,进入程序目录:

```shell
# login to fast@10.92.59.141
cd cd /home/fast/luohai/loadmr2ora/bin
```

  

2. 配置oracle文件与文件路径变量

```shell

ORACLE_CONF_FILE=../conf/oracles/ORACLE_65.CONF

  

```

其中ORACLE_65.CONF 文件如下配置:

```ini
hostname=10.92.190.65
port=1521
username=fastmdt
schemaname=fast
password=passwordtodb
procedure=p_mdt_hdfs_inst
# 65 为HIVE_EXT_DIR,135与62 为EXT_DATA_PATH
exttab_defaultDirectory=HIVE_EXT_DIR
connection_url=jdbc:oracle:thin:@//$hostname:$port/$schemaname
connection_user=$username
connection_password=$password

```

  

3. 配置程序运行变量

```shell
export APP_HOME=/home/fast/luohai/loadmr2ora
export LOGFILE=$APP_HOME/log/run.log
export APP_HOME=/home/fast/luohai/loadmr2ora
export OSCH_HOME=/home/fast/orahdfs-3.8.0
export HADOOP_CLASSPATH="$OSCH_HOME/jlib/*:/usr/hdp/2.5.0.0-1245/hive/lib/*:/usr/hdp/2.5.0.0-1245/hive/conf/:/usr/hdp/2.5.0.0-1245/hadoop/lib/lib/*"

```

  

4. 导入shell函数:

```shell
source common.sh
```

  

5. 建立外部表

```shell
# etlOperate hive_db hive_tb ext_oracle_tb operation oracle_conf_path
etlOperate TEST tdlte_mro_locate_hour_zhengzhou201812 tdlte_mro_locate_hour_zz201812 createTable $ORACLE_CONF_FILE
```

  

注意:若oracle没有该表可以使用相同表名
etlOperate test MRCP_G50_FREQ_CPF_T(hive数据表) MRCP_G50_FREQ_CPF_T(oracle表名)  createTable $ORACLE_CONF_FILE

其中:

* **ext_oracle_tb** 表名不能超过32

为在oracle中建立的外部表

* **operation**

对该外部表所做的操作:

**createTable** 建立新外部表

**drop** 删除外部表

**publish** 更新外部表(在hive中数据换了之后)

hive上传数据到oracle的更多相关文章

  1. 向hive上传数据时,中文乱码

    sudo -u hive hive -e "use dataplat;load data local inpath '/home/dlht/data/test/2_times.csv' ov ...

  2. 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件

    [源码下载] 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 作者:webabcd 介绍重新想象 Windows 8.1 Sto ...

  3. TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)[转]

    TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub) Git-1.7.11-preview+GitExtensions244SetupComplete+T ...

  4. Amzon MWS API开发之 上传数据

    亚马逊上传数据,现有能操作的功能有很多:库存数量.跟踪号.价格.商品....... 我们可以设置FeedType值,根据需要,再上传对应的xml文件即可. 下面可以看看FeedType类型 这次我们拿 ...

  5. Amazon MWS 上传数据 (三) 提交请求

    前面介绍了设置服务和构造请求,现在介绍提交请求. 上传数据,查询上传操作的工作状态,和处理上传操作返回的报告操作使用的Amazon API 分别为:SubmitFeed(),FeedSubmissio ...

  6. Amazon MWS 上传数据 (二) 构造请求

    上一篇文章提到了Amazon 上传数据有三个步骤,但是每个步骤都需要构造服务和构造请求,服务是一样的,请求各不相同:这个很容易理解,这三个步骤都需要和Amazon服务器交互,所以他们的服务构造是一样的 ...

  7. Amazon MWS 上传数据 (一) 设置服务

    Amazon 上传数据的流程为: 通过 SubmitFeed 操作.加密标头和所有必需的元数据(包括 FeedType 的值在内),来提交 XML 或文本型数据文件.正如亚马逊 MWS的所有提交内容一 ...

  8. 说说ajax上传数据和接收数据

    我是一个脑袋不太灵光的人,所以遇到问题,厚着脸皮去请教大神的时候,害怕被大神鄙视,但是还是被鄙视了.我说自己不要点脸面,那是不可能的,但是,为了能让自己的技术生涯能走的更长远一些,受点白眼,受点嘲笑也 ...

  9. webclient上传数据到ashx服务

    1.上传参数 UploadData()方法可以上传数据参数,需要将所要上传的数据拼成字符. // 创建一个新的 WebClient 实例.    WebClient myWebClient = new ...

随机推荐

  1. Java 中 Equals和==的区别(转)

    另外一篇参考: https://blog.csdn.net/striverli/article/details/52997927 在谈论equals和==的区别前,我们先简单介绍一下JVM中内存分配的 ...

  2. 高性能 TCP & HTTP 通信框架 HP-Socket v4.2.1

    HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件.客户端组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/ ...

  3. url编码乱码问题解决

    //url encodeURI加密 window.location.href = "upload.html?sendName="+encodeURI(sendName); //接收 ...

  4. python-web自动化-键盘操作

    selenium提供了较为完整的键盘操作引入 from selenium.webdriver.common.keys import Keys使用键盘操作时,需要借助send_keys()来模拟操作.K ...

  5. LeetCode1-5题

    1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个 ...

  6. 使用shell命令给文件中每一行的前面、后面添加字符

    shell command shell给一个文件中的每一行开头插入字符的方法:awk '{print "xxx"$0}' fileName shell给一个文件中的每一行结尾插入字 ...

  7. orcal - 子查询

    where 单行单列 SELECT AVG(sal) from emp; SELECT * FROM EMP WHERE sal <(SELECT AVG(sal) from emp); 单行多 ...

  8. python url监控 并邮件报警

    import timeimport requestsimport smtplibfrom email.mime.text import MIMETextimport datetime def Send ...

  9. H5自定义金额键盘,改良后ios体验效果流畅

    下载的别人的插件改良一下,源码地址:https://github.com/XieTongXue/how-to/tree/master/pay-h5 没有插件,直接来代码 <div class=& ...

  10. webconfig标签收集

    在web项目启动时,很多因为vs没有报错,而页面跑不出来的情况,无法调试找到错误, 可以在webconfig中添加一个标签,运行项目就可以在页面显示错误 <customErrors mode=& ...