在Berkeley DB的文檔,更說明的原因可以是以下:如何確定確切的原因,爲什麼berkeley db在db-> open上返回EINVAL?
指定了無效的標誌的值或參數(例如,未知數據庫類型,頁面尺寸,散列函數,填充字節,字節順序)還是與指定數據庫不兼容的標誌值或參數。 指定了DB_THREAD標誌,快速互斥對此架構不可用。
DB_THREAD標誌被指定爲DB-> open,但未指定給創建DB句柄的環境的DB_ENV-> open調用。
使用DB_THREAD標誌或提供的數據庫環境支持事務處理指定了支持平面文本文件。
我使用的唯一標誌是DB_CREATE,數據庫類型是DB_BTREE。我想知道導致EINVAL的確切原因,但我沒有找到任何可以幫助我在「DB」結構內的冗長配置(在DB_ENV中,他們有set_verbose方法,但我不使用DB_ENV )。