Май 112011
 

При копировании OID'ов (например, в целях создания тестового окружения или для резервирования) ORACLE рекомендует использовать утилиту ldifwrite, которая выгружает данные в файл формата LDIF.

Примерно так (нам нужно выгрузить всё содержимое):

ldifwrite -c mydb -b "" -f data.ldif

Способ замечательный, но ldifwrite падает с ошибкой Segmentation Fault и на Solaris, и на Windows. Есть даже документ на металинке (Doc ID 299878.1), да вот только никто не собирается исправлять ситуацию.

Вместо ldifwrite можно использовать утилиту ldapsearch:

# Выгрузим данные в файл
ldapsearch -L -p 389 -D cn=orcladmin -h srchost -w passwd -b "" objectclass=* > data.ldif
 
# Загрузим их в новый OID
ldapadd -c -v -p 389 -D cn=orcladmin -h newhost -w passwd -f data.ldif

Конечно, было бы удобнее пользоваться ldifwrite и bulkload, особенно при большом числе записей, т.к. эти утилиты работают непосредственно с самой базой данных репозитория, а ldapsearch и ldapadd требуют запущенного OID'а и работают медленнее.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

(обязательно)

(обязательно)