Sqoop:如何在 运行 sqoop 导入之前获取所有表的记录数

Sqoop: How to get counts of records for all tables before running the sqoop import

我正在尝试使用 sqoop 将数据库中的所有表从 SQL 关系数据库导入配置单元。在此之前,我想知道源数据库中每个表中有多少条记录。这样,我可以估计对源数据库的影响,我希望这种影响很小。

有简单的方法吗?我尝试使用 select count(*) from dbname.tbname 之类的查询。它不工作。这是我的 sqoop 的样子:

sqoop import -Dmapred.job.queue.name=$myqueue   
    --connect "jdbc:sqlserver://$svr;database=$db;username=$user;password=$pass" 
    --query "select count(*) from $tbname "  
    --target-dir $detdatadir/$filerecord -m3 

如有任何帮助,我们将不胜感激。

sqoop命令应该是这样的

sqoop eval -Dmapred.job.queue.name=$myqueue   
--connect "jdbc:sqlserver://$svr;database=$db;username=$user;password=$pass" 
--query "select count(*) from $tbname"