Come modificare il percorso del database delle code

 

Si applica a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Ultima modifica dell'argomento: 2009-01-27

Una coda è una posizione temporanea per i messaggi in attesa di passare alla fase successiva dell'elaborazione. Ogni coda rappresenta un insieme logico di messaggi elaborato da un server di trasporto in base a un ordine specifico.

Microsoft Exchange Server 2007 utilizza un database di Extensible Storage Engine (ESE) per l'archiviazione dei messaggi nelle code. Conosciuto in precedenza come JET, ESE è un metodo che definisce un API di livello basso per le strutture secondarie del database in Exchange Server. Le diverse code vengono archiviate in un singolo database ESE. Le code sono presenti solo sui server in cui è installato il ruolo del server Trasporto Hub o il ruolo del server Trasporto Edge.

Informazioni preliminari

Per eseguire le procedure riportate di seguito, è necessario utilizzare un account che disponga della seguente delega:

  • Ruolo Exchange Server Administrator e gruppo Administrators locale per il server di destinazione

Per eseguire le procedure riportate di seguito su un computer in cui è installato il ruolo del server Trasporto Edge, è necessario accedere al sistema utilizzando un account che sia membro del gruppo Administrators locale del computer.

Per ulteriori informazioni sulle autorizzazioni, sulla delega dei ruoli e sui diritti necessari per l'amministrazione di Microsoft Exchange Server 2007, vedere Considerazioni sulle autorizzazioni.

Modifica del percorso del database delle code

Il percorso del database delle code è controllato dal parametro QueueDatabasePath nel file di configurazione dell'applicazione EdgeTransport.exe.config situato in C:\Programmi\Microsoft\Exchange Server\Directory bin. Per modificare il percorso del database delle code, è possibile implementare uno dei due metodi seguenti:

  • Utilizzare lo script Move-TransportDatabase.ps1.

    Exchange 2007 Service Pack 1 (SP1) comprende un nuovo script che consente di modificare il percorso dei file del database di trasporto e dei file di registro delle transazioni. Tale script permette inoltre di spostare i file del database nel nuovo percorso specificato dall'utente. Quando si utilizza lo script Move-TransportDatabase.ps1 per spostare i file del database, è importante prendere in considerazione quanto segue:

    • Se l'unità di destinazione differisce da quella di origine, è necessario che disponga di spazio sufficiente per eseguire correttamente l'operazione. Lo script richiede 2 GB liberi oltre allo spazio occorrente per spostare i file del database o i file di registro delle transazioni esistenti.

    • Il parametro QueueDatabasePath e il parametro IPFilterDatabasePath non possono presentare lo stesso valore.

    • Il parametro QueueDatabaseLoggingPath e il parametro IPFilterDatabaseLoggingPath non possono presentare lo stesso valore.

    • Se il percorso di destinazione non esiste, lo script crea automaticamente il percorso appropriato.

    • Il file EdgeTransport.exe.config esistente viene salvato automaticamente con il nome EdgeTransport.exe.config.ggmmaaaaoommss.old.

  • Spostare manualmente i file del database.

    Benché sia consigliabile utilizzare lo script Move-TransportDatabase.ps1 per spostare i file del database di trasporto, è possibile anche eseguire tale operazione manualmente. Nell'elenco che segue vengono descritti alcuni elementi importanti da considerare durante la modifica del percorso di un database delle code:

    • Se la directory di destinazione non esiste, verrà creata nel caso in cui la directory principale disponga delle seguenti autorizzazioni:

      Servizio di rete: controllo completo

      Sistema: controllo completo

      Amministratori: controllo completo

    • I file del database delle code esistente Mail.que e Trn.chk non vengono spostati. I nuovi file del database delle code vengono creati nel nuovo percorso dopo aver salvato il file di configurazione dell'applicazione EdgeTransport.exe.config e riavviato il Servizio di trasporto di Microsoft Exchange. I file del database esistente vengono lasciati nel vecchio percorso. Tuttavia, non vengono più utilizzati.

    • Per modificare il percorso del database delle code, riutilizzando però i file del database delle code esistenti, è necessario spostare o copiare i file del database quando il servizio di trasporto di Microsoft Exchange viene arrestato.

Spostamento del database delle code in un nuovo percorso

Per utilizzare lo script Move-TransportDatabase.ps1 per spostare il database delle code in un nuovo percorso

  1. Avviare Exchange Management Shell.

  2. Al prompt della shell eseguire il comando riportato di seguito: Sostituire <percorso di destinazione> con un percorso appropriato, ad esempio E:\Exchange\Transport\Queue.

    Move-TransportDatabase.ps1 -QueueDatabasePath: <destination path> 
    

Creazione manuale di un nuovo database delle code in un nuovo percorso

Per creare un nuovo database delle code in un nuovo percorso

  1. Aprire il file che segue utilizzando il Blocco note:

    C:\Programmi\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config.

  2. Modificare la riga seguente nella sezione <appSettings>:

    <add key="QueueDatabasePath" value="<LocalPath>" />
    

    Ad esempio, per definire come nuovo percorso dei registri delle transazioni "C:\Queue\QueueDB", modificare il parametro QueueDatabasePath come indicato di seguito:

    <add key="QueueDatabasePath" value="C:\Queue\QueueDB" />
    
  3. Salvare e chiudere il file EdgeTransport.exe.config.

  4. Riavviare il Servizio di trasporto di Microsoft Exchange.

  5. Verificare che i nuovi file Mail.que e Trn.chk siano creati nel nuovo percorso.

  6. Rimuovere i file Mail.que e Trn.chk inutilizzati dal percorso originale.

Riutilizzo manuale di un database delle code esistente in un nuovo percorso

Per riutilizzare un database delle code esistente in un nuovo percorso

  1. Creare la directory in cui archiviare il database delle code. Accertarsi che vengano applicate le autorizzazioni corrette alla directory.

  2. Aprire il file che segue utilizzando il Blocco note: C:\Programmi\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config.

  3. Modificare la riga seguente nella sezione <appSettings>:

    <add key="QueueDatabasePath" value="<LocalPath>" />
    

    Ad esempio, per modificare il percorso in "C:\Queue\QueueDB", modificare il parametro QueueDatabasePath come segue:

    <add key="QueueDatabasePath" value="C:\Queue\QueueDB" />
    
  4. Salvare e chiudere il file EdgeTransport.exe.config.

  5. Arrestare il Servizio di trasporto di Microsoft Exchange.

  6. Copiare i file Mail.que e Trn.chk dal percorso originale nel nuovo percorso.

  7. Avviare il Servizio di trasporto di Microsoft Exchange.

  8. Rimuovere i file Mail.que e Trn.chk inutilizzati dal percorso originale.

Modifica del percorso dei registri delle transazioni del database delle code

Il percorso dei registri delle transazioni del database delle code è controllato dal parametro QueueDatabaseLoggingPath nel file di configurazione dell'applicazione EdgeTransport.exe.config. Per modificare il percorso dei file di registro delle transazioni, è possibile implementare uno dei due metodi seguenti:

  • Utilizzare lo script Move-TransportDatabase.ps1.

    Exchange 2007 Service Pack 1 (SP1) comprende un nuovo script che consente di modificare il percorso dei file del database di trasporto e dei file di registro delle transazioni. Tale script permette inoltre di spostare i file di registro delle transazioni nel nuovo percorso specificato dall'utente. Quando si utilizza lo script Move-TransportDatabase.ps1 per spostare i file del database, è importante prendere in considerazione quanto segue:

    • Se l'unità di destinazione differisce da quella di origine, è necessario che disponga di spazio sufficiente per eseguire correttamente l'operazione. Lo script richiede 2 GB liberi oltre allo spazio occorrente per spostare i file del database o i file di registro delle transazioni esistenti.

    • Il parametro QueueDatabasePath e il parametro IPFilterDatabasePath non possono presentare lo stesso valore.

    • Il parametro QueueDatabaseLoggingPath e il parametro IPFilterDatabaseLoggingPath non possono presentare lo stesso valore.

    • Se il percorso di destinazione non esiste, lo script crea automaticamente il percorso appropriato.

    • Il file EdgeTransport.exe.config esistente viene salvato automaticamente con il nome EdgeTransport.exe.config.ggmmaaaaoommss.old.

  • Spostare manualmente i file del database.

    Benché sia consigliabile utilizzare lo script Move-TransportDatabase.ps1 per spostare i file di registro delle transazioni, è possibile anche eseguire tale operazione manualmente.

    Nell'elenco che segue vengono descritti alcuni punti importanti riguardanti la modifica del percorso dei registri delle transazioni del database delle code:

    • Se la directory di destinazione non esiste, verrà creata nel caso in cui la directory principale disponga delle seguenti autorizzazioni:

      Servizio di rete: controllo completo

      Sistema: controllo completo

      Amministratori: controllo completo

    • I file di registro delle transazioni del database delle code Trn.log, Trntmp.log, Trnnnn.log, Trnres00001.jrs, Trnres00002.jrs e Temp.edb non vengono spostati. I nuovi registri delle transazioni del database delle code vengono creati nel nuovo percorso dopo aver salvato il file di configurazione dell'applicazione EdgeTransport.exe.config e riavviato il Servizio di trasporto di Microsoft Exchange. I file di registro delle transazioni esistenti vengono lasciati nel vecchio percorso. Tuttavia, non vengono più utilizzati.

    Nota

    Temp.edb viene utilizzato per verificare lo schema del database delle code all'avvio del Servizio di trasporto di Microsoft Exchange. Benché Temp.edb non sia un file di registro delle transazioni, viene conservato nello stesso percorso dei file di registro delle transazioni.

Spostamento dei file di registro delle transazioni in un nuovo percorso

Per utilizzare lo script Move-TransportDatabase.ps1 per spostare i file di registro delle transazioni in un nuovo percorso

  1. Avviare Exchange Management Shell.

  2. Al prompt della shell eseguire il comando riportato di seguito: Sostituire <percorso di destinazione> con un percorso appropriato, ad esempio E:\Exchange\Transport\Queue.

    Move-TransportDatabase.ps1 -QueueDatabaseLoggingPath: <destination path>
    

Creazione manuale di nuovi registri delle transazioni delle code in un nuovo percorso

Per creare nuovi registri delle transazioni del database delle code in un nuovo percorso

  1. Aprire il file che segue utilizzando il Blocco note:

    C:\Programmi\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config.

  2. Modificare la riga seguente nella sezione <appSettings>:

    <add key="QueueDatabaseLoggingPath" value="<LocalPath>" />
    

    Ad esempio, per creare un nuovo database delle code nel percorso "C:\Queue\QueueLogs", modificare il parametro QueueDatabaseLoggingPath come segue:

    <add key="QueueDatabaseLoggingPath" value="C:\Queue\QueueLogs" />
    
  3. Salvare e chiudere il file EdgeTransport.exe.config.

  4. Riavviare il Servizio di trasporto di Microsoft Exchange.

  5. Verificare che i nuovi file Trn.log, Trntmp.log, Trnres00001.jrs, Trnres00002.jrs e Temp.edb siano creati nel nuovo percorso.

  6. Rimuovere i file Trn.log, Trntmp.log, Trnnnn.log, Trnres00001.jrs, Trnres00002.jrs e Temp.edb inutilizzati dal percorso originale.

Riutilizzo manuale dei registri delle transazioni delle code esistenti in un nuovo percorso

In circostanze normali, non sarebbe opportuno riutilizzare i registri delle transazioni esistenti in un nuovo percorso. Un arresto ordinario del Servizio di trasporto Microsoft Exchange salva tutte le voci dei registri delle transazioni non salvate nel database delle code. Viene utilizzata la registrazione circolare. Pertanto, i registri delle transazioni che contengono le modifiche del database salvate in precedenza non vengono mantenuti. Soltanto i casi di ripristino di emergenza in cui il servizio di trasporto di Microsoft Exchange non è stato arrestato correttamente oppure i casi di guasto all'unità disco rigido richiedono il ripristino e la modifica del percorso di un database delle code esistente e dei relativi registri delle transazioni.

Per riutilizzare i registri delle transazioni del database delle code esistente in un nuovo percorso

  1. Creare la directory in cui archiviare i registri delle transazioni del database delle code. Accertarsi che vengano applicate le autorizzazioni corrette alla directory.

  2. Aprire il file che segue utilizzando il Blocco note: C:\Programmi\Microsoft\Exchange Server\Bin\EdgeTransport.exe.config.

  3. Modificare la riga seguente nella sezione <appSettings>:

    <add key="QueueDatabaseLoggingPath" value="<LocalPath>" />
    

    Ad esempio, per modificare il percorso in "C:\Queue\QueueLogs", modificare il parametro QueueDatabaseLoggingPath come segue:

    <add key="QueueDatabaseLoggingPath" value="C:\Queue\QueueLogs" />
    
  4. Salvare e chiudere il file EdgeTransport.exe.config.

  5. Arrestare il Servizio di trasporto di Microsoft Exchange.

  6. Copiare i file Trn.log, Trntmp.log, Trnnnn.log, Trnres00001.jrs, Trnres00002.jrs e Temp.edb esistenti nel nuovo percorso.

  7. Avviare il Servizio di trasporto di Microsoft Exchange.

  8. Rimuovere i file Trn.log, Trntmp.log, Trnnnnn.log, Trnres00001.jrs, Trnres00002.jrs e Temp.edb inutilizzati dal percorso originale.

Ulteriori informazioni

Per ulteriori informazioni sul database delle code, vedere Gestione del database delle code.

Per impostazione predefinita lo script Move-TransportDatabase.ps1 si trova nella seguente cartella in un computer su cui è in esecuzione Exchange 2007 SP1:

%Programmi%\Microsoft\Exchange Server\Scripts

Lo script accetta i seguenti parametri:

  • QueueDatabasePath

  • QueueDatabaseLoggingPath

  • IPFilterDatabasePath

  • IPFilterDatabaseLoggingPath

  • TemporaryStoragePath

Per spostare i file del database di trasporto o i file di registro delle transazioni, viene implementata la seguente procedura:

  1. Lo script convalida i valori dei parametri.

    • L'operazione di convalida viene ignorata se il percorso di destinazione specificato coincide con il percorso di origine.

    • I valori dei parametri QueueDatabasePath e IPFilterDatabasePath devono essere differenti in quanto entrambi i percorsi contengono file Trn.chk.

    • I valori dei parametri QueueDatabaseLoggingPath e IPFilterDatabaseLoggingPath devono essere differenti in quanto i file di registro delle transazioni presentano lo stesso nome.

    • Lo script verifica se sono disponibili 2 GB liberi oltre a una quantità di spazio corrispondente alle dimensioni dei file da copiare. Ad esempio, deve essere disponibile una quantità di spazio pari a 2 GB più le dimensioni dei file Mail.que, Trn.chk e Ipfiltering.edb.

    Nota

    La verifica della disponibilità dello spazio necessario viene ignorata se il percorso di destinazione è ubicato nella stessa unità dei file di origine.

  2. Lo script crea le cartelle necessarie.

    • Se appropriato, vengono create le cartelle di destinazione.

    • Se il gruppo Administrators, l'account di sistema locale o l'account dei servizi di rete non dispone delle autorizzazioni di controllo completo per il percorso di destinazione, lo script aggiunge tali autorizzazioni.

    • Se per il gruppo Administrators, l'account di sistema locale o l'account dei servizi di rete è stata definita una regola di accesso negato per il percorso di destinazione, lo script genera un messaggio di avviso e non esce.

  3. Lo script arresta il servizio MSExchangeTransport.

  4. Lo script esegue il backup del file EdgeTransport.exe.config assegnandogli il nome EdgeTransport.exe.config.ggmmaaaaoommss.old.

  5. Lo script sposta i seguenti file nel percorso di destinazione, come appropriato per il comando che è stato utilizzato:

    • QueueDatabasePath: Mail.que, Trn.chk

    • IPFilterDatabasePath: IPFiltering.edb, Trn.chk

    • Percorso di registrazione: Trn*.log, Trnres00001.jrs, Trnres00002.jrs, Temp.edb

  6. Lo script aggiorna il file EdgeTransport.exe.config, quindi salva le modifiche apportate.

  7. Lo script avvia il servizio MSExchangeTransport.