说明:在创建Job时,使用--password-file参数,而且非--passoword。主要原因是在执行Job时使用--password参数将有警告,并且需要输入密码才能执行Job。当我们采用--password-file参数时,执行Job无需输入数据库密码。
sqoop job --create etl_sync_job -- import --connect jdbc:mysql://10.96.3.8:3306/lOT_DMPS --username galera --password-file /data/cdh/hive/hiveExternal/sqoopMysqlTest.pwd --table test_etl --target-dir '/data/cdh/hive/hiveExternal/TEST_ETL' --check-column id --incremental append --last-value 1 --null-string '\\N' --null-non-string '\\N' --fields-terminated-by '\001' --lines-terminated-by '\n' -m 1
2.创建password-file文件
注:sqoop规定密码文件必须放在HDFS之上,并且权限必须为400
(1)echo -n "123456" > sqoopMysqlTest.pwd
(2)hdfs dfs -put sqoopMysqlTest.pwd /data/cdh/hive/hiveExternal
(3)hdfs dfs -chmod 400 /data/cdh/hive/hiveExternal/sqoopMysqlTest.pwd
3.执行job
sqoop job -exec etl_sync_job
4.查询job ,主要是查看增量更新字段中每次执行后报错的值
sqoop job -show etl_sync_job
5.查看job listsqoop job --list
6.删除jobsqoop job -delete etl_sync_job