sqoop job的使用

sqoop job的使用
sqoop job可以將執行的語句變成一個job,並不是在創建語句的時候執行,你可以查看該job,可以任何時候執行該job,也可以刪除job,這樣就方便我們進行任務的調度。

--create <job-id> 創建一個新的job.
--delete <job-id> 刪除job
--exec <job-id> 執行job
--show <job-id> 顯示job的參數
--list 列出所有的job
# 創建job
[root@hadoop01 ~]# sqoop job --create user_job -- import --hive-import --connect jdbc:mysql://hadoop01:3306/sqoopdb --username root --password root --table MYUSER --columns 'ID,ACCOUNT,PASSWD' -m 1 --hive-table my
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:14:49 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
..........
# 創建job
[root@hadoop01 ~]# sqoop job --create hdfs_job -- import --connect jdbc:mysql://hadoop01:3306/sqoopdb --username root --password root --table user --columns 'id ,ACCOUNT,PASSWD' -m 1 --target-dir '/sqoopdb/hdfs/' 
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:21:29 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
..........

# 查看job
[root@hadoop01 ~]# sqoop job -list
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:24:37 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Available jobs:
  hdfs_job
  user_job

# 執行job 會提示輸入mysql root用戶密碼
[root@hadoop01 ~]# sqoop job --exec dfs_job

#刪除作業
[root@hadoop01 ~]# sqoop job --delete dfs_job
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:41:59 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
[root@hadoop01 ~]# sqoop job --list
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:42:10 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Available jobs:
  hdfs_job
  user_job
  
#顯示作業詳細信息
[root@hadoop01 ~]# sqoop job --show hdfs_job
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /opt/app/sqoop-1.4.7.bin__hadoop-2.6.0/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installation.
20/05/21 15:42:50 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
Job: hdfs_job
Tool: import
Options:
.........

發現當我們執行hdfs_job的時候,需要輸入數據庫的密碼,怎麼樣能不輸入密碼呢?
配置sqoop-site.xml即可解決

將sqoop.metastore.client.record.password參數的註釋去掉 或者再添加一下

vi sqoop-site.xml
  <property>
    <name>sqoop.metastore.client.record.password</name>
    <value>true</value>
    <description>If true, allow saved passwords in the metastore.
    </description>
  </property>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章