Risoluzione dei problemi nell'indicizzazione full-textTroubleshoot Full-Text Indexing

In questo argomento si applica a: SìSQL ServerSìDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Risoluzione degli errori nell'indicizzazione full-textTroubleshoot Full-Text Indexing Failures

Durante il popolamento o la gestione di un indice full-text, l'indicizzatore full-text potrebbe non eseguire correttamente l'indicizzazione di una o più righe per i motivi descritti di seguito.While populating or maintaining a full-text index, the full-text indexer, for reasons described below, might fail to index one or more rows. Questi errori a livello di riga non impediscono il completamento del popolamento.These row-level errors do not prevent the population from completing. L'indicizzatore ignora queste righe, pertanto non sarà possibile recuperare il contenuto di tali righe tramite query.The indexer skips these rows, which means that you are not able to query for content contained in these rows.

È possibile che si verifichino errori di indicizzazione nelle situazioni seguenti.Indexing failures can occur when:

  • Quando l'indicizzatore non è in grado di trovare o caricare un componente filtro o word breaker.The indexer cannot find or load a filter or word breaker component. Questo errore può verificarsi se la riga della tabella include contenuto o un formato di documento in una lingua non registrata con l'istanza di SQL ServerSQL ServerThis failure can occur if the table row contains a document format or content in a language that has not been registered with the instance of SQL ServerSQL Server. oppure se il componente filtro o word breaker registrato non è stato firmato o non ha superato il controllo della firma durante il caricamento.This failure can also happen if the registered word breaker or filter component was not signed or failed signature verification when it was being loaded.

  • Quando un componente, ad esempio un word breaker o un filtro, restituisce un errore all'indicizzatore.A component, such as a word breaker or filter, fails and returns an error to the indexer. Questa situazione può verificarsi se il documento indicizzato è danneggiato e il filtro non è in grado di estrarre il testo del documentoThis can happen if the document being indexed is corrupt and the filter is unable to extract text from the document. oppure quando un componente non è in grado di gestire il contenuto di una singola riga oltre una determinata dimensione, a causa di limiti di memoria nell'host del daemon di filtri (fdhost.exe).This can also occur when a component is unable to handle the content of a single row above a certain size, due to memory limits on the full-text filter daemon host (fdhost.exe).

    Per ogni errore a livello di riga, nel log di tipo ricerca per indicizzazione vengono inserite informazioni sul motivo dell'errore.For each row-level failure, the crawl log contains details on the reason for the failure. Il numero di errori è riepilogato al termine di un popolamento completo o incrementale.The error counts are summarized at the end of a full or incremental population.

    Esistono altri errori che possono influire sul processo di indicizzazione e impedire il completamento del popolamento.There are other failures that can impact the indexing process itself and prevent the population from completing:

  • L'indice full-text supera il limite del numero di righe che è possibile inserire in un catalogo full-text.The full-text index exceeds the limit for the number of rows that can be contained in a full-text catalog.

  • Un indice cluster o un indice di chiave full-text della tabella indicizzata viene danneggiato, eliminato o ricompilato.A clustered index or full-text key index on the table being indexed gets altered, dropped, or rebuilt.

  • Un errore hardware o del disco provoca il danneggiamento del catalogo full-text.A hardware failure or disk corruption results in the corruption of the full-text catalog.

  • Un gruppo di file contenente la tabella indicizzata full-text passa alla modalità offline o viene impostato in sola lettura.A file group that contains the table being full-text indexed goes offline, or is made read-only.

    È consigliabile visualizzare il log di tipo ricerca per indicizzazione al termine di tutte le operazioni di popolamento dell'indice full-text significative o quando il popolamento non risulta completato.You should view the crawl log at the end of any significant full-text index population operation, or when you find that a population did not complete.

Componenti non firmatiUnsigned Components

Per impostazione predefinita, l'indicizzatore full-text richiede la firma dei filtri e dei word breaker caricati.By default, the full-text indexer requires the filters and word breakers that it loads to be signed. Se tali componenti non sono firmati, ad esempio in alcuni casi di installazione di componenti personalizzati, è necessario configurare l'indicizzatore full-text in modo che ignori il controllo della firma.If they are not signed, which is the case sometimes when custom components are installed, you must configure the full-text indexer to ignore signature verification.

Importante

Questa impostazione rende tuttavia l'istanza di SQL ServerSQL Server meno sicura.Ignoring signature verification makes the instance of SQL ServerSQL Server less secure. È consigliabile firmare tutti i componenti implementati o assicurarsi che tutti i componenti acquistati siano firmati.We recommend that you sign any components that you implement or ensure that any components that you acquire are signed. Per informazioni sulle firme dei componenti, vedere sp_fulltext_service (Transact-SQL).For information about signing components, see sp_fulltext_service (Transact-SQL).

Stato incoerente di un indice full-text dopo il ripristino del log delle transazioniFull-Text Index in Inconsistent State after Transaction Log Restored

Durante il ripristino del log delle transazioni di un database, è possibile che venga visualizzato un avviso che indica che lo stato dell'indice full-text non è coerente.When restoring the transaction log of a database, you might see a warning indicating that the full-text index is not in a consistent state. Questo accade perché l'indice full-text di una tabella è stato modificato dopo il backup del database.The reason for this is that the full-text index on a table was modified after the database was backed up. Per riportare l'indice full-text a uno stato coerente, è necessario eseguire un popolamento completo (ricerca per indicizzazione) della tabella.To bring the full-text index to a consistent state, you must run a full population (crawl) on the table. Per altre informazioni sugli indici full-text, vedere Popolamento degli indici full-text.For more information, see Populate Full-Text Indexes.

Vedere ancheSee Also

ALTER FULLTEXT CATALOG (Transact-SQL) ALTER FULLTEXT CATALOG (Transact-SQL)
Popolamento degli indici full-textPopulate Full-Text Indexes