tangtb

          Hadoop,SpringMVC,ExtJs,Struts2,Spring,SpringSecurity,Hibernate,Struts
          posts - 25, comments - 88, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Sqoop安裝配置及數據導入導出

          Posted on 2014-05-31 14:41 tangtb 閱讀(20289) 評論(3)  編輯  收藏 所屬分類: Hadoop

          前置條件

          已經成功安裝配置HadoopMysql數據庫服務器,如果將數據導入或從Hbase導出,還應該已經成功安裝配置Hbase。

          下載sqoopMysqlJDBC驅動

          sqoop-1.2.0-CDH3B4.tar.gz http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz

          mysql-connector-java-5.1.28

          安裝sqoop

          [hadoop@appserver ~]$ tar -zxvf sqoop-1.2.0-CDH3B4.tar.gz

          配置環境變量

          拷貝Hadoop核心包和MYSQL驅動包到sqooplib目錄

          [hadoop@appserver ~]$ cp hadoop-1.1.2/hadoop-core-1.1.2.jar sqoop-1.2.0-CDH3B4/lib/

          [hadoop@appserver ~]$ cp  mysql-connector-java-5.1.28-bin.jar sqoop-1.2.0-CDH3B4/lib/

           

          配置sqoop-1.2.0-CDH3B4/bin/configure-sqoop文件

          注釋掉hbase和zookeeper檢查(除非準備使用HABASE等HADOOP組件)

          啟動hadoop集群

          啟動mysql

          創建sqoop用戶

           

          建立sqoop庫,test表,并構造測試數據

          測試sqoop連接

          [hadoop@appserver ~]$ sqoop list-databases --connect jdbc:mysql://10.120.10.11:3306/ --username sqoop --password sqoop

          列出mysql中所有數據庫的名稱

          mysql導入到hdfs

          sqoop ##sqoop命令

          import ##表示導入

          --connect jdbc:mysql://ip:3306/sqoop ##告訴jdbc,連接mysql的url

          --username sqoop ##連接mysql的用戶名

          --password sqoop ##連接mysql的密碼

          --table test ##從mysql導出的表名稱

          --fields-terminated-by '\t' ##指定輸出文件中的行的字段分隔符

          -m 1 ##復制過程使用1個map作業

           

          [hadoop@appserver ~]$ sqoop import --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --fields-terminated-by ':' -m 1

          Hadoop中查看導入結果

          hdfs導出到mysql

          sqoop

          export ##表示數據從hive復制到mysql中

          --connect jdbc:mysql://ip:3306/sqoop

          --username sqoop

          --password sqoop

          --table test ##mysql中的表,即將被導入的表名稱

          --export-dir '/user/root/aa/part-m-00000' ##hive中被導出的文件

          --fields-terminated-by '\t' ##hive中被導出的文件字段的分隔符

          [hadoop@appserver ~]$ sqoop export --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --export-dir '/user/hadoop/test/part-m-00000' --fields-terminated-by ':' -m 1

          Mysql中查看導出結果

          Mysql導入到Hbase

          參數說明:

          Ø hbase_tablename指定要導成hbase的表名

          Ø key_col_name指定mysql數據庫表中哪一列作為hbase新表的rowkey

          Ø col_fam_name是除rowkey之外的所有列的列族名

          [hadoop@appserver ~]$ sqoop import --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --hbase-create-table --hbase-table mysql_sqoop_test --column-family info --hbase-row-key id -m 1

          Hbase中查看結果


          評論

          # re: Sqoop安裝配置及數據導入導出  回復  更多評論   

          2014-06-04 17:02 by 艾青
          不錯的東東,謝謝樓主分享!

          # re: Sqoop安裝配置及數據導入導出[未登錄]  回復  更多評論   

          2014-07-07 09:50 by 小豪
          記得以前在http://www.lq580.com/有相關的介紹,不過現在怎么變成了一個叫綠求網的東東呢,不明白?

          # re: Sqoop安裝配置及數據導入導出  回復  更多評論   

          2016-06-22 20:54 by Hadoop
          不錯 就是有點淺
          主站蜘蛛池模板: 富裕县| 平江县| 德格县| 安丘市| 临澧县| 娱乐| 溧水县| 汨罗市| 永宁县| 天水市| 庆云县| 岳池县| 璧山县| 清丰县| 偃师市| 株洲市| 镇江市| 陈巴尔虎旗| 手机| 高要市| 伊金霍洛旗| 保靖县| 波密县| 娄烦县| 南昌县| 云阳县| 美姑县| 延边| 陵川县| 土默特右旗| 东莞市| 河池市| 巴南区| 枣阳市| 惠州市| 闽侯县| 阜新市| 策勒县| 汉寿县| 讷河市| 玉门市|