The SharePoint Enterprise Search Migration Tool (SMT), created  by Microsoft, is a great little tool for moving/migrating search settings from one SharePoint Search Service Application to another, and even from a SharePoint 2007 SSP to a SharePoint 2010 SSA or FAST for SharePoint. The tool is available for download from the MSDN Archive - both as a binary and its source code. It is a console application that creates an XML when exporting the settings and uses the same XML when importing the settings, and it works great in a scripting environment. The SMT that’s available from MSDN Archive allows you to migrate Best Bets, Search Scopes and Site Collection Search settings.

Introducing the Enhanced Search Migration Tool!

Consider using this tool when moving search settings from an SSA in a staging environment to an SSA in a production environment, or from production to a standby-farm. There’s some stuff missing then - it’s not enough just migrating best bets, search scopes etc. In my case I had to move the Managed Properties between our environments. Ok, you can script it all using PowerShell, but I’d prefer having something that automatically could move Managed Properties from dev to test to stage to production to standby.

So I took the source for the SMT and added functionality to work with the Managed Properties. It will export the Managed Properties from one SSA including its configuration and mapped crawled properties to the same XML file as the other Search Settings, and can then be used to import the Managed Properties to another SSA.

Here’s how it works:

Export Managed Properties:

SearchMigrationTool.exe -export -managedproperty managedprops.xml

Import Managed Properties:

SearchMigrationTool.exe -import -managedproperty -conflictBehavior prompt managedprops.xml

As you can see it follows the same routine as the default SMT does and supports conflict resolution. And you can of course combine the export and import with the other SMT switches such as BestBet, Scope, SearchSettings or All (which exports/imports everything).

Features

The features of this Enhanced SMT are:

  • Import/Export Managed Properties, including all their configuration
  • Only works for SharePoint 2010 to SharePoint 2010 (no 2007 and no FAST)
  • Only maps existing crawled properties to the managed property
  • It will not change the type of a Managed Property
  • Handles the case when an SSA is present in multiple proxy groups (bug in original SMT)

Sample usage

Here’s a sample on how to use it. Assume that your developers need to add a new Managed Property. Instead of them writing feature receivers or PowerShell to create the Managed Properties they just write a snippet of XML, like this:

A new Managed Property

The admins then use the Search Migration Tool to import this new Managed Property (as a part of the update POSH or similar).

Import the MP

Once this is done you will see the Managed Property in your SSA.

The MP!

Can’t be easier?

Support for this!

There is no support for this tool at all, but I would appreciate any feedback on it. I’ve had it running for a while amongst my friends and received positive feedback.

Hopefully my additions will be merged into the “official” SMT - but until then download the tool from here and get your SSA’s in sync!

Download

Here are the downloads:

Note! If you’re going to modify/build the SMT you need to grab the SharePoint assemblies. They are not included in this package due to licensing restrictions.