in reply to dbmopen does not work

Well, for one, dbmopen doesn't return a handle, according to perlfunc:dbmopen. Second, as that document mentions, dbmopen is deprecated in favor of tie. But if you want to use dbmopen, to add stuff to the DBM file, you need to populate the variable you've called param.

What's this do?

my %param; dbmopen(%param, $config_file, 0666); # now populate the %param hash $param{key1} = "value1"; # or whatever makes sense dbmclose(%param);
update And of course, as Fastolfe mentions, that first line should be dbmopen or die anyway. bad arturo!

Philosophy can be made out of anything. Or less -- Jerry A. Fodor