in reply to Storable to Data::Dumper again

Hash to be stored must be converted into scalar. This conversion is done by Storable::nfreeze. The MLDBM module does this conversion for you silently and store this linearized value to DBM file you specify using proper module (DB_File is used in your example).

In your example the %o hash is stored in testmldbm file which is BerkeleyDB database file. Not less and not more. Also please read BUGS and WARNINGS section in MLDBM documentation to know about problems with nested structures modification.