次の手順では、新しいインデックスまたは変更したインデックスを検索できるように、インデックスファイルを生成します。属性のインデックス設定を変更する場合は、その属性をフィルタとして含むすべての検索のインデックスが作成されるとは限りません。その属性を含む検索が確実に実行されるようにするには、次の手順のコマンドを使用して、属性のインデックス設定を作成または変更するたびに、既存のインデックスを再生成します。
このタスクは DSCC を使用して実行することができます。詳細については、「Directory Service Control Center のインタフェース」および DSCC オンラインヘルプを参照してください。
インデックスファイルは、次のいずれかの方法で生成します。
オンラインで新しいインデックスファイルを生成します。
$ dsconf reindex -h host -p port [-t attr] suffix-DN |
-t は、すべての属性ではなく、指定した属性のみインデックスを再生成するように指定します。
たとえば、preferredLanguage インデックスを再生成するには、次のように入力します。
$ dsconf reindex -h host -p port -t preferredLanguage dc=example,dc=com |
dsconf reindex コマンドの実行中も、サーバーからサフィックスの内容を使用できます。ただし、コマンドが完了するまで検索のインデックスは作成されません。インデックスの再生成は多くのリソースを消費するタスクであるため、サーバー上のその他の処理のパフォーマンスに影響を生じることがあります。
オフラインで新しいインデックスファイルを生成します。
$ dsadm reindex -t attr instance-path suffix-DN |
たとえば、preferredLanguage インデックスを再生成するには、次のように入力します。
$ dsadm reindex -t preferredLanguage /local/ds dc=example,dc=com |
サフィックスを再初期化することによって、オフラインで速やかにすべてのインデックスを再生成します。
サフィックスを再初期化すると、すべてのインデックスファイルが自動的に再生成されます。ディレクトリのサイズによりますが、多くの場合、複数の属性のインデックスを再生成するよりサフィックスの再初期化の方が高速です。ただし、初期化時にはサフィックスを使用できません。詳細については、「再初期化によるサフィックスのインデックスの再生成」を参照してください。
dsconf import か dsconf reindex のいずれか、または複数のサフィックスで並行して両方のコマンドを実行すると、トランザクションログが大きくなり、パフォーマンスに悪影響を及ぼすことがあります。