当前位置: 首页 > news >正文

sqoop 脚本密码管理

1:背景

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

2:正文

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

hadoop credential create  mytest(你的密码别名,随便起就好,或者根据公司的规范来) -provider jceks://hdfs/tmp/test1011 注意:运行上述命令的时候会提示让你输入密码:直接输入就好了,这个密码是你的数据库的真实密码解析下:jceks://hdfs/tmp/test1011  这里都是自由发挥,或者根据公司的规范来1:jceks://hdfs  是固定的 因为我们放到hdfs 如果说放到本地就换为file,推荐放到hdfs
2:/tmp/test1011 这部分是hdfs上的文件,不用事先创建,没有的话会自动创建


第二步:直接使用就好了

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这个指令,来测试这个方式是否类型,一直报错:

sqoop  -Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/test1011 list-databases --connect 'jdbc:mysql://xxxxx:3306/bss' --username mdreadonly --password-alias mytest这样不行的

报错如下:

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

http://www.lryc.cn/news/190785.html

相关文章:

  • 微信小程序使用CryptoJS加密PassWord(MD5)
  • 国有企业合同领域的合规管理
  • Joe主题魔改:正文内容实现图片懒加载
  • 网络爬虫实践小结
  • 逍遥魔兽:如何在服务器上挂机器人?
  • 软件工程与计算总结(九)软件体系结构基础
  • bootz启动 Linux内核涉及do_bootm_linux 函数
  • ipad有必要用手写笔吗?性价比电容笔排行榜
  • jmeter怎样的脚本设计才能降低资源使用
  • 如何避免 IDEA 每次重启都index
  • ImagePreview查看gif图,关闭之后原图不动了
  • 实现基于 GitLab 的数据库 CI/CD 最佳实践
  • android关闭键盘方法
  • ACK 云原生 AI 套件:云原生 AI 工程化落地最优路径
  • 工程企业管理软件源码-综合型项目管理软件
  • stm32mp157中断简单应用
  • 智慧机场数字孪生大屏升级智慧出行全方位服务
  • 微信小程序 js中写一个px单位转rpx单位的函数
  • 第14章总结:lambda表达式与处理
  • 多尺度retinex图像去雾算法matlab仿真
  • 蓝桥等考Python组别十八级005
  • redis在linux系统的安装与使用
  • PanoFlow:学习360°用于周围时间理解的光流
  • C# - 常用API
  • 新式茶饮品牌如何写出生活感软文
  • 使用c++视觉处理----canny 边缘检测、sobel边缘检测、scharr 滤波边缘检测
  • gogs和drone如何配合使用
  • Feign客户端的配置与使用
  • 【数据结构】队列(Queue)实现详解
  • 23.10.13数据库升级流程记录