2

私が見つけたすべての検索は、1 つのテーブルをインポートする方法、または import-all-tables を推奨する方法を示しています。データベースから 440 個のテーブルのうち 35 個が必要な場合はどうなりますか。1 つのコマンドを記述してテーブルをカンマで区切ることはできますか?それとも、スクリプトに入れてコマンドを何度もコピー アンド ペーストし、そのたびにテーブル名を変更する必要がありますか?

私がしたいこと:

echo "Sqoop Import"
--options-file ${path} 
--table tbl1,tbl2,tbl3\
--target-dir ${path}
--m 1\  

私がしなければならないかもしれないと私が恐れていること:

echo "Sqoop Import"
--options-file ${path} 
--table tbl1\
--target-dir ${path}
--m 1

wait 

echo "Sqoop Import"
--options-file ${path} 
--table tbl2\
--target-dir ${path}
--m 1
4

4 に答える 4

1

オプションを使用--exclude-tables "table1,table2"して、table1 と table2 を無視します。

テーブル名の間に空白を追加しないでください(aka. "table1, table2")

于 2019-03-19T06:31:34.267 に答える
0
sqoop import-all-tables \
--connect jdbc:mysql://localhost/sqoop \
--username root \
--password hadoop \
--warehouse-dir /Sqoop21/AllTables \
--exclude-tables table1,tables2
于 2021-03-23T07:09:28.810 に答える