6.2. 新規に作成されたすべてのデータベースに適用されるデフォルトインデックスの定義
Directory Server のデフォルトのインデックスでは、インデックスを作成する属性のセットが定義されています。新しいデータベースを作成すると、Directory Server はデフォルトのインデックス属性を cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
エントリーからデータベース固有の cn=index,cn=database_name,cn=ldbm database,cn=plugins,cn=config
エントリーにコピーします。
Directory Server は、デフォルトのインデックスの変更を既存のデータベースに適用しません。
6.2.1. デフォルトのインデックス属性 リンクのコピーリンクがクリップボードにコピーされました!
Directory Server は、デフォルトのインデックス属性を、cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
エントリーに格納します。インデックスタイプを含めて表示するには、次のように入力します。
ldapsearch -D "cn=Directory Manager" -W -H ldap://server.example.com -b "cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config" -s one -o ldif-wrap=no
# ldapsearch -D "cn=Directory Manager" -W -H ldap://server.example.com -b "cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config" -s one -o ldif-wrap=no
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表に記載されている属性 (システムインデックス) をデータベースのインデックスから削除すると、Directory Server のパフォーマンスに大きな影響を与える可能性があります。
6.2.2. デフォルトインデックスの維持 リンクのコピーリンクがクリップボードにコピーされました!
Directory Server は、デフォルトのインデックス属性を、cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
エントリーに格納します。なお、デフォルトのインデックス属性を維持できるのは、LDIF ステートメントを使用した場合のみです。
手順
たとえば、インデックスタイプが
eq
とsub
のデフォルトインデックスにroomNumber
属性を追加するには、次のように入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下は、LDIF ステートメントの説明です。
-
objectClass: nsIndex
: このエントリーがインデックスエントリーであることを定義します。 -
objectClass: top
: このオブジェクトクラスは、インデックスエントリーで追加的に必要となります。 -
cn
: インデックスに属性の名前を設定します。 -
nsSystemIndex
: インデックスが Directory Server の操作に必須であるかどうかを示します。 -
nsIndexType
: この複数値属性は、インデックスタイプを指定します。
-
たとえば、
roomNumber
属性のデフォルトのインデックス属性にpres
インデックスタイプを追加するには、次のように入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、
roomNumber
属性のデフォルトのインデックス属性からpres
インデックスタイプを削除するには、次のように入力します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、デフォルトのインデックスから
roomNumber
属性を削除するには、次のように入力します。ldapdelete -D "cn=Directory Manager" -W -H ldap://server.example.com -x cn=roomNumber,cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
# ldapdelete -D "cn=Directory Manager" -W -H ldap://server.example.com -x cn=roomNumber,cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
デフォルトのインデックス属性をリスト表示して、変更を確認します。
ldapsearch -H ldap://server.example.com:389 -D "cn=Directory Manager" -W -b "cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config" -x -s one -o ldif-wrap=no
# ldapsearch -H ldap://server.example.com:389 -D "cn=Directory Manager" -W -b "cn=default indexes,cn=config,cn=ldbm database,cn=plugins,cn=config" -x -s one -o ldif-wrap=no
Copy to Clipboard Copied! Toggle word wrap Toggle overflow