Why do I get a backup file that has three different sizes?
456kb does sound very small, maybe you don't have much content/field data? Backup and migrate will exclude data from core cache tables, and the sessions and watchdog tables (though not cache tables installed by contrib modules) by default; so that might account for it. It's also probably gzipped.
An export through phpmyadmin will include all those tables (and perhaps isn't gzipped), so it should be larger than the backup and migrate version
The size of the database on disk, on the server, isn't and can't be proportional to the size of an SQL dump file. There are indexes and other meta data which take up space, so it will almost always have a larger footprint.


You don't need the cache table data, so as soon as you've confirmed that the dump from backup and migrate has the content you need in it (always a good idea to check), you should use that one going forward.