如何重建全文索引编录

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2011-01-12

本主题说明重建全文索引编录的两种方式,即通过 Exchange 命令行管理程序脚本以编程的方式,以及通过手动删除全文索引编录目录的方式。

若要以编程的方式重建全文索引编录,请运行 <drive>:\Program Files\Microsoft\Exchange Server\Scripts\ 中提供的 ResetSearchIndex.ps1 脚本。

若要手动重建全文索引编录,请停止 Microsoft Exchange 搜索服务,删除旧的编录,然后重新启动该服务。此步骤将强制服务器重新创建全文索引编录。

开始之前

若要执行下列步骤,必须为您使用的帐户委派本地 Administrators 组成员身份。

有关权限、角色委派以及管理 Exchange Server 2007 所需权限的详细信息,请参阅权限注意事项

步骤

使用 ResetSearchIndex.ps1 脚本重建全文索引编录

  1. 启动 Exchange 命令行管理程序。

  2. 删除与指定邮箱数据库关联的索引目录:

    ResetSearchIndex.ps1 [-force]  <dbname> [<dbname>]
    
  3. 删除与所有邮箱数据库关联的索引目录:

    ResetSearchIndex.ps1 [-force] -all
    

手动重建全文索引编录

  1. 通过运行以下命令,停止 Microsoft Exchange 搜索服务:

    Net Stop MsExchangeSearch
    
  2. 删除全文索引编录目录。

    \Exchange Server\Scripts 目录中有一些脚本,可以用于帮助管理 Exchange 搜索。使用 Exchange 命令行管理程序可以运行下列脚本:

    • GetDatabaseForSearchIndex.ps1 提供了索引目录文件时,此脚本返回关联的邮箱数据库名称。脚本示例:

      GetDatabaseForSearchIndex IndexDirectoryName1 IndexDirectoryName2
      
    • GetSearchIndexForDatabase.ps1 此脚本返回指定邮箱数据库名称的索引目录。脚本示例:

      GetSearchIndexForDatabase MailboxdatabaseName1 MailboxdatabaseName2 -All
      
      note注意:
      目录名称采用 CatalogData-<guid>-<guid> 约定,其中第一个 <guid> 是数据库的 GUID,第二个 <guid> 代表群集邮箱服务器上用于区分节点的实例 GUID。以下是一个示例文件夹名称:\CatalogData-b56624f3-bf19-4463-926f-d4705ac3dd08-cc64dd2d-2428-4f12-bba2-79d6d34c4d27
      .edb 文件和编录数据目录的典型路径为:C:\program files\microsoft\exchange server\mailbox\first storage group\。

    可以使用以下示例验证目标编录目录是否正确:

    GetSearchIndexForDatabase -All
    
  3. 通过运行以下命令,启动 Microsoft Exchange 搜索服务:

    Net Start MsExchangeSearch