电子商务网站建设卷子,wordpress 禁止twitter,义乌义亭招工做网站养猪工作,建设银行网站登录不上1#xff1a;背景
生产上很多sqoop脚本的密码都是铭文#xff0c;很不安全#xff0c;找了一些帖子#xff0c;自己尝试了下#xff0c;记录下细节#xff0c;使用的方式是将密码存在hdfs上然后在脚本里用别名来替代。 2#xff1a;正文
第一步#xff1a;创建密码对…1背景
生产上很多sqoop脚本的密码都是铭文很不安全找了一些帖子自己尝试了下记录下细节使用的方式是将密码存在hdfs上然后在脚本里用别名来替代。 2正文
第一步创建密码对应的别名。
hadoop credential create mytest(你的密码别名随便起就好或者根据公司的规范来) -provider jceks://hdfs/tmp/test1011 注意运行上述命令的时候会提示让你输入密码直接输入就好了这个密码是你的数据库的真实密码解析下jceks://hdfs/tmp/test1011 这里都是自由发挥或者根据公司的规范来1jceks://hdfs 是固定的 因为我们放到hdfs 如果说放到本地就换为file,推荐放到hdfs
2/tmp/test1011 这部分是hdfs上的文件不用事先创建没有的话会自动创建 第二步直接使用就好了
sqoop import -Dhadoop.security.credential.provider.pathjceks://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.pathjceks://hdfs/tmp/test1011 list-databases --connect jdbc:mysql://xxxxx:3306/bss --username mdreadonly --password-alias mytest这样不行的报错如下 归根结底是姿势不对就得吧import这些都给加上才可以。