2011-04-21 21 views
9

He instalado SQL Server 2008 R2 en una nueva PC. Todo estaba funcionando bien hasta que comencé a exportar servidores registrados desde el estudio de administración de SQL Server 2008 R2 que existen en mi vieja PC. Cuando importé uno de los servidores registrados a mi nueva instalación, obtuve el error "clave no válida para usar en el estado especificado".SQL Server 2008 R2 - excepción no controlada de .NET Framework

Ahora cada vez que trato de abrir servidores registrados en la nueva instalación obtengo un .NET framework Excepción no controlada con el mismo mensaje. El área del servidor registrado está completamente vacía. No hay forma de agregar servidores registrados ahora. He intentado reinstalar SQL pero el error permanece. Obviamente está relacionado con el proceso de importación. Quizás algo se corrompió. ¿Alguien sabe cómo arreglarlo?

Editar: Detalles de excepción de diálogo

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box. 

************** Exception Text ************** 
System.Security.Cryptography.CryptographicException: Key not valid for use in specified state. 

    at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServer.ProtectData(String input, Boolean encrypt) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServer.get_SecureConnectionString() 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServer.get_ConnectionString() 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServer.get_ServerName() 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerTree.AddRegisteredServerNode(RegisteredServer regSrv, TreeNodeCollection nodes) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerTree.AddServerGroupToNodeCollection(ServerGroup group, TreeNodeCollection nodes, Boolean createRecursively) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerTree.AddServerGroupToNodeCollection(ServerGroup group, TreeNodeCollection nodes, Boolean createRecursively) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerTree.Initialize(ServerGroup localServerGroup, ServerType serverType, IServerType connDlgServerType, AddCentralManagementServerDelegate onAddCentralManagementServer, AddNewCentralManagementServerDelegate onAddNewCentralManagementServer, DeleteCentralManagementServerDelegate onDeleteCentralManagementServer, GetServiceProviderDelegate onGetService) 
    at Microsoft.SqlServer.Management.RegisteredServers.RegisteredServerControl.RegisteredServerControl_Load(Object sender, EventArgs e) 
    at System.Windows.Forms.UserControl.OnLoad(EventArgs e) 
    at System.Windows.Forms.UserControl.OnCreateControl() 
    at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) 
    at System.Windows.Forms.Control.CreateControl() 
    at System.Windows.Forms.Control.WmShowWindow(Message& m) 
    at System.Windows.Forms.Control.WndProc(Message& m) 
    at System.Windows.Forms.ScrollableControl.WndProc(Message& m) 
    at System.Windows.Forms.ContainerControl.WndProc(Message& m) 
    at System.Windows.Forms.UserControl.WndProc(Message& m) 
    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) 
    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) 
+0

http://stackoverflow.com/a/6476025/2990378 - esta solución funcionó para mí – MHS

Respuesta

15

suena como si algo en su perfil de Windows (por ejemplo Usuarios/[nombre de usuario]/AppData/Roaming en Windows 7). ¿Has intentado borrar las entradas de SQL Server de eso?

Alan

+1

Gracias Alan. Spot on. El archivo ofensivo era RegSrvr.xml. Cambié el nombre y reinicié SQL Server. El error se ha ido. ¡Continuaré agregando mis servidores registrados manualmente! – user718982

+0

Funcionó para mí también, pero el mío estaba en '\ Users \ [Username] \ AppData \ Microsoft \ Microsoft SQL Server'. Además, debido a la forma en que está configurado el dominio en el que estoy, no estaba en mi máquina local, sino en una unidad de red. – Molomby

+0

Gracias Alan, Esto funcionó para mí también después de borrar el RegSrvr.xml – zahirhas

2

que tenían una situación muy similar. Exactas mismas observaciones, pero no tuvo nada que ver con la importación. Hice una reinstalación completa de Windows 7 y SQL (edición de desarrollador). Recuperé mi perfil antes de la reconstrucción, por lo que no estaba sincronizado con la instalación. Eliminé C: \ Users \ John \ AppData \ Roaming \ Microsoft \ Microsoft SQL Server y el problema desapareció.

5

El archivo RegSrvr.xml también fue el problema para mí. Pero en lugar de eliminar todo el archivo, lo edité para eliminar las cadenas de contraseñas encriptadas. Después de eso, Management Studio abrió bien con todos los servidores importados presentes.

+0

Brilliant! Esta es la solución. – mghaoui

+0

Del mismo modo, hice otra exportación de los registros de Sql Server Management Studio, pero la segunda vez especifiqué "No incluir nombres de usuario y contraseñas en el archivo de exportación". Luego eso importó la multa en mi nueva versión en lugar de dar un error. Por lo tanto, parece que algo va mal con la inclusión de contraseñas en el archivo de exportación SSMS. –

0

Una cosa más que comprobar: no puede importar definiciones exportadas en versiones anteriores de SQL Management Studio. Obtendrá el mismo error Key not valid for use, por ejemplo, exportar desde MSSMS2012 e intentar importar en MSSMS2008R2.

0

Una cosa más que comprobar, para mí fue porque no había suficiente espacio en disco en la unidad de SQL Server. Limpiar el espacio resolvió todo.

Cuestiones relacionadas