There are a couple of options available for MySQL dump.
It can be accomplished using the mysqldump command-line function.
For instance:
If it's an entire DB:
$ mysqldump -u [uname] -p db_name > db_backup.sql
In case of all DBs:
$ mysqldump -u [uname] -p --all-databases > all_db_backup.sql
In case there are specific tables within a DB:
$ mysqldump -u [uname] -p db_name table1 table2 > table_backup.sql
Or you can also use auto-compressing the output using gzip in the case of the very big database:
$ mysqldump -u [uname] -p db_name | gzip > db_backup.sql.gz
In case you want to do this remotely and you have the access to the server in question, then follow the steps( I am assuming the MySQL server is on port 3306):
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p db_name >db_backup.sql
It will drop the .sql file in the folder you run the command-line from.