La latenza di una replica transazionale è elevata in SQL Server 2005, quando il valore della proprietà "Dimensioni iniziali" e il valore della proprietà per l'aumento automatico sono di piccole dimensioni

Sintomi

Si consideri il seguente scenario. In Microsoft SQL Server 2005, si crea una replica transazionale. Per i file registro delle transazioni del database di pubblicazione, il valore della proprietà Dimensione iniziale e il valore della proprietà per l'aumento automatico sono ridotte. In questo scenario, la latenza della replica transazionale è alta.

Per ulteriori informazioni su come misurare la latenza di una replica transazionale, visitare il seguente sito Web Microsoft Developer Network (MSDN):Inoltre, quando si sincronizza una sottoscrizione con la pubblicazione, viene visualizzato il seguente messaggio di errore in stato nella finestra di dialogo Visualizza stato sincronizzazione :
Prestazioni critiche.

Causa

Questo problema si verifica perché vengono generati molti file di log virtuali. Il processo di lettura log deve eseguire la scansione di ogni file di log virtuale per le transazioni contrassegnate per la replica. Per visualizzare questo comportamento, le prestazioni della procedura sp_replcmds memorizzati di tracciatura. Lettura dei log utilizzata sp_replcmds la stored procedure per eseguire la scansione di file di log virtuali e per leggere le transazioni contrassegnate per la replica dal processo.

Per ulteriori informazioni sugli effetti delle prestazioni del file di log virtuali, visitare il seguente sito Web MSDN:

Soluzione alternativa

Per risolvere questo problema, attenersi alla seguente procedura:
  1. Aggiungere un file di registro delle transazioni al database di pubblicazione. Il file di registro delle transazioni deve soddisfare i seguenti requisiti:
    • La dimensione iniziale è di grandi dimensioni.
    • Il valore della proprietà per l'aumento automatico è grande.
    Per aggiungere un file di registro delle transazioni al database di pubblicazione, utilizzare l'istruzione ALTER DATABASE con la clausola ADD FILE di registro. Per ulteriori informazioni sull'istruzione ALTER DATABASE, visitare il seguente sito Web MSDN:
  2. Utilizzare l'istruzione DBCC SHRINKFILE per ridurre le dimensioni del file registro delle transazioni che contengono molti file di log virtuali. Per ulteriori informazioni, fare clic sul numero riportato di seguito per visualizzare l'articolo della Microsoft Knowledge Base:

    907511 come utilizzare l'istruzione DBCC SHRINKFILE per compattare il file di registro delle transazioni in SQL Server 2005

Stato

Microsoft ha confermato che questo è un problema dei prodotti Microsoft elencati nella sezione "Si applica a".

Ulteriori informazioni

Quando si crea un database che verrà utilizzato come un database di pubblicazione in una replica transazionale, si consiglia di specificare una dimensione iniziale elevata e un valore della proprietà per l'aumento automatico di grandi dimensioni. Le dimensioni iniziali devono prevedere periodi di picco. Periodi di picco includono periodi in cui il batch di grandi dimensioni impedisce il registro cancellazione presso il successivo backup del log delle transazioni. Questo comportamento è causato da transazioni che sono ancora nel processo di replica. Impostare avvisi per il file di log quando si avvicina a uno stato completo. Inoltre, eseguire aumento manualmente quando è necessario controllare le dimensioni e temporizzazione. Aumento automatico delle dimensioni non deve essere il metodo principale utilizzato per gestire le dimensioni del file.
Proprietà

ID articolo: 949523 - Ultima revisione: 31 gen 2017 - Revisione: 1

Feedback