This is an old copy of the Python FAQ. The information here may be outdated.

What is this bsddb185 module my application keeps complaining about?

Starting with Python 2.3, the distribution includes the PyBSDDB package ( as a replacement for the old bsddb module. It includes functions which provide backward compatibility at the API level, but requires a newer version of the underlying Berkeley DB (dead link) library. Files created with the older bsddb module can’t be opened directly using the new module.

Using your old version of Python and a pair of scripts which are part of Python 2.3 ( and, in the Tools/scripts directory) you can convert your old database files to the new format. Using your old Python version, run the script to convert it to a pickle, e.g.:

python2.2 <pathto>/ database.db database.pck

Rename your database file:

mv database.db olddatabase.db

Now convert the pickle file to a new format database:

python2.3 <pathto>/ database.db database.pck

The precise commands you use will vary depending on the particulars of your installation. For full details about operation of these two scripts check the doc string at the start of each one.

CATEGORY: general


A Django site. rendered by a django application. hosted by webfaction.