dump the whole database
$ mysqldump --lock-tables --opt DBNAME -u UNAME --password=PASS | gzip > OUTFILE
$ mysqldump -u UNAME -p DBNAME > FILENAME
If you are using the MySQL 5.6 version of mysqldump on an older MySQL database, you might get the error message.

mysqldump: Couldn't execute 'SELECT @@GTID_MODE': Unknown system variable 'GTID_MODE' (1193)

This error is in part due to the introduction of Global Transaction Identifiers (GTIDs) in MySQL 5.6. GTIDs make it simple to track and compare replication across a master-slave topology.
mysqldump tries to query this system variable, which doesn’t exist in earlier versions, and then fails. The solution is to add -–set-gtid-purged=OFF in the mysqldump command. It should look something like

mysqldump -h dbHost -u dbuser dbName --set-gtid-purged=OFF