13.7. インデックスの削除
本セクションでは、インデックスから属性とインデックスタイプを削除する方法を説明します。
13.7.1. デフォルトインデックスエントリーからの属性の削除
Directory Server のデフォルト設定を使用する場合は、
sn
などのデフォルトのインデックスエントリーに一覧表示される複数の属性がインデックス化されます。以下の属性はデフォルトインデックスの一部です。
aci
|
cn
|
entryusn
|
givenName
|
mail
|
mailAlternateAddress
|
mailHost
|
member
|
memberOf
|
nsUniqueId
|
ntUniqueId
|
ntUserDomainId
|
numsubordinates
|
objectclass
|
owner
|
parentid
|
seeAlso
|
sn
|
telephoneNumber
|
uid
|
uniquemember
|
警告
システムインデックスを削除すると、Directory Server のパフォーマンスが大幅に影響を受ける可能性があります。
たとえば、デフォルトのインデックスから
sn
属性を削除するには、次のコマンドを実行します。
cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
エントリーから属性を削除します。# ldapdelete -D "cn=Directory Manager" -W -p 389 -h server.example.com -x cn=sn,cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
このエントリーから属性を削除しない場合は、サーバーの再起動後にsn
属性のインデックスが自動的に再作成され、破損します。cn=attribute_name,cn=index,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
エントリーを削除します。詳細については、「インデックスからの属性の削除」 を参照してください。
13.7.2. インデックスからの属性の削除
特定の状況では、インデックスから属性を削除します。本セクションでは、コマンドラインを使用する手順と、Web コンソールの使用方法を説明します。
13.7.2.1. コマンドラインを使用したインデックスから属性の削除
インデックスから属性を削除するには、以下を実行します。
- 削除する属性が
cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
デフォルトインデックスエントリーに一覧表示されている場合は、最初にこのエントリーから削除します。詳細については、「デフォルトインデックスエントリーからの属性の削除」 を参照してください。 - インデックスから属性を削除します。以下に例を示します。
# ldapdelete -D "cn=Directory Manager" -W -p 389 -h server.example.com -x cn=sn,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config
エントリーを削除した後に、Directory Server は属性のインデックスを維持しません。 - 属性インデックスを再作成します。「既存のデータベースへの新規インデックスの作成」を参照してください。
13.7.2.2. Web コンソールを使用したインデックスからの属性の削除
インデックスから属性を削除するには、以下を実行します。
- Web コンソールで Directory Server ユーザーインターフェイスを開きます。「Web コンソールを使用した Directory Server へのログイン」を参照してください。
- インスタンスを選択します。
- 接尾辞エントリーを選択します。
- Indexes タブを開きます。
- インデックスを削除する属性の横にある Delete Index を選択します。ボタンをクリックして、
13.7.3. コマンドラインを使用したインデックスタイプの削除
たとえば、インデックスから
sn
属性の sub インデックスタイプを削除するには、以下を実行します。
- インデックスタイプを削除します。
# ldapmodify -D "cn=Directory Manager" -W -x dn: cn=sn,cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config changetype: modify delete: nsIndexType nsIndexType: sub
インデックスエントリーを削除した後に、Directory Server は属性の部分文字列インデックスを維持しなくなります。 - 属性インデックスを再作成します。「既存のデータベースへの新規インデックスの作成」を参照してください。
13.7.4. 参照インデックスの削除
このセクションでは、データベースからエントリーの閲覧項目を削除する方法を説明します。
13.7.4.1. コマンドラインを使用したインデックスの削除
アルファベット順の参照インデックスと仮想リストビュー (VLV) のエントリーは同じです。ここでは、参照インデックスを削除する手順を説明します。
コマンドラインで閲覧用インデックスや仮想リストビューインデックスを削除するには、以下を行います。
- cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config エントリーから、参照しているインデックスエントリーを削除します。以下に例を示します。
# ldapdelete -D "cn=Directory Manager" -W -p 389 -h server.example.com -x "cn=MCC ou=People dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config" "cn=by MCC ou=People dc=example dc=com,cn=MCC ou=People dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config"
2 つの参照インデックスエントリーを削除すると、Directory Server ではこれらのインデックス化は維持されなくなります。 - 属性インデックスを再作成します。「既存のデータベースへの新規インデックスの作成」を参照してください。