Problembeschreibung
Nachdem Sie Ihre Organisation mithilfe des Bereitstellungs-Managers importiert haben, funktioniert ein Systemauftrag von FullTextCatalogIndex in der importierten Organisation nicht mehr und bleibt in einem Wartezustand. Wenn Sie KB977867angewendet haben, liegt das Problem nicht vor.
Ursache
In der Importorganisation wird der Volltextkatalog nicht umbenannt, und die importierte Organisationsdatenbank hat den Volltextkatalog gespeichert, der die GUID der gesicherten Organisation enthält. System Aufträge versuchen, die Volltextkatalog Aktualisierung auszuführen, die die aktuelle Organisations-ID enthält ftcat_documentindex_<OrganizationIdGuidValue> und dann in den Wartestatus wechselt.
Fehlerbehebung
Um dieses Problem zu beheben, führen Sie das folgende SQL-Skript in ihrer Organisationsdatenbank aus:
DECLARE @ID AS NVARCHAR(128), @OLDNAME AS NVARCHAR(128), @NEWNAME AS NVARCHAR(128), @LINES AS INTSELECT @OLDNAME = name FROM SYS.FULLTEXT_CATALOGS WHERE name LIKE 'ftcat_documentindex_%'SELECT @ID = OrganizationId FROM OrganizationSET @ID = REPLACE(@ID,'-','')SET @ID = LOWER(@ID)SET @NEWNAME = 'ftcat_documentindex_' + @IDPRINT 'GUID IS : '+@IDPRINT '---------------------'PRINT 'OLDNAME IS : '+@OLDNAMEPRINT '---------------------'PRINT 'NEWNAME IS : '+@NEWNAMEPRINT '---------------------'IF @OLDNAME!=@NEWNAMEBEGIN EXEC sp_fulltext_database 'enable' -- Drop exsiting full text catalog PRINT 'START DROPPING EXSITING FULL TEXT CATALOG ..' PRINT '---------------------' IF EXISTS (SELECT * FROM sys.fulltext_indexes fti WHERE fti.object_id = OBJECT_ID(N'[dbo].[DocumentIndex]')) BEGIN ALTER FULLTEXT INDEX ON [dbo].[DocumentIndex] DISABLE END IF EXISTS (SELECT * FROM sys.fulltext_indexes fti WHERE fti.object_id = OBJECT_ID(N'[dbo].[DocumentIndex]')) BEGIN DROP FULLTEXT INDEX ON [dbo].[DocumentIndex] END SELECT @LINES = COUNT(*) FROM sysfulltextcatalogs ftc WHERE ftc.name = @OLDNAME IF @LINES > 0 BEGIN EXEC sp_fulltext_catalog @OLDNAME,'drop' END PRINT 'DROPPING COMPLETE ..' PRINT '---------------------' -- Add new full text catalog PRINT 'START ADDING EXSITING FULL TEXT CATALOG ..' PRINT '---------------------' EXEC sp_fulltext_catalog @NEWNAME,'create' EXEC sp_fulltext_table 'documentindex', 'create', @NEWNAME, 'cndx_PrimaryKey_DocumentIndex' EXEC sp_fulltext_column 'documentindex', 'Title', 'add' EXEC sp_fulltext_column 'documentindex', 'KeyWords', 'add' EXEC sp_fulltext_column 'documentindex', 'SearchText', 'add' EXEC sp_fulltext_table 'documentindex', 'activate' EXEC sp_fulltext_catalog @NEWNAME, 'start_full' PRINT 'ADDING COMPLETE ..'ENDELSEPRINT 'THE FULL TEXT CATALOG HAS BEEN UPDATED ..'