database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
ㆍLDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
LDAP Q&A 245 게시물 읽기
No. 245
Re: LDAP에서 입력한 데이타를 몽땅 삭제하는 방법?
작성자
박근오
작성일
2001-01-09 14:54
조회수
7,820

>>윤지영 님께서 쓰시길<<

 

:: openldap를 사용하고 있습니다.

::

:: 사이베이스 DB에서 openldap 서버로

::

:: 데이타를 주기적으로 한꺼번에 몽땅(9000건정도)입력하고 있습니다.

::

:: 그래서 주기적으로 openldap 서버에서 데이타를 몽땅 삭제, 몽땅 입력을

::

:: 하려고 합니다.

::

:: openldap 서버에서 입력한 데이타를 몽땅 삭제하려면 어떻게 해야하느지 알고

::

:: 싶습니다.

::

 

안녕하세요.

OpenLDAP의 데이타를 몽땅 삭제 하려면 다음과 같은 방법을 이용하면됩니다.

 

1. 콘솔로 들어가서 데이타 디렉토리(slapd.conf의 directory에 명시된)에

데이타를 완전히 지우면 됩니다. 그리고 slapd를 다시 시작시키면 됩니다.

(디렉토리 통째로 묶어놓는 것도 백업이 됩니다.)

 

2. ldapdelete 명령으로 삭제를 합니다. 이때 openldap 버전 2대의 ldapdelete

에 -r 옵션이 있어서 recursive하게 서브트리까지 지워줍니다. 이 옵션을 쓰지

않으면 leaf entry만을 지울수가 있습니다. openldap 1.2대를 쓰신다면

-r옵션을 쓰실수 있는 패치를 구하셔서 패치를 가하신후 쓰시면 됩니다.

(OpenLDAP사이트에 search메뉴로 들어가서 "subtree delete" 검색을 하시면

패치를 구할수 있습니다.

 

3. 아무래도 위의 말씀을 들어보면 자동으로 그렇게 되도록 하고 싶으시다는

뜻같이 보입니다. 만일 modify가 가능한 데이타들이라면(즉, 새로 입력되는 데이

타가 기존의 데이타와 중복되는 것이 많다면) modify프로그램 루틴을 작성하시면

될것이고 그렇지 않다면 완전히 지워주는 프로그램을 작성하시면됩니다.

만일 전체 트리를 지우시려면 위의 방법을 수행하는 스크립트를 작성하시면

될것이고 만일 특정 서브트리 아래의 내용만 지워야 하는 일이 생긴다면

다음과 같이 합니다.

a) 자바로 작성할 경우 : JNDI api함수를 참고하여 엔트리를 지우는데 이때 또

주의할것이 Context클래스의 destroySubcontext()함수나 unbind()함수가 둘다

서브트리가 있는 intermediate context일경우에는 exception을 내게됩니다.

그러므로 프로그램적으로 해당서브트리가 있는지를 검색하고 있으면 말단leaf까지

가서 지우면서 트리를 거슬러 올라오는 프로그램을 작성하셔야 합니다.

b) C api로 작성할 경우: 찾아봐도 위와 마찬가지로 ldap_delete()함수가

서브트리까지 지워주는 옵션이 없군요.

c) PHP로 작성할 경우 : ^^; 마찬가지 입니다.

OpenLDAP v2대의 ldapdelete.c소스를 찾아서 -r 옵션에 어떻게 하는지 보시면

간단히 처리할수 있겠군요. 물론 그냥 만드셔도 되지만요. ^^;

 

그럼 즐거운 하루보내세요.

[Top]
No.
제목
작성자
작성일
조회
247휴~ 또질문이네요ㅠ.ㅠ 이상한 에러메세지에요....
임오근
2001-01-10
7233
248┕>Re: 휴~ 또질문이네요ㅠ.ㅠ 이상한 에러메세지에요....
강윤환
2001-01-10 11:00:07
7487
254 ┕>답변감사(내용무
임오근
2001-01-12 18:32:00
7234
260 ┕>Re: Re: 휴~ 또질문이네요ㅠ.ㅠ 이상한 에러메세지에요....
김경하
2001-01-15 14:51:54
7221
262  ┕>검색결과(참고)
임오근
2001-01-16 14:08:37
7376
246ldap version 2 와 version 3의 차이는?
강윤환
2001-01-10
7877
252┕>Re: ldap version 2 와 version 3의 차이는?
정재익
2001-01-11 20:35:15
8135
258 ┕>Re: Re: ldap version 2 와 version 3의 차이는?
김경하
2001-01-15 14:36:26
8413
244LDAP 서버 개발자 구함
김형근
2001-01-09
7605
243LDAP에서 입력한 데이타를 몽땅 삭제하는 방법?
윤지영
2001-01-09
7519
245┕>Re: LDAP에서 입력한 데이타를 몽땅 삭제하는 방법?
박근오
2001-01-09 14:54:53
7820
236RDBMS를 Back-SQL로 쓰는 목적.
박근오
2001-01-08
7849
237┕>Re: 메타 인포메이션 (1)
박근오
2001-01-08 13:05:51
8612
238┕>Re: 메타 인포메이션 (2)
박근오
2001-01-08 13:02:39
8196
239┕>잘읽었습니다. 현재 NOVELL
송상준
2001-01-08 13:42:33
7544
234이게 빠른건지 느린건지 ...?
임오근
2001-01-08
8955
242┕>Re: 이게 빠른건지 느린건지 ...?해결^^
임오근
2001-01-08 19:30:43
8873
227LDAP의 데이터 백업 및 복구 방법
백종규
2001-01-06
9986
228┕>Re: LDAP의 데이터 백업 및 복구 방법
박근오
2001-01-06 11:13:48
9502
232┕>Re: LDAP의 데이터 백업 및 복구 방법
임오근
2001-01-06 14:18:22
9012
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2019 DSN, All rights reserved.
작업시간: 0.081초, 이곳 서비스는
	PostgreSQL v11.5로 자료를 관리합니다