syncreplica

Esporta o importa i pacchetti di aggiornamento
Concetti correlati
Sincronizzazione della replica
Ripristino della replica del database persa
Risoluzione del conflitto di denominazione
Riferimenti correlati
describe
chmaster
mkorder
mkreplica
Pannello di controllo MultiSite
shipping.conf
shipping_server

Applicabilità

Prodotto Tipo di comando
MultiSite comando secondario multiutil
Piattaforma
UNIX
Windows

Riepilogo

  • Esportare un pacchetto di aggiornamento:
    sync/replica

    –exp/ort
    [ –cl/an nome-gruppo ] [ –site nome-sito ] –fam/ily nome-famiglia
    –u/ser nome utente [–p/assword ]  password [–max/size dimensione-pacchetto-massima
    [–lim/it num-pacchetti ] ]
    {     { –sh/ip| –fsh/ip }
    –wor/kdir directory [ –sc/lass classe-memorizzazione ]
    [–pex/pire data ]
    [–not/ify email ]
    | –out { nomep-file-pacchetto | nomep-area-gestione temporanea } }
    replica ...

  • Importare un pacchetto di aggiornamento:
    sync/replica

    –imp/ort
    [ –cl/an nome-gruppo ] [ –site nome-sito ] –fam/ily nome-famiglia
    –u/ser nome utente [ –p/assword] password
    { –rec/eive[ –sc/lass classe-memorizzazione ]
    | { nomep-file-pacchetto | nomep-area-gestione temporanea } ... }
    [ -plug/epoch ]

Descrizione

La sincronizzazione di una replica con una o più repliche di pari livello è un processo di tre fasi:

  1. In un sito, un comando syncreplica –export crea un pacchetto di aggiornamento che contiene le modifiche effettuale nella replica in quel sito (e forse anche altre repliche).
  2. Il pacchetto viene inviato ad uno o più siti diversi.
  3. In un altro sito, un comando syncreplica –import applica le modifiche nel pacchetto di aggiornamento alla replica dello stesso database. Questa operazione si verifica in tutti i siti che ricevono il pacchetto.

Contenuto di un pacchetto di aggiornamento:

  • Tutte le modifiche effettuate nella replica corrente dall'ultimo aggiornamento creato per le repliche di destinazione. (Le modifiche già inviate sono escluse dal pacchetto).
  • Le modifiche in altre repliche, che la replica corrente ha ricevuto nei pacchetti di aggiornamento precedenti da altre repliche, ma che non sono state ancora trasmesse alle repliche di destinazione.

In tutti i casi, syncreplica –export crea un pacchetto logico singolo di aggiornamento in tutte le destinazioni specificate; il pacchetto può essere utilizzato per aggiornare solo quelle repliche particolari.

Note sulla fase di esportazione

MultiSite è progettato per l'aggiornamento efficace delle repliche. syncreplica –export tenta di escludere le operazioni inviate precedentemente. (Tuttavia, non comporta alcun danno inviare un'operazione più volte alla stessa replica; la prima operazione viene importata e le operazioni identiche successive sono ignorate.)

syncreplica –export memorizza i file temporanei nella directory specificata con l'opzione –workdir. Questa directory non deve già esistere e viene eliminata in seguito alla creazione del pacchetto di esportazione.

Note sulla fase di importazione

Un pacchetto di aggiornamento viene applicato alle repliche appropriate associate al server di sincronizzazione che ha ricevuto il pacchetto. Non è necessario specificare le repliche particolari o le ubicazioni di memorizzazione.

Il processo di importazione si applica ai pacchetti di aggiornamenti nell'ordine corretto. Quindi, è possibile specificare i pacchetti in qualsiasi ordine sulla riga comandi.

La replica di database non è bloccata per le operazioni normali di database durante la fase di importazione, ma è bloccata per tutte le altre operazioni MultiSite.

Pacchetti ignorati

syncreplica –import non elabora nessun pacchetto di aggiornamento nelle situazioni seguenti:

  • Il pacchetto di aggiornamento contiene le modifiche che dipendono da altre modifiche che non sono state importate in questa replica. Questo solitamente, indica che un pacchetto di aggiornamento per questa replica non è stato inviato o è andato perso durante la trasmissione.
  • I problemi riscontrati durante l'elaborazione di un pacchetto fisico precedente in un pacchetto logico con parti multiple.

In questi casi, syncreplica –import visualizza un messaggio informativo.

Errori di aggiornamento e riproduzione dei pacchetti

In alcuni casi, syncreplica –import comincia ad applicare le operazioni ad una replica, ma non riesce restituendo un messaggio di errore. Ad esempio, un altro processo ha bloccato il database, provocando l'errore di importazione. Dopo avere sbloccato il database, è possibile eseguire syncreplica –import per elaborare nuovamente l'intero pacchetto di aggiornamento.

L'importazione di pacchetti di aggiornamento già elaborati correttamente non provoca alcun danno; la stessa modifica non verrà eseguita due volte.

Eliminazione dei pacchetti di aggiornamento

Se un singolo richiamo di syncreplica –import applica correttamente un pacchetto a tutte le repliche di destinazione associate con il server di sincronizzazione, il pacchetto di aggiornamento viene eliminato al completamento del comando. Se il pacchetto viene elaborato con più comandi syncreplica –import, esso non viene eliminato.

Attivazione degli hook

Gli hook di Rational ClearQuest non vengono attivati in risposta alle modifiche eseguite durante l'importazione del pacchetto.

Gestione dei conflitti di denominazione

syncreplica risolve i conflitti di denominazione tra gli oggetti creati in repliche diverse.

Aggiornamenti posticipati

syncreplica non informa gli utenti Rational ClearQuest sugli aggiornamenti alle repliche. Tutti gli utenti attivi visualizzano gli aggiornamenti entro pochi secondi, mediante le routine di polling database normali in Rational ClearQuest

Errore di gestione per malfunzionamenti della consegna del pacchetto

Se un pacchetto non può essere consegnato, esso viene inviato mediante la funzione di memorizzazione e inoltro al server di sincronizzazione per la replica di origine. Viene inviato un messaggio di posta all'amministratore di memorizzazione e inoltro. Questo si verifica dopo vari tentativi di consegna del pacchetto tutti non riusciti quando il tempo assegnato è scaduto; ciò si verifica anche quando l'host di destinazione è sconosciuto o il file di dati non esiste. Le impostazioni di configurazione di memorizzazione ed inoltro specificano il periodo di scadenza, l'indirizzo e-mail dell'amministratore e il programma di notifica.

Limitazioni

È necessario disporre dei privilegi di Super utente.

Opzioni ed argomenti: fase di esportazione

Specifica del gruppo, del sito e della famiglia

Valore predefinito
Gruppo: il primo gruppo replicato in questo sito. Se esiste più di un collegamento dbset registrato in questo host, –clan è obbligatorio.

Sito: il sito corrente. Se esiste più di un sito in questo host, –site è obbligatorio.

Famiglia: nessun valore predefinito; è necessario specificare una famiglia.

–cl/an nome-gruppo
Il nome del gruppo di replica.
–site nome-sito
Il nome del sito di replica.
–fam/ily nome-famiglia
La famiglia del database utente: il nome database fornito al database utente quando è stato creato.

Famiglia di repository di schemi: il nome della famiglia è MASTR.

Specifica di un nome utente e password

Valore predefinito
È necessario specificare un nome utente e una password.
–u/ser utente
Il nome dell'utente con privilegi di Super utente.
–p/assword password
La password associata all'utente specificato.

Specifica della dimensione del pacchetto di aggiornamento

Valore predefinito
Quando non viene specificata l'opzione –maxsize, il metodo di invio utilizzato determina la dimensione del pacchetto predefinito in queste modalità:
  • I pacchetti creati con –ship o –fship non sono maggiori della dimensione massima specificata nel file shipping.conf (UNIX) o nel Pannello di controllo MultiSite (Windows).
  • I pacchetti creati con –out non sono maggiori di 2 GB.
–max/size dimensione-pacchetto-massima [ –lim/it num-pacchetti ]
La dimensione massima per un pacchetto fisico, espressa come numero seguito da una singola lettera. Ad esempio:
500k
500 kilobyte
20m
20 megabyte
1.5g
1.5 gigabyte

L'opzione –limit limita il numero dei pacchetti generati da syncreplica; ogni pacchetto non è superiore al valore dimensione-pacchetto-massima. Utilizzare questa opzione quando lo spazio su disco per il vano di memoria o l'area di gestione temporanea è limitata.

Disposizione dei pacchetti di aggiornamento

Valore predefinito
Nessuno. È necessario specificare in che modo i pacchetti di aggiornamento creati da syncreplica –export sono memorizzati e trasmessi ad altri siti. Se si utilizza –ship o –fship e si omette l'opzione –sclass, il comando syncreplica inserisce il pacchetto dell'ubicazione del vano di memoria specificata per la classe cq_default nel file shipping.conf (UNIX e Linux) o nel Pannello di controllo MultiSite (Windows).
–shi/p –fsh/ip
Memorizza il pacchetto di aggiornamento in uno o più file in un vano di memorizzazione e inoltro; syncreplica crea un ordine di invio separato per ogni pacchetto fisico, indicando come e dove esso viene consegnato. Le destinazioni sono i server di sincronizzazione associati nel database di replica con gli argomenti nome-replica. (Le associazioni dei server di sincronizzazione sono create con mkreplica –export e possono essere modificate con chreplica.)

L'uso di –fship (force ship) richiama il server di invio per inviare il pacchetto di aggiornamento immediatamente. L'uso di –ship non richiama questo server.

–wor/kdir directory
Una directory temporanea funzionante per essere utilizzata da syncreplica. Questa directory non deve essere già esistente e viene eliminata dopo il completamento del processo di esportazione syncreplica.
–sc/lass nome-classe
Specifica la classe di memoria del pacchetto e dell'ordine di invio. syncreplica cerca la classe di memoria nel file shipping.conf in Linux e UNIX o nel pannello di controllo MultiSite in Windows per determinare il percorso del vano di memoria da utilizzare.
–out nomep-file-pacchetto
Il nome del primo pacchetto di aggiornamento. I pacchetti fisici aggiuntivi, se presenti, sono inseriti in file denominati nomep_2-file-pacchetto, nomep_3-file-pacchetto e così via.

I pacchetti di aggiornamento non sono consegnati automaticamente; utilizzare un metodo appropriato per distribuirli. È possibile creare un pacchetto utilizzando –out e distribuirlo mediante la funzione di di memorizzazione e inoltro.

nomep-area-gestione temporanea
La directory in cui sono memorizzati i file del pacchetto.

Gestione degli errori relativi alla consegna del pacchetto

Valore predefinito
Se un pacchetto non può essere consegnato, esso viene inviato mediante la funzione di memorizzazione e inoltro al server di sincronizzazione per la replica di origine. Viene inviato un messaggio di posta all'amministratore di memorizzazione e inoltro. Questo si verifica dopo vari tentativi di consegna del pacchetto non riusciti quando il tempo assegnato è scaduto; ciò si verifica anche quando l'host di destinazione è sconosciuto o il file di dati non esiste. Le impostazioni di configurazione di memorizzazione ed inoltro specificano il periodo di scadenza, l'indirizzo e-mail dell'amministratore e il programma di notifica.
–pex/pire data-ora
Specifica l'ora in cui la funzione di memorizzazione ed inoltro interrompe i tentativi di consegna del pacchetto e genera, invece, un messaggio di posta di errore. Questa opzione sovrascrive il periodo di scadenza specificato per la classe di memorizzazione nel file shipping.conf file (UNIX o Linux) o nel pannello di controllo MultiSite (Windows).

L'argomento data-ora può disporre di uno dei seguenti formati:

data.ora | data | ora
dove:
data:
= giorno-della-settimana | data-lunga
ora:
= h[h]:m[m][:s[s]] [UTC [ [ + | - ]h[h][:m[m] ] ] ]
giorno-della-settimana:
= today |yesterday |Sunday | ... |Saturday |Sun | ... |Sat
data-lunga:
= g[g]mese[[aa]aa]
mese:
= January |... |December |Jan |... |Dec

Specificare l'ora nel formato 24 ore, relativa al fuso orario locale. Se si omette l'ora, il valore predefinito è 00:00:00. se si omette la data, il valore predefinito è today. Se si omette il secolo, l'anno o una data specifica, viene utilizzata quella più recente. Specificare UTC se si desidera utilizzare l'ora da risolvere simultaneamente senza considerare il fuso orario. Utilizzare l'operatore più (+) o meno (-) per specificare la variazione positiva o negativa per l'ora UTC. Se si specifica UTC senza le variazioni dei minuti e delle ore, l'impostazione predefinita è GMT (Greenwich Mean Time). (Le date precedenti al 1° Gennaio 1970 UTC (Universal Coordinated Time) non sono valide.)

Esempi
  • 22-November-2002
  • sunday
  • yesterday.16:00
  • 0
  • 8-jun
  • 13:00
  • today
  • 9-Aug.10:00UTC
–not/ify indirizzo-e-mail
Il messaggio di errore di consegna viene inviato all'indirizzo e-mail specificato.

Se si verifica un errore su un host Windows che non ha la notifica e-mail abilitata, viene visualizzato un messaggio nel Visualizzatore di eventi Windows. Il messaggio include il valore indirizzo-e-mail specificato con questa opzione e una nota che richiede a questo utente di essere informato sullo stato dell'operazione.

Specifica delle repliche di destinazione

Valore predefinito
Nessuno.
replica ...
Il nome del sito della replica di destinazione. È possibile specificare una o più repliche di destinazione. Ad esempio, boston_hub indica che boston_hub riceverà il pacchetto di aggiornamento, mentre boston_hub bangalore indica che sia boston_hub che bangalore riceveranno il pacchetto di aggiornamento.

Opzioni ed argomenti: fase di importazione

Specifica del gruppo, del sito e della famiglia

Valore predefinito
Gruppo: il primo gruppo replicato in questo sito. Se esiste più di un collegamento dbset registrato in questo host, –clan è obbligatorio.

Sito: il sito corrente. Se esiste più di un sito in questo host, –site è obbligatorio.

Famiglia: nessun valore predefinito; è necessario specificare una famiglia.

–cl/an nome-gruppo
Il nome del gruppo di replica.
–site nome-sito
Il nome del sito di replica.
–fam/ily nome-famiglia
La famiglia del database utente: il nome database fornito al database utente quando è stato creato.

Famiglia di repository di schemi: il nome della famiglia è MASTR.

Specifica di un nome utente e password

Valore predefinito
È necessario specificare un nome utente e una password.
–u/ser utente
Il nome dell'utente con privilegi di Super utente.
–p/assword password
La password associata all'utente specificato.

Specifica dell'ubicazione dei pacchetti di aggiornamento

Valore predefinito
Nessuno.
–rec/eive [ –sc/lass classe-memorizzazione ]
Questa opzione è utile solo se si esegue syncreplica nel server di sincronizzazione.

Esegue la scansione dei vani di memoria dell'host corrente. Ogni pacchetto di aggiornamento non elaborato inteso per le repliche associate a questo host, viene applicato alla replica appropriata nell'host. Con l'opzione –sclass, il comando syncreplica esegue la scansione solo dei vani di memoria della classe di memorizzazione specificata.

Se syncreplica trova un pacchetto di creazione della replica, esso invia un messaggio di posta all'amministratore di memorizzazione e inoltro. (Se l'host corrente è un host Windows e la funzione di notifica e-mail non è abilitata, viene visualizzato un messaggio nel Visualizzatore eventi di Windows.) Utilizzare il comando mkreplica per importare questi pacchetti di creazione della replica.

nomep-file-pacchetto | nomep-area-gestione temporanea ...
Elabora ogni nomep-file-pacchetto come un pacchetto di aggiornamento. Per ogni nomep-area-gestione temporanea specificato, individua tutti i pacchetti di aggiornamenti precedentemente non elaborati nella directory e li applica alle repliche appropriate.

Esempi

In questi esempi, le righe sono interrotte per agevolare la lettura. È necessario immettere ogni comando su una singola riga.

Esportazioni

  • Nella replica boston_hub, generare un pacchetto di aggiornamento per la replica sanfran_hub. Memorizzare il pacchetto in c:\cqms\sanfran_hub_sync.xml.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family SAMPL -user susan -p passwd -out c:\cqms\sanfran_hub_sync.xml
    sanfran_hub

    Multiutil: Packet file `c:\cqms\sanfran_hub_sync.xml' generated

  • Posizionare il file del pacchetto in un vano di memoria per l'invio successivo.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family DEV -user susan -p passwd -maxsize 500mb -workdir c:\work
    -ship -sclass cq_default sanfran_hub

    Multiutil: Packet file
    `C:\work\sync_BOSTON_HUB_26-March-02_10-55-16.xml' generated
    multiutil: Shipping order
    "C:\temp\cqms\ms_ship\outgoing\sh_o_sync_BOSTON_HUB_26-March-02_
    10-55-16.xml" generated.

  • Come nell'esempio precedente, ma inviare il pacchetto immediatamente.

    multiutil syncreplica -export -clan telecomm -site boston_hub
    -family DEV -user susan -password p -maxsize 500mb -workdir
    c:\work -fship -sclass cq_default sanfran_hub

    Multiutil: Packet file
    `C:\work\sync_BOSTON_HUB_26-March-02_10-56-43.xml' generated
    multiutil: Shipping order "C:\cqms\ms_ship\outgoing\sh_o_sync_
    BOSTON_HUB_26-March-02_10-56-43.xml" generated.
    multiutil: Attempting to forward/deliver generated packets...
    multiutil:   -- Forwarded/delivered packet
    C:\cqms\ms_ship\outgoing\sync_BOSTON_HUB_26-March-02_10-
    ---- NOTE: consult the NT event log for errors.

Importazioni

  • Importare tutti i pacchetti di aggiornamento in arrivo nella classe di memorizzazione cq_storage.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV
    -user jcole -p passwd -receive -sclass cq_storage

    Multiutil: 4 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: 2 transactions from boston_hub have been replayed
    into the DEV database
    Multiutil: Deleting packet C:\temp\cqms\ms_ship\incoming\sync_
    boston_hub_22-January-02_11-10-34.xml

  • Elaborare il pacchetto di aggiornamento sanfran_hub_sync.xml nella replica sanfran_hub.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV -user jcole -p passwd c:\cqms\sanfran_hub_sync.xm

    Multiutil: 1 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: 2 transactions from boston_hub have been replayed
    into the DEV database
    Multiutil: Deleting packet c:\cqms\sanfran_hub_sync.xml

  • Tentare di elaborare il pacchetto di aggiornamento sanfran_hub_sync.xml nella replica sanfran_hub prima che la replica sanfran_hub sia stata aggiornata all'ultima versione dello schema.

    multiutil syncreplica -import -clan telecomm -site sanfran_hub
    -family DEV -user jcole -p passwd c:\cqms\sanfran_hub_sync.xml

    Multiutil: The UPDATE_PACKET packet sent from boston_hub at
    2002-01-22 15:15:50  is destined for schema revision 2, not 1;
    re-execute syncreplica after site admin has upgraded database.
    Multiutil: 2 transactions from boston_hub have been replayed
    into the MASTR database
    Multiutil: Preserving packet c:\cqms\sanfran_hub_sync.xml.

  • Elaborare tutti i pacchetti di aggiornamento nel vano di memorizzazione in arrivo.

    multiutil syncreplica -import -clan telecomm -site boston_hub
    -family DEV -user susan -p passwd -receive

    Multiutil: 1 transactions from SANFRAN_HUB have been replayed
    into the MASTR database
    Multiutil: 2 transactions from SANFRAN_HUB have been replayed
    into the DEV database
    Multiutil: Deleting packet C:\temp\cqms\ms_ship\incoming\sync_
    SANFRAN_HUB_07-February-02_11-24-49.xml


Feedback