Job 作业的使用--免密执行 | 学习笔记

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 快速学习 Job 作业的使用--免密执行

开发者学堂课程【Sqoop 企业级大数据迁移方案实战Job 作业的使用--免密执行】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/718/detail/12846


Job 作业的使用--免密执行


本节介绍 Job 作业的免密执行。之前创建 job 查看甚至执行时,发现即使指定了--password,最后还是要输入一次mysql 的密码。推荐使用另外一种方式来避免该问题的出现,该参数为--password-file。从参数名上看它是一个文件的一个密码,要求文件路径指定的文件必须位于我们的 HDFS 上,而且它的权限必须是400权限。最重要的一点:在服务中必须有这类属性存在允许 sqoop 将密码放在 sqoop 存储上。

接下来开启 job 的免密操作:

1、首先创建密码文件,该密码文件存放在 HDFS 上。

打开服务器,输入

echo -n “hadoop”> itcastmysql.pwd    //使用 cho 将密码追加进入

hadoop fs -mkdir -p /input/sqoop/pwd  //创建保存密码的路径

hadoop fs -put itcastmysql.pwd /input/sqoop/pwd///将保存的密码上传在该路径下

查看当前文件在哪个路径下,刷新浏览器访问,点击 input 数据,点击到最后:

image.png

会发现当前权限并不是400,接着修改权限,输入

hadoop fs -chmod 400 /input/sqoop/pwd/itcastmysql.pwd

修改完成后该文件的权限发生变化。

2、检查 sqoop sqoop-site.xml 是否存在如下配置:

输入cd conf/

ll

结果中存在 sqoop-site.xml,再来打开 sqoop-site.xml,输入

vim 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>

相当于添加了一个新的参数,允许存放密码文件

保存完成后再来创建 job 执行就不会使用密码。

3、创建 sqoop job

在服务器上输入 cd..

复制粘贴如下代码:

bin/sqoop job --create itcastjob2 -- import--connect jdbc:mysql://node-1-1:3306/userdb \

--username root \

--password-file /input/sqoop/pwd/itcastmysg1.pwd\ //与之前--password hadoop\不同,新增文件,该文件则是上传保存的文件

--target-dir /sqoopresu1t666\

--table emp --m1

创建好 job 再来执行 job,会发现不需要密码。

输入 bin/sqoop job -exec itcastjob2

回车发现没有 Enter password 选项。

如果不想每次输密码或调用其它软件不方便输入密码时可以打开权限,实际上这种操作更加安全,不能看到明文密码。如果不想每次输密码并且发出警告,就可以把密码保存在 HDFS 上,注意:要求权限必须是400才可以,并且确保在事务中这一个选项打开。<description>If true. allow saved passwords in the metastore 如果为 true,允许保存密码在 metastore 存储,也就是 HDFS 路径上。以上就是免密执行 sqoop 作业的操作。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
SQL 资源调度 安全
开启 Kerberos 安全的大数据环境中,Yarn Container 启动失败导致作业失败
开启 Kerberos 安全的大数据环境中,Yarn Container 启动失败导致作业失败
|
11月前
|
运维
Elastic Job进阶--作业是如何被立即触发的
Elastic Job进阶--作业是如何被立即触发的
|
存储 缓存 监控
Ansible最佳实践之 AWX 作业创建和启动
写在前面 分享一些 AWX 作业创建和启动的笔记 博文内容涉及: 创建作业模板 涉及相关参数,作业模板角色配置介绍 运行作业模板并测试的Demo 食用方式: 需要了解 Ansible 理解不足小伙伴帮忙指正
270 0
Ansible最佳实践之 AWX 作业创建和启动
|
分布式计算 关系型数据库 MySQL
Job 作业的使用--创建、查看、执行、删除 | 学习笔记
快速学习 Job 作业的使用--创建、查看、执行、删除
287 0
Job 作业的使用--创建、查看、执行、删除 | 学习笔记
|
编解码 运维 Shell
ASK 运行Job 任务| 学习笔记
快速学习 ASK 运行Job 任务
116 0
ASK 运行Job 任务| 学习笔记
|
大数据 调度 开发者
Azkaban--使用实战--多 job 依赖调度 | 学习笔记
快速学习 Azkaban--使用实战--多 job 依赖调度
543 0
Azkaban--使用实战--多 job 依赖调度 | 学习笔记
|
机器学习/深度学习 分布式计算 网络协议
Spark练习 - 提交作业到集群 - submit job via cluster
Spark练习 - 提交作业到集群 - submit job via cluster
101 0
Spark练习 - 提交作业到集群 - submit job via cluster
|
资源调度 Linux
使用slurm脚本在Linux服务器上提交LS-Dyna作业
使用slurm脚本在Linux服务器上提交LS-Dyna作业
|
分布式计算 资源调度 监控
Spark集群和任务执行
Spark集群组件、Spark基本执行流程以及注意点
Spark集群和任务执行
|
存储 分布式计算 Hadoop
Hadoop客户端Job提交流程
从源码层面,总结下Hadoop客户端提交作业的流程:   1. 选择使用分布式环境通信协议,还是本地调试通信协议      org.apache.hadoop.mapreduce.Job#connect   2. 上传作业代码jobjar, libjar等,从本地文件系统到HDFS中去。     &nbsp
1786 0

相关实验场景

更多