Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo illustra come risolvere l'errore 6528 che si verifica quando si installa un aggiornamento cumulativo (CU) o un Service Pack (SP) per Microsoft SQL Server. L'errore si verifica quando vengono eseguiti gli script di aggiornamento del database.
Sintomi
Quando si applica un cu o un sp per SQL Server, si nota che il programma di installazione segnala uno dei messaggi di errore seguenti nel log degli errori di SQL Server:
SQL server failed in 'Script level upgrade' with the following error:
Error: 50000, Severity: 16, State: 127.
Cannot drop the assembly 'ISSERVER', because it does not exist or you do not have permission.
Error: 50000, Severity: 16, State: 127.
Cannot drop the assembly 'ISSERVER', because it does not exist or you do not have permission.
Creating function internal.is_valid_name
Error: 6528, Severity: 16, State: 1.
Assembly 'ISSERVER' was not found in the SQL catalog of database 'SSISDB'.
Error: 912, Severity: 21, State: 2.
Script level upgrade for database 'master' failed because upgrade step 'ISServer_upgrade.sql' encountered error 6528, state 1, severity 16. This is a serious error condition which might interfere with regular operation and the database will be taken offline. If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting. Examine the previous error log entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion.
Error: 3417, Severity: 21, State: 3.
Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it. For more information about how to rebuild the master database, see SQL Server Books Online.
SQL Server shutdown has been initiated.
Causa
Questo problema può verificarsi perché l'istanza di SQL Server in cui si tenta di applicare un cu o un sp è mancante assembly ISSERVER.
Per altre informazioni sugli script di aggiornamento del database eseguiti durante un'installazione cu o sp, vedere Risolvere gli errori di script di aggiornamento durante l'applicazione di un aggiornamento.
Risoluzione
Per risolvere il problema, seguire questa procedura:
Avviare SQL Server con il flag di traccia 902.
Controllare se l'assembly
ISSERVERsi trova nel databaseSSISDBusando la query seguente:Use SSISDB GO SELECT * FROM sys.assemblies WHERE name = 'ISSERVER'In alternativa, è possibile controllarlo espandendo Database>SSISDB>Programmability>Assemblies>ISSERVER in SQL Server Management Studio (SSMS).
Controllare il percorso C:\Programmi\Microsoft SQL Server\<VersionNumber>\DTS\Bin per verificare se l'assembly Microsoft.SqlServer.IntegrationServices.Server.dll è presente nella cartella binaria SQL.
Se l'assembly si trova in tale cartella ma manca come voce nella vista sys.assemblies , ricrearla usando la query seguente:
DECLARE @asm_bin varbinary(max); SELECT @asm_bin = BulkColumn FROM OPENROWSET (BULK N'C:\Program Files\Microsoft SQL Server\<VersionNumber>\DTS\Binn\Microsoft.SqlServer.IntegrationServices.Server.dll',SINGLE_BLOB) AS dll CREATE ASSEMBLY ISSERVER FROM @asm_bin WITH PERMISSION_SET = UNSAFE ALTER DATABASE SSISDB SET TRUSTWORTHY ONQuesta volta l'assembly
ISSERVERè presente.Rimuovere il flag di traccia 902 e avviare i servizi.