How to count number of rows inside Oracle dump file?

Posted on

Question :

I have a huge (38Gb after bzip2) Oracle EXP dump file. It contains one table.
Such big dumps usually end up with an error, but in fact contain the full table.

Earlier I was importing these tables back into DB to check that they are ok.
But it takes significant amount of time and resources.

Easy way to check that the file is fine – is to see how many rows in it. To compare with database (this table for example has 4 464 761 311 rows).
But because export ended with an error, EXP did not show how many rows it dumped.

So how is it possible to see how many rows inside dump file without importing it?

Export was done with such parameters: exp direct=y recordlength=65535 and there are no visible sql commands in it, just the data.

Answer :

grep -a -A 5 METRICSTposttables table.dmp

outputs:

METRICSTposttables actions
METRICET 381
METRICSTPost-inst procedural actions
METRICET 381
METRICSTDeferred analyze commands
TABLE "my_table"

Where 381 matched the export count:

. . exporting table          MY_TABLE        381 rows exported

Leave a Reply

Your email address will not be published. Required fields are marked *