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

erhoui1w  于 2021-06-03  发布在  Sqoop
关注(0)|答案(1)|浏览(357)

我正在尝试使用sqoop将数据库中的所有表从sql关系数据库导入hive。在此之前,我想知道源数据库中每个表中有多少条记录。通过这种方式,我可以估计对源数据库的影响,我希望这种影响很小。
有没有简单的方法?我尝试使用如下查询 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

任何帮助都将不胜感激。

mutmk8jj

mutmk8jj1#

sqoop命令应该是这样的

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

相关问题