Condividi tramite


Replication Log Reader Agent

L'Agente di lettura registro di replica è un eseguibile che monitora il registro delle transazioni di ogni database configurato per la replica transazionale e copia le transazioni contrassegnate per la replica dal registro delle transazioni nel 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 [-?]   
-Publisherserver_name[\instance_name]   
-PublisherDBpublisher_database   
[-Continuous]  
[-DefinitionFiledef_path_and_file_name]  
[-Distributorserver_name[\instance_name]]  
[-DistributorLogindistributor_login]  
[-DistributorPassworddistributor_password]  
[-DistributorSecurityMode [0|1]]  
[-EncryptionLevel [0|1|2]]  
[-ExtendedEventConfigFileconfiguration_path_and_file_name]  
[-HistoryVerboseLevel [0|1|2]]  
[-KeepAliveMessageIntervalkeep_alive_message_interval_seconds]  
[-LoginTimeOutlogin_time_out_seconds]  
[-LogScanThresholdscan_threshold]  
[-MaxCmdsInTrannumber_of_commands]  
[-MessageIntervalmessage_interval]  
[-Outputoutput_path_and_file_name]  
[-OutputVerboseLevel [0|1|2|3|4]]  
[-PacketSizepacket_size]  
[-PollingIntervalpolling_interval]  
[-ProfileNameprofile_name]   
[-PublisherFailoverPartnerserver_name[\instance_name] ]  
[-PublisherSecurityMode [0|1]]  
[-PublisherLoginpublisher_login]  
[-PublisherPasswordpublisher_password]   
[-QueryTimeOutquery_time_out_seconds]  
[-ReadBatchSizenumber_of_transactions]   
[-ReadBatchThresholdread_batch_threshold]  
[-RecoverFromDataErrors]  

Argomenti

-?
Visualizza informazioni sull'utilizzo.

-Publisher server_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.

-PublisherDB publisher_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.

-DefinitionFile def_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.

-Distributor server_name[\instance_name]
Nome del database 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.

-DistributorLogin distributor_login
Nome dell'account di accesso del database di distribuzione.

-DistributorPassword distributor_password
Password del database di distribuzione.

-DistributorSecurityMode [ 0| 1]
Specifica la modalità di sicurezza del database di distribuzione. Il valore 0 indica la modalità di autenticazione di SQL Server (impostazione predefinita) e il 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.

Nota

Un certificato SSL valido è definito con un nome di dominio completo del Server SQL. Affinché l'agente possa connettersi correttamente quando si imposta - EncryptionLevel su 2, creare un alias nel Server SQL locale. Il parametro 'Nome alias' deve corrispondere al nome del server e il parametro 'Server' deve essere impostato sul nome completo dell'istanza di SQL Server.

Per altre informazioni, vedere replica di SQL Server Security.

-ExtendedEventConfigFile configuration_path_and_file_name
Consente di specificare il percorso e il nome del file di configurazione XML di eventi estesi. Il file di configurazione di eventi estesi consente di configurare sessioni e abilitare eventi per la traccia.

-HistoryVerboseLevel [ 0| 1| 2]
Consente di specificare 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 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.

-KeepAliveMessageInterval keep_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.

-LoginTimeOut login_time_out_seconds
Numero di secondi prima del timeout dell'accesso. Il valore predefinito è 15 secondi.

-LogScanThreshold scan_threshold
Solo per uso interno.

-MaxCmdsInTran number_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. Può inoltre ridurre la possibilità che si verifichino contese nel server di distribuzione e 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 le pubblicazioni non SQL Server. Per ulteriori informazioni, vedere la sezione "Configurazione del processo del set di transazioni" in Performance Tuning for Oracle Publishers.

-MessageInterval message_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.

-Output output_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 (impostazione predefinita) 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.

-PacketSize packet_size
Dimensioni del pacchetto, in byte. Il valore predefinito è 4096 byte.

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

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

-PublisherFailoverPartner server_name[\instance_name]
Specifica l'istanza partner di failover di SQL Server che partecipa a una sessione di mirroring del database con il database di pubblicazione. Per altre informazioni, vedere Mirroring e replica del database (SQL Server).

-PublisherSecurityMode [ 0| 1]
Specifica la modalità di sicurezza del server di pubblicazione. Il valore 0 indica l'autenticazione di SQL Server (impostazione predefinita) e il valore 1 indica la modalità di autenticazione di Windows.

-PublisherLogin publisher_login
Nome dell'account di accesso del server di pubblicazione.

-PublisherPassword publisher_password
Password del server di pubblicazione.

-QueryTimeOut query_time_out_seconds
Numero di secondi prima del timeout della query. Il valore predefinito è 1800 secondi.

-ReadBatchSize number_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.

-ReadBatchThreshold number_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:

Importante

Se SQL Server Agent è stato installato per l'esecuzione con un account di sistema locale anziché con un account utente di dominio (impostazione predefinita), il servizio può accedere solo al computer locale. Se l'agente di lettura log eseguito in SQL Server Agent è configurato per l'uso della modalità di autenticazione di Windows quando accede a SQL Server, l'agente di lettura log ha esito negativo. L'impostazione predefinita è Autenticazione di SQL Server. Per informazioni sulla modifica degli account di sicurezza, vedere View and Modify Replication Security Settings.

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.

Cronologia delle modifiche

Contenuto aggiornato
Aggiunta del parametro -ExtendedEventConfigFile .

Vedi anche

Amministrazione dell'agente di replica