Importing SQL Server 2005 Registered Servers to SQL Server 2008

The team here discovered something that I thought we should share. I’ll get a Knowledge Base (KB) article out soon so that you have something more "official", but I wanted to get this out as soon as I could.

A user wrote us and said that when he tried to import his registered servers from SQL Server 2005 using the "Import" feature in SQL Server 2008, SQL Server Management Studio (SSMS) gave him an error.

When we dug into this, we found that when we added support for the new "Central Management Servers" node, we needed a new XML file format for the servers so that they could be differentiated from the other nodes in SSMS. That’s a good thing.

We also made sure that if you upgrade the SQL Server 2005 tools to SQL Server 2008, then you will be prompted to migrate all of the old data on the first launch of SSMS. That’s also good. So if you just upgrade you’re fine.

What *isn’t* good is that the import function, which is another set of code entirely, didn’t get the change. This means if you use the "Import" feature in SQL Server 2008 and point it at the list of servers you exported from SQL Server 2005 using the "Export" feature, you’ll get this error. Argh!

But there is a solution:

  1. On the SQL Server 2005 system, shut down SSMS and copy out the files in this location: “%appdata%\Microsoft\Microsoft SQL Server\90\Tools\Shell\RegSrvr.xml
  2. Now copy those files to the same location when you installed SQL Server 2008.
  3. Open SSMS 2008 and right-click Local Server Groups  in the Registered Servers window
  4. Choose Tasks | Previously Registered Servers

Sorry about that – we’ve got a bug in for this.

Comments (19)

  1. I discovered the already known bug in SQL 2008 that you can't import a SQL 2005 server list (exported as a regsrvr file). For someone like me who deals with a large numger of SQL Servers, this is a major issue. Fortunately, Buck Woody has provided

  2. says:

    This did not work for me. I’m using actual release version.

    I did an upgrade from 2005, and it offered to load them, but I clicked no by mistake…

    Any way to show the option again?

  3. sjsanthose says:


    I dont see that folder in my system. Any other option? Seems like it has not been fixed in SP1 also :(..

  4. sjsanthose says:

    Its still not working for me.. Im in SP1..

  5. Michael says:

    This solution doesn't work.

    The error is the same as if you tried to import from file saved in SQL 2005 environment "Deserialization input in corrupt. 'None' is an invalid XmlNodeType."

  6. xyvyx says:

    This worked for me too.

    I was importing from SQL 2005 to a new machine with only SQL 2008 R2 installed.  (Yes, this bug still exists…)  In my case, I had to create the

    90/Tools/Shell subfolders and copy this one file over.  

    Michael, were you attempting to import this particular file or were you using the "previously registered servers" option… it sounds like they behave differently.

  7. Originally put the 2005 regsrvr file in the ..100ToolsShell and ended up with same invalid node message as before (much like Michael).  Per xycyx's post, I created the ..90ToolsShell folder on this machine (SSMS 2005 was never installed on thsi new machine) and placed the regsrvr file there.  SSMS 2008 now recognizes that there are previously registered servers (using steps 3 & 4 from original post) and tries to import them but then fails:

    TITLE: Previously Registered Servers


    The operation 'Upgrade' failed. (Microsoft.SqlServer.Management.RegisteredServers)

    For help, click:



    Key not valid for use in specified state.


  8. Okay, back to answer my own question.  Partial answer here:…/ssms-2008-fails-to-import-sql-instances-registered-in-ssms-2005

    My particular issue was that the import did not like the hashed passwords that are stored in the XML. Once I removed the passwords from regsrvr.xml, the sites were recognized without error (and without passwords, obviously).

  9. Pietjegates says:

    At first this solution didn 't work for me.

    Then I copied the file both into to SQL 90 and 100 folder

    C:Documents and SettingsUsernameApplication DataMicrosoftMicrosoft SQL Server100ToolsShell


    C:Documents and SettingsUsernameApplication DataMicrosoftMicrosoft SQL Server90ToolsShell

    Then it worked for me.

  10. Michael C says:

    exactly where in the "SQL Server 2008 install folder" do you put this file?

  11. Same problem exists when migrating from 2008 to 2012. BuckWoody, is your bug filed under Microsoft Connect?

  12. Andrew Bache says:

    Tried that and got …

    Deserialization input in corrupt.(Microsoft.SqlServerManagement.Sdk.Sfc)

    'None' is an invalid XMLNodeType. Line 103, postion 21. (System.XML)


  13. Tom says:

    Anyone who runs into this same problem, you do need to remove the passwords from the file. It imported fine for me (using the workaround) after doing that.

  14. SQLMan says:

    This was written in 2008.  Here it is 2014 and this solution does not work, nor any MS Updates (that I can find) to resolve it.

    Welcome to MicroShaft.

  15. Nikolay says:

    Thanks, deleting passwords from SQL2005 RegSrvr.xml helped me to import servers into MS SQL Server 2014

  16. Bemo says:

    very very thanks

    the import file was succeeded with no password