Condividi tramite


Agente lettura log repliche

Agente lettura log repliche è un eseguibile che consente di monitorare il log delle transazioni di tutti i database configurati per la replica transazionale e di copiare le transazioni contrassegnate per la replica dal log delle transazioni al database di distribuzione.

Nota

I parametri possono essere specificati in qualsiasi ordine. Quando i parametri facoltativi non vengono specificati, vengono utilizzati i valori predefiniti basati sul profilo agente predefinito.

Sintassi

logread [-?] 
-Publisher server_name[\instance_name] 
-PublisherDB publisher_database 
[-Continuous]
[-DefinitionFile def_path_and_file_name]
[-Distributor server_name[\instance_name]]
[-DistributorLogin distributor_login]
[-DistributorPassword distributor_password]
[-DistributorSecurityMode [0|1]]
[-EncryptionLevel [0|1|2]]
[-HistoryVerboseLevel [0|1|2]]
[-KeepAliveMessageInterval keep_alive_message_interval_seconds]
[-LoginTimeOut login_time_out_seconds]
[-LogScanThreshold scan_threshold]
[-MaxCmdsInTran number_of_commands]
[-MessageInterval message_interval]
[-Output output_path_and_file_name]
[-OutputVerboseLevel [0|1|2|3|4]]
[-PacketSize packet_size]
[-PollingInterval polling_interval]
[-ProfileName profile_name] 
[-PublisherFailoverPartner server_name[\instance_name] ]
[-PublisherSecurityMode [0|1]]
[-PublisherLogin publisher_login]
[-PublisherPassword publisher_password] 
[-QueryTimeOut query_time_out_seconds]
[-ReadBatchSize number_of_transactions] 
[-ReadBatchThreshold read_batch_threshold]
[-RecoverFromDataErrors]

Argomenti

  • -?
    Visualizza le informazioni sull'utilizzo.

  • -Publisherserver_name[**\instance_name]
    Nome del server di pubblicazione. Specificare server_name per l'istanza predefinita di Microsoft SQL Server in tale server. Specificare server_name
    \**instance_name per un'istanza denominata di SQL Server in tale server.

  • -PublisherDBpublisher_database
    Nome del database del server di pubblicazione.

  • -Continuous
    Specifica se l'agente tenta di eseguire continuamente il polling delle transazioni replicate. Se specificato, l'agente esegue il polling delle transazioni replicate dall'origine in base agli intervalli di polling, anche se non vi sono transazioni in sospeso.

  • -DefinitionFiledef_path_and_file_name
    Percorso del file di definizione dell'agente. Un file di definizione dell'agente contiene argomenti della riga di comando per l'agente. Il contenuto del file viene analizzato come file eseguibile. Utilizzare virgolette doppie (") per specificare valori dell'argomento contenenti caratteri arbitrari.

  • -Distributorserver_name[**\instance_name]
    Nome del server di distribuzione. Specificare server_name per l'istanza predefinita di SQL Server in tale server. Specificare server_name
    \**instance_name per un'istanza denominata di SQL Server in tale server.

  • -DistributorLogindistributor_login
    Nome dell'account di accesso del server di distribuzione.

  • -DistributorPassworddistributor_password
    Password del server di distribuzione.

  • -DistributorSecurityMode [ 0| 1]
    Specifica la modalità di protezione del server di distribuzione. Un valore 0 indica la modalità di autenticazione di SQL Server (impostazione predefinita), mentre un valore 1 indica la modalità di autenticazione di Microsoft Windows.

  • -EncryptionLevel [ 0 | 1 | 2 ]
    Livello di crittografia SSL (Secure Sockets Layer) utilizzato dall'agente di lettura log quando vengono stabilite le connessioni.

    Valore di EncryptionLevel

    Descrizione

    0

    Specifica che SSL non viene utilizzato.

    1

    Specifica che SSL viene utilizzato, ma l'agente non verifica che il certificato server SSL sia firmato da un'autorità emittente attendibile.

    2

    Specifica che SSL viene utilizzato e che il certificato viene verificato.

    Per ulteriori informazioni, vedere Panoramica della protezione (replica).

  • -HistoryVerboseLevel [ 0| 1| 2]
    Specifica la quantità di cronologia registrata durante un'operazione dell'agente di lettura log. Per ridurre al minimo l'effetto della registrazione della cronologia sulle prestazioni, selezionare 1.

    Valore di HistoryVerboseLevel

    Descrizione

    0

     

    1

    Valore predefinito. Aggiorna sempre un messaggio di cronologia precedente con lo stesso stato (avvio, avanzamento, esito positivo e così via). Se non è presente un record precedente con lo stesso stato, inserisce un nuovo record.

    2

    Inserisce nuovi record della cronologia, a meno che il record sia per eventi come messaggi inattivi o messaggi di processo con esecuzione prolungata, nel qual caso aggiorna i record precedenti.

  • -KeepAliveMessageIntervalkeep_alive_message_interval_seconds
    Numero di secondi prima che il thread per la cronologia controlli se una delle connessioni esistenti è in attesa di una risposta dal server. Questo valore può essere ridotto per evitare che l'agente di controllo contrassegni l'agente di lettura log come sospetto in caso di esecuzione di un batch con esecuzione prolungata. Il valore predefinito è 300 secondi.

  • -LoginTimeOutlogin_time_out_seconds
    Numero di secondi prima del timeout di accesso. Il valore predefinito è 15 secondi.

  • -LogScanThresholdscan_threshold
    Solo per uso interno.

  • -MaxCmdsInTrannumber_of_commands
    Specifica il numero massimo di istruzioni raggruppate in una transazione durante la scrittura dei comandi nel database di distribuzione da parte dell'agente di lettura log. L'utilizzo di questo parametro consente all'agente di lettura log e all'agente di distribuzione di dividere le transazioni di grandi dimensioni, ovvero costituite da molti comandi, nel server di pubblicazione in diverse transazioni più piccole quando applicate al Sottoscrittore. Specificando questo parametro è inoltre possibile ridurre la possibilità che si verifichino contese nel server di distribuzione, nonché diminuire la latenza tra il server di pubblicazione e il Sottoscrittore. Dal momento che la transazione originale viene applicata in unità più piccole, il Sottoscrittore può accedere alle righe di una vasta transazione logica del server di pubblicazione prima della fine della transazione originale, violando la rigida atomicità transazionale. Il valore predefinito è 0, che consente di mantenere i limiti delle transazioni del server di pubblicazione.

    Nota

    Questo parametro viene ignorato per pubblicazioni non SQL Server. Per ulteriori informazioni, vedere la sezione "Configurazione del processo del set di transazioni" in Ottimizzazione delle prestazioni per i server di pubblicazione Oracle.

  • -MessageIntervalmessage_interval
    Intervallo di tempo utilizzato per la registrazione della cronologia. Un evento della cronologia viene registrato quando viene raggiunto il valore di MessageInterval dopo la registrazione dell'ultimo evento della cronologia.

    Se nell'origine non vi sono transazioni replicate disponibili, tramite l'agente viene inviato al server di distribuzione un messaggio che segnala l'assenza di transazioni. Questa opzione specifica per quanto tempo l'agente aspetta prima di inviare un altro messaggio di assenza di transazioni. Gli agenti inviano sempre un messaggio di assenza di transazioni quando rilevano che nell'origine non vi sono transazioni disponibili dopo aver elaborato in precedenza transazioni replicate. Il valore predefinito è 60 secondi.

  • -Outputoutput_path_and_file_name
    Percorso del file di output dell'agente. Se non viene specificato il nome file, l'output viene inviato alla console. Se il nome file specificato esiste già, l'output viene aggiunto al file.

  • -OutputVerboseLevel [ 0| 1| 2 | 3 | 4 ]
    Specifica se l'output deve essere dettagliato.

    Valore

    Descrizione

    0

    Vengono stampati solo i messaggi di errore.

    1

    Vengono stampati tutti i messaggi di report di stato dell'agente.

    2 (predefinito)

    Vengono stampati tutti i messaggi di errore e i messaggi di report di stato dell'agente.

    3

    Vengono stampati i primi 100 byte di ogni comando replicato.

    4

    Vengono stampati tutti i comandi replicati.

    I valori 2-4 sono utili quando si esegue il debug.

  • -PacketSizepacket_size
    Dimensioni del pacchetto, in byte. Il valore predefinito è 4096 byte.

  • -PollingIntervalpolling_interval
    Frequenza, in secondi, di esecuzione di query sul log per le transazioni replicate. Il valore predefinito è 5 secondi.

  • -ProfileNameprofile_name
    Specifica un profilo agente da utilizzare per i parametri dell'agente. Se ProfileName è NULL, il profilo agente è disattivato. Se ProfileName non viene specificato, viene utilizzato il profilo predefinito per il tipo di agente. Per informazioni, vedere Profili degli agenti di replica.

  • -PublisherFailoverPartnerserver_name[**\**instance_name]
    Specifica l'istanza del partner di failover di SQL Server che partecipa in una sessione di mirroring del database con il database di pubblicazione. Per ulteriori informazioni, vedere Replica e mirroring del database.

  • -PublisherSecurityMode [ 0| 1]
    Specifica la modalità di protezione del server di pubblicazione. Un valore 0 indica la modalità di autenticazione di SQL Server (impostazione predefinita), mentre un valore 1 indica la modalità di autenticazione di Windows.

  • -PublisherLoginpublisher_login
    Nome dell'account di accesso del server di pubblicazione.

  • -PublisherPasswordpublisher_password
    Password del server di pubblicazione.

  • -QueryTimeOutquery_time_out_seconds
    Numero di secondi prima del timeout delle query. Il valore predefinito è 1800 secondi.

  • -ReadBatchSizenumber_of_transactions
    Numero massimo di transazioni lette dal log delle transazioni del database di pubblicazione per ciclo di elaborazione, con un valore predefinito di 500. L'agente continuerà a leggere transazioni nei batch fino a quando viene completata la lettura di tutte le transazioni nel log. Questo parametro non è supportato per i server di pubblicazione Oracle.

  • -ReadBatchThresholdnumber_of_commands
    Numero di comandi di replica da leggere dal log delle transazioni prima del rilascio al Sottoscrittore da parte dell'agente di distribuzione. Il valore predefinito è 0. Se questo parametro non è specificato, l'agente di lettura log leggerà fino alla fine del log o fino al numero specificato in -ReadBatchSize (numero di transazioni).

  • -RecoverFromDataErrors
    Specifica che l'esecuzione dell'agente di lettura continua anche nel caso in cui vengano rilevati errori nei dati di colonna pubblicati da un server di pubblicazione non SQL Server. Per impostazione predefinita, tali errori comportano l'interruzione dell'agente di lettura log. Quando si utilizza -RecoverFromDataErrors, i dati di colonna erronei vengono replicati come NULL o come valore non Null appropriato e i messaggi di avviso vengono registrati nella tabella MSlogreader_history. Questo parametro è supportato solo per i server di pubblicazione Oracle.

Osservazioni

Nota importanteImportante

Se SQL Server Agent è stato installato per l'esecuzione con un account di sistema locale anziché un account utente di dominio (impostazione predefinita), il servizio può accedere solo al computer locale. Se l'agente di lettura log in esecuzione in SQL Server Agent è configurato per l'utilizzo della modalità di autenticazione di Windows durante l'accesso a SQL Server, l'agente di lettura log si interrompe. L'impostazione predefinita prevede l'autenticazione di SQL Server. Per informazioni sulla modifica degli account di protezione, vedere Procedura: Visualizzazione e modifica delle impostazioni di protezione della replica (programmazione Transact-SQL della replica).

Per avviare l'agente di lettura log, eseguire logread.exe dal prompt dei comandi. Per informazioni, vedere Concetti di base relativi ai file eseguibili dell'agente di replica.