diff --git a/Lib/bsddb/__init__.py b/Lib/bsddb/__init__.py
index 4671acc..51cc454 100644
--- a/Lib/bsddb/__init__.py
+++ b/Lib/bsddb/__init__.py
@@ -189,7 +189,8 @@
             cachesize=None, lorder=None, hflags=0):
 
     flags = _checkflag(flag)
-    d = db.DB()
+    e = _openDBEnv()
+    d = db.DB(e)
     d.set_flags(hflags)
     if cachesize is not None: d.set_cachesize(0, cachesize)
     if pgsize is not None:    d.set_pagesize(pgsize)
@@ -206,7 +207,8 @@
             pgsize=None, lorder=None):
 
     flags = _checkflag(flag)
-    d = db.DB()
+    e = _openDBEnv()
+    d = db.DB(e)
     if cachesize is not None: d.set_cachesize(0, cachesize)
     if pgsize is not None: d.set_pagesize(pgsize)
     if lorder is not None: d.set_lorder(lorder)
@@ -224,7 +226,8 @@
             rlen=None, delim=None, source=None, pad=None):
 
     flags = _checkflag(flag)
-    d = db.DB()
+    e = _openDBEnv()
+    d = db.DB(e)
     if cachesize is not None: d.set_cachesize(0, cachesize)
     if pgsize is not None: d.set_pagesize(pgsize)
     if lorder is not None: d.set_lorder(lorder)
@@ -238,6 +241,10 @@
 
 #----------------------------------------------------------------------
 
+def _openDBEnv():
+    e = db.DBEnv()
+    e.open('.', db.DB_PRIVATE | db.DB_CREATE | db.DB_THREAD | db.DB_INIT_LOCK | db.DB_INIT_MPOOL)
+    return e
 
 def _checkflag(flag):
     if flag == 'r':
