Sqoop --password-file 設置密碼

使用這種方式指定密碼時,文件既可以放在本地,也可以放在集羣上:

使用echo passwd > ~/.passwd,將密碼寫入文件,

chmod 400 ~/.passwd

將密碼文件設置爲當前用戶只讀,防止他人知悉該密碼。

sqoop-list-databases --connect jdbc:mysql://m.mysql.com:3306 --username root --password-file file:///home/user/.passwd

這樣即可訪問mysql,這個地方的file://在沒有配置hdfs路徑的時候可以不加,但如果運行sqoop的服務器在hadoop的core-site.xml中指定了hdfs,那麼必須加上file://,否則會報找不到文件的錯誤。

也可以直接將文件放到hdfs上,以便所有task所在的服務器都可以讀取密碼,制定hdfs中的路徑就可以了,可以不加hdfs://。

如果手動編輯密碼文件,最好在Windows環境下編輯文件,文件只有一行,只包含密碼,不要有其他多餘的空格等字符串。

我測試的時候在Linux上使用vi編輯文件,總是有換行,導致一直錯誤,後來使用windows編輯後成功執行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章