我在RDBMS中有100个表,但我只想导入50个表。
如何使用Sqoop做到这一点?我不想使用—exclude
命令。
请通过示例告诉我这个过程。
你可以在bash中通过列出所有带有Sqoop的表来执行此操作,然后只导入其中的50个:
JDBC_URL=<jdbc_url>
DBNAME=<database>
USERNAME=<username>
PASSWORD=<password>
DATA_COLLECTOR=<import_dir>
sqoop list-tables \
--connect "$JDBC_URL;databaseName=$DBNAME;username=$USERNAME;password=$PASSWORD" \
| head -n 50 \
| xargs -I {} sqoop import \
--connect "$JDBC_URL;databaseName=$DBNAME;username=$USERNAME;password=$PASSWORD" \
--table "{}" --target-dir "$DATA_COLLECTOR/{}"