sqoop的安装和使用[通俗易懂]

sqoop的安装和使用

大家好,又见面了,我是全栈君。

关系行数据库与非关系型数据库之间的数据同步
一、在不使用sqoop的情况下
Mysql–>hive
1.利用naivacat(工具)将数据库中的表导出(导出的时候要主要制表符/t)
2.利用WinSCP(工具)上传到linux指定的文件夹下
3.先在hive建表 create table 表名(idfa string) row format delimited fields terminated by ‘\t'”
4.hive -e “load data local inpath ‘t1.txt’ into table t1”
(假设表里面有数据,须要truncate table hive表名。在运行4)
 truncate table t1;( 仅仅删除表数据)
或者hive -e “load data local inpath ‘t1.txt’ overwrite into table t1”;
hive–>Mysql
1.hive -e “sql语句;>>name.txt”  导出在home/dev
2.然后在利用WinSCP(工具)下载到本地 
二、在使用sqoop的情况下
1.解压sqoop,配置环境变量:
在/etc/profile中加入:(没有root权限是不能改动的,所以仅仅能在sqoop/bin路径下启动)
export $SQOOP_HOME=/home/hadoop/sqoop-1.4.3
export $PATH = $SQOOP_HOME/bin:$PATH
配置完毕后要运行 source  etc/profile
2. 解压mysql,将mysql-connector-java-5.1.24-bin.jar放到$SQOOP_HOME/lib里    
把sqoop解压后根文件夹下的sqoop-1.4.3.jar增加到hadoop-2.2.0/lib里就可以。

3. 列出mysql数据库中的全部数据库命令
./sqoop list-databases –connect jdbc:mysql://222.99.11.52:33221/ –username dev –password 1234
4. 将关系型数据的表结构拷贝到hive中
./sqoop create-hive-table –connect jdbc:mysql://222.99.11.52:33221/sampledata –table t1 –username dev –password 1234 –hive-table /hive/warehouse/t1
5.从关系数据库导入文件到hive中
./sqoop import –connect jdbc:mysql:// 222.206.163.139:33221/sampledata –username dev –password mysql-password –table t1 –hive-import
6.将hive中的表数据导入到mysql中
./sqoop export –connect jdbc:mysql:// 222.206.163.139:33221/sampledata –username dev –password admin –table uv_info –export-dir /user/hive/warehouse/uv/dt=日期
  
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115632.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • windows文件在另一程序打开_windows程序设计第7版

    windows文件在另一程序打开_windows程序设计第7版均已打开 记事本(notepad)为例注意:打开其他程序时有的方法不可行,可都使用一遍进行测试1、创建一个新线程打开应用 PROCESS_INFORMATION processInfo; char dir[MAX_PATH] ; char cCmdLine[MAX_PATH]; DWORD dwExitCode; STARTUPINFO si = { sizeof(si) };…

    2022年8月18日
    13
  • php取得json_decode中的值,php json decode-获取值[通俗易懂]

    php取得json_decode中的值,php json decode-获取值[通俗易懂]正如Danp已经说过的,返回的JSON包含在函数调用中(由jsoncallback=json)你不能完全摆脱这个,但是,只是用AreaSearch?jsoncallback=&lat=41.1131514&lng=-74.0437521至少删除json在字符串的开头,您可以通过以下方式除去括号:$json=trim(trim($json),”();”);给予:{items:[…

    2022年7月17日
    30
  • 什么是静态代理和动态代理_静态ip和动态ip有什么区别

    什么是静态代理和动态代理_静态ip和动态ip有什么区别动态代理和静态代理到底有什么区别,好处在哪里?

    2025年11月10日
    5
  • python读取txt文件中的数组

    python读取txt文件中的数组写此博客只是为做笔记defread_data(dir_str):”’此函数读取txt文件中的数据数据内容:科学计数法保存的多行两列数据输入:txt文件的路径输出:小数格式的数组,行列与txt文件中相同”’data_temp=[]withopen(dir_str)asfdata:wh

    2022年5月7日
    150
  • 一文搞定子网划分!子网掩码!超详细例题解析![通俗易懂]

    一文搞定子网划分!子网掩码!超详细例题解析![通俗易懂]子网划分理论基础为什么进行子网划分减少网络流量,无论什么样的流量,我们都希望它少些,网络流量亦如此。如果没有可信赖的路由器,网络流量可能导致整个网络停顿,但有了路由器后,大部分流量都将呆在本地网络内,只有前往其他网络的分组将穿越路由器。路由器增加广播域,广播域越多,每个广播轻松划分子网域就越小,而每个网段的网络流量也越少。优化网络性能,这是减少网络流量的结果。简化管理,与庞大的网络相比,在一系列相连的小网络中找出并隔离网络问题更容易。有助于覆盖大型地理区域,WAN链路比LAN链路的速度慢得多,且

    2022年6月27日
    26
  • 校园网络总体规划设计方案_校园网的使用与规划

    校园网络总体规划设计方案_校园网的使用与规划目录一、项目概述3二、设计要求4(一)网络部分的总体要求4(二)系统部分的总体要求4(三)网络安全设计4三、设计原则6四、设计目标6五、网络拓扑结构设计7(一)布线结构需求7(二)拓扑结构的选择7六、网络技术选择9(一)VLAN技术9(二)IP通信技术10(三)使用适应性的路由协议10(四)访问控制技术11七、网络设备选型原则12(一)交换机的选择12(二)路由器的选择13(三)防火墙14(四)服…

    2022年10月5日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号