sqoop 脚本密码管理

1:背景

生产上很多sqoop脚本的密码都是铭文,很不安全,找了一些帖子,自己尝试了下,记录下细节,使用的方式是将密码存在hdfs上然后在脚本里用别名来替代。

2:正文

第一步:创建密码对应的别名。

bash 复制代码
hadoop credential create  mytest(你的密码别名,随便起就好,或者根据公司的规范来) -provider jceks://hdfs/tmp/test1011 


注意:运行上述命令的时候会提示让你输入密码:直接输入就好了,这个密码是你的数据库的真实密码


解析下:
 jceks://hdfs/tmp/test1011  这里都是自由发挥,或者根据公司的规范来


1:jceks://hdfs  是固定的 因为我们放到hdfs 如果说放到本地就换为file,推荐放到hdfs
2:/tmp/test1011 这部分是hdfs上的文件,不用事先创建,没有的话会自动创建

第二步:直接使用就好了

bash 复制代码
sqoop import -Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/test1011  --connect 'jdbc:mysql://xxx.xxx.20.9:3306/xxx' --username mdreadonly --password-alias 就是你上述步骤create后面那个别名 --table xxx_opportunity --target-dir /tmp/textfiles


解析下:

1: -Dhadoop.security.credential.provider.path=   这些都是固定的 
2: jceks://hdfs/tmp/test1011  这个是第一步里的内容,就是你的真实密码存放的位置
3: --password-alias 这里就是你的密码的别名

我刚开始想走个捷径:我没有把import加上,运行的 list-database这个指令,来测试这个方式是否类型,一直报错:

bash 复制代码
sqoop  -Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/test1011 list-databases --connect 'jdbc:mysql://xxxxx:3306/bss' --username mdreadonly --password-alias mytest

这样不行的

报错如下:

归根结底是姿势不对,就得吧import这些都给加上才可以。

相关推荐
-今昭-2 天前
Hadoop HDFS 高可用实战指南
运维·hadoop·hdfs·负载均衡
一路向北finish2 天前
《CentOS 7 搭建 Hadoop 3.3.6 分布式集群:NFS 共享方案完整实操》
linux·运维·hadoop·分布式·centos
BYSJMG3 天前
大数据毕业设计选题方向|【基于大数据的燃油消耗数据可视化与分析】Hadoop+PySpark+FP-Growth
大数据·hadoop·分布式·信息可视化·数据分析·课程设计
小张同学a.4 天前
Hadoop 分布式集群实战 1—— 集群搭建与在线扩容
大数据·hadoop·分布式
BYSJMG4 天前
计算机毕业设计选题推荐:基于大数据的心脏病风险数据可视化与分析(Hadoop+Spark+PySpark)
大数据·hadoop·信息可视化·数据分析·spark·课程设计
Htr_8 天前
Outcome 核心概念与实战应用指南
大数据·hadoop·apache
BYSJMG10 天前
计算机毕业设计选题推荐|【基于大数据的城市噪音数据可视化分析】Spark+K-Means+FP-Growth实战
大数据·hadoop·信息可视化·spark·课程设计
牛奶咖啡1311 天前
大数据Hadoop运维应用实践——Hadoop平台常见问题与故障汇总、系统调优、网络规划与硬件存储选型
大数据·hadoop·hadoop集群操作系统调优·hadoop集群运维问题汇总·hadoop集群硬件规划·大数据平台网络规划·大数据平台硬件存储选型
雨晨源码(同名B站)11 天前
基于Python的网易云音乐评论数据情感化分析系统 音乐爬虫信息可视化 |SnowNLP评论情感分析
开发语言·hadoop·爬虫·python·信息可视化·毕业设计
赤土 炙焱12 天前
hiveserver2启动失败,磁盘满了
hive·hadoop