How do you dump specific table(s)?
I will first answer your question, what you ask, but that is probably not what you want.

If you want to dump a single table using mysqldump, you can just put its name after the database name. So, if you execute:

mysqldump [connection parameters here] a_database a_table &gt; $DEST/a_table.sql


It will backup only the a_table table from the database a_database. If you write:

mysqldump [connection parameters here] a_database a_table another_table yet_another_table \
&gt; $DEST/a_database.sql


It will dump a_database.a_table, a_database.another_table and a_database.yet_another_table.

I mentioned that this (exporting each table separatelly) is probably not what you want because if you execute mysqldump several times and the server is not in read_only mode, you will end up with several tables in an inconsistent state (the backup was done at different times). In many cases, that is undesirable because if you have to restore more than one table they could end up with incompatible data. Using several runs of mysqldump in parallel can be interesting, as it can speed up the backup to some point, but you must makes sure that you lock the tables for a consistent backup.

Another approach is to use mysqldump --tab: This will let you export each table on a couple of separate files (a .sql and a .txt), which you can later import with mysqlimport (an it will be faster than a .sql file). You can still select specific tables in the same way:

mysqldump [connection parameters here] --tab=$DEST \
a_database a_table another_table yet_another_table

$ ls $DEST

a_table.sql
a_table.txt
another_table.sql
another_table.txt
yet_another_table.sql
yet_another_table.txt


The idea is that you should avoid exporting the tables at different times, as you will lose the consistency that mysqldump --lock-tables (default) or --single-transaction will give you.