Я отправил этот вопрос в dba.stackexchange.com, но это рассматривают вне темы, и люди предлагают, чтобы я отправил его здесь, таким образом, я отправляю его здесь.
Я имею openldap
сервер и работа ubuntu 14.10
и мне удалось успешно добавить a DIT
в него использование после ldif
:
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=example,dc=com
olcRootDN: cn=Manager,dc=example,dc=com
olcRootPW: secret
olcDbIndex: objectClass eq
Ради тестирования нескольких DITs
Я пытался добавить другую базу данных с помощью другого ldif
:
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: hdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=example1,dc=com
olcRootDN: cn=Manager,dc=example1,dc=com
olcRootPW: secret
olcDbIndex: objectClass eq
Сначала казалось, что все подходило, но когда я пытался искать свою первую базу данных, я получил ошибку, которая сказала:
result: 80 Other (e.g., implementation specific) error
text: internal error
Будучи смущенным этой ошибкой я работал slapd -d
и вот то, что я получил:
bdb(dc=example,dc=com): BDB0060 PANIC: fatal region error detected; run recovery
Я даже установил db-utils
и работал db_recover
без успеха. Вопрос что случилось с моим openldap
сервер?
Я предполагаю, что основная ошибка в том, что вы использовали тот же olcDbDirectory
для обоих DIT. Попробуйте использовать разные каталоги для хранения данных (вам, вероятно, придется стереть текущие данные и начать заново).