Sql-server – Recover registered servers in SQL Server Management Studio 2012

sql-server-2008-r2sql-server-2012

My computer died so it's be reinstalled.

Previously I had SQL Server 2008 R2 installed. On the new system I have SQL Server 2012.

I have the old RegSrvr.xml file (that contains the list of registered SQL Servers).

How do I get the server list from 2008 R2 into 2012?

Update:
When doing Local Server Groups -> Tasks -> Import and choose the RegSrvr.xml file, click OK it's says "The import was successfull" – but no servers or folders has been added and the RegSrvr.xml file for the 2012 installation has not been modified

Sample from xml file

 <document>
  <docinfo>
    <aliases>
      <alias>/RegisteredServersStore/ServerGroup/DatabaseEngineServerGroup/ServerGroup/Company1/RegisteredServer/stage</alias>
    </aliases>
    <sfc:version DomainVersion="1" />
  </docinfo>
  <data>
    <RegisteredServers:RegisteredServer xmlns:RegisteredServers="http://schemas.microsoft.com/sqlserver/RegisteredServers/2007/08" xmlns:sfc="http://schemas.microsoft.com/sqlserver/sfc/serialization/2007/08" xmlns:sml="http://schemas.serviceml.org/sml/2007/02" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <RegisteredServers:Parent>
        <sfc:Reference sml:ref="true">
          <sml:Uri>/RegisteredServersStore/ServerGroup/DatabaseEngineServerGroup/ServerGroup/Company1</sml:Uri>
        </sfc:Reference>
      </RegisteredServers:Parent>
      <RegisteredServers:Name type="string">stage.server.dk</RegisteredServers:Name>
      <RegisteredServers:Description type="string" />
      <RegisteredServers:ServerName type="string">stage.server.dk</RegisteredServers:ServerName>
      <RegisteredServers:UseCustomConnectionColor type="boolean">false</RegisteredServers:UseCustomConnectionColor>
      <RegisteredServers:CustomConnectionColorArgb type="int">-986896</RegisteredServers:CustomConnectionColorArgb>
      <RegisteredServers:ServerType type="ServerType">DatabaseEngine</RegisteredServers:ServerType>
      <RegisteredServers:ConnectionStringWithEncryptedPassword type="string">server=stage.server.dk;uid=username;password=AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAegY4QOvPGEGcK2Xdr+jDjQQAAAACAAAAAAADZgAAwAAAABAAAADesdxAGO4GO879z1yS2DZeAAAAAASAAACgAAAAEAAAAGAvgtRJfPRL/puHnREmKu8YAAAAUxRIQVDZHywb7rOYL9MRqG0B2Jvi8kyfFAAAANs53tVPbVux2j56oRU/2oGtmQc9;pooling=false;packet size=4096;multipleactiveresultsets=false</RegisteredServers:ConnectionStringWithEncryptedPassword>
      <RegisteredServers:CredentialPersistenceType type="CredentialPersistenceType">PersistLoginNameAndPassword</RegisteredServers:CredentialPersistenceType>
    </RegisteredServers:RegisteredServer>
  </data>
</document>

Best Answer

If your RegSrvr.xml contains a "password=....;" in <RegisteredServers:ConnectionStringWithEncryptedPassword> section, replace ";uid=...;password=...;" with ";trusted_connection=true;"

In the same file, replace:

<RegisteredServers:CredentialPersistenceType type="CredentialPersistenceType">PersistLoginNameAndPassword</RegisteredServers:CredentialPersistenceType>

with:

<RegisteredServers:CredentialPersistenceType type="CredentialPersistenceType">PersistLoginName</RegisteredServers:CredentialPersistenceType>

Now the server registration will try to use Windows Authentication. Once the Registered Servers are loaded, you can go back and edit the registrations to use your SQL Authentication information.