Abstract
Archiviare i messaggi di posta è un ottimo metodo per accelerare i propri affari, ma mentre si lavora con server, file e database, possono sempre accadere dei crash di sistema. E' quindi necessario preparare un piano di ripristino per l'installazione di Archive Server for MDaemon. Questo articolo ha lo scopo di spiegare come migrare/ripristinare un’installazione di ASM.
Per migrare una versione 4.x di ASM si consigli di fare riferimento a questo articolo.
Scenari
Esistono diversi scenari in cui può essere necessario migrare o ripristinare un’installazione di Archive Server for MDaemon.
- Ripristino di ASM dopo un crash
- Backup del repository, per poter recuperare i messaggi archiviati in precedenza.
- Backup del database, per poter recuperare le configurazioni effettuate tramite l’interfaccia di amministrazione (domini e utenti da archiviare, regole di non archiviazione…) ed evitare di dover ripetere l’archiviazione.
- Le caratteristiche della precedente installazione (tipo di Web server, credenziali di accesso al database dell’utenza di ASM, …).
Versione 2.2.0 o superiori
-
ASM/Database/archivio sulla stessa macchina
Recuperare i backup del database e della cartella.
Quindi:-
Ripristinare il database di ASM.
-
Installare la stessa versione di ASM specificando nella schermata di configurazione del database il nome e le credenziali di accesso utilizzate nella prece-dente installazione.
-
Fermare il servizio ASMd.exe.
-
Sovrascrivere la cartella di backup dell’archivio su quella nuova; se si modifica il percorso del repository rispetto alla posizione originale, bisogna modificare anche la configurazione dello stesso impostata nella console di amministrazione di ASM.
-
Riavviare ASMd.exe.
-
Provare l’installazione.
-
-
Il database è su un’altra macchina
Se il database non si trova sulla stessa macchina e non è stato interessato dal crash di ASM:-
Installare la stessa versione di ASM specificando nella schermata di configurazione del database il nome e le credenziali di accesso del database remoto.
-
Fermare il servizio ASMd.exe.
-
Sovrascrivere la cartella di backup dell’archivio su quella nuova.
-
Riavviare ASMd.exe.
-
Provare l’installazione.
-
Versioni precedenti la 2.2.0
-
ASM/Database/archivio sulla stessa macchina
Recuperare i backup del database e della cartella.
Quindi:-
Installare da zero ASM (la stessa versione che era installata prima del crash). Usare la stessa cartella di installazione e gli stessi settaggi per il database.
-
Fermare il servizio ASMd.exe.
-
Ripristinare il database ASM utilizzando il backup (la modalità del ripristino dipende dal tipo di database e dalla modalità di backup utilizzati).
-
Sovrascrivere la cartella di backup dell’archivio su quella nuova; se si modifica il percorso del repository rispetto alla posizione originale, bisogna modificare anche la configurazione dello stesso impostata nella console di amministrazione di ASM.
-
Riavviare ASMd.exe.
-
Provare l’installazione.
-
-
Il database è su un’altra macchina
Se il database non si trova sulla stessa macchina e non è stato interessato dal crash di ASM:-
Disconnettere il database dal database server (vedere il capitolo “Migrazione del database ASM”):
a. detach per SQL Server/MSDE
b. backup del database e successiva cancellazione per MySQL -
Installare da zero ASM (la stessa versione che era installata prima del crash). Usare la stessa directory di installazione e gli stessi settaggi per il database.
-
Fermare il servizio ASMd.exe.
-
Ripristinare il database ASM utilizzando il backup (la modalità del ripristino dipende dal tipo di database e dalla modalità di backup utilizzati).
-
Sovrascrivere la cartella di backup dell’archivio su quella nuova.
-
Riavviare ASMd.exe.
-
Provare l’installazione.
-
- Spostamento del database da un server a un altro
- Aggiornamento da MSDE a SQL Server
- Installare SQL Server.
- Seguire la procedura descritta nello Scenario 2 (vedere punto precedente) – riguardante la disconnessione del database da MSDE e il suo ripristino su SQL Server. Frequentemente la necessità di questo aggiornamento deriva dal fatto di aver raggiunto il limite dei 2GB di MSDE; se si passa a SQL Server 2005 o SQL Server Express (che ha ancora un limite intrinseco, ma di 4GB) è importante prestare attenzione al fatto che la migrazione deve essere effettuata verso un’istanza 2005, altrimenti la limitazione non sarà superata.
- Provare l’installazione.
-
Disinstallare MSDE (se non più utilizzato).
- Migrazione da MSDE a MySQL
- Arrestare il servizio di ASM .
- Creare una copia della regola di Content Filter “ASM_rule” in MDaemon e modificarla per parcheggiare i messaggi in una cartella temporanea.
- Effettuare un backup del database e del repository di ASM.
- Disinstallare ASM.
- Installare il driver ODBC per MySQL e MySQL (fare riferimento alla sezione “Requisiti di sistema” sul sito di Achab per le versioni supportate e per le opzioni di installazione).
- Effettuare una nuova installazione di ASM usando la stessa versione che si desidera migrare con database MySQL.
- Arrestare il servizio di ASM.
- Eseguire la migrazione del database con l’utility SQLServer2MySQL.
- Verificare che la regola di Content Filter “ASM_rule” sia attiva e faccia riferimento alla cartella enginequeue della nuova installazione.
- Cancellare o disabilitare la regola di Content Filter temporanea.
- Copiare i messaggi dalla cartella temporanea alla cartella enginequeue della nuova installazione di ASM.
- Riavviare il servizio di ASM.
-
Verificare il corretto funzionamento dell’applicazione.
- Migrazione da SQL Server a MySQL
- Ripetere l’archiviazione del repository
Nella procedura che segue si suppone che il database di ASM si chiami ASM_DB (default dell’installazione). La procedura è diversa a secondo del tipo di database utilizzato (SQL Server/MSDE o MySQL).
Passo 1 – Fermare ASM
Mentre il motore è spento, le email saranno posizionate nella cartella “Queue” di ASM e non saranno perse.
Usare Start->Programmi->Archive Server for MDaemon->Stop Engine per fermare ASM, oppure farlo da Pannello di controllo->Servizi.
Assicurarsi che gli utenti non accedano all’interfaccia web di ASM.
Se possibile, fermare il web server o semplicemente sostituire il file
Passo 2 – Disconnettere il database
SQL Server/MSDE
SQL server 2000/2005 e MSDE 2000 forniscono gli strumenti per la disconnessione-connessione (detach-attach) del database per la migrazione dei DB da una macchina all’altra (o da una cartella all’altra dello stesso server).
Il database può essere disconnesso utilizzando Enterprise Manager di SQL server (se non si è in possesso di questo programma, leggere le “Note per utenti MSDE” alla fine del presente documento):
-
Selezionare nel menu di sinistra il database che deve essere disconnesso quindi, con il tasto destro del mouse selezionare activities->detach database.
-
Selezionare l’opzione “Update statistic prior…”; controllare che non vi siano connessioni attive e che il database sia pronto per essere disconnesso; quindi, premere “OK”.
Alternativamente, nel caso di SQL Server si può effettuare un backup del database da Enterprise Manager di SQL Server.
MySQL
Effettuare un backup del database (copia della cartella dataASM_DB o dump della struttura e dei dati dello schema ASM_DB).
Passo 3 – Spostare i file del database
SQL Server/MSDE
La cartella “Data” di SQL Server (o MSDE) conterrà 2 file:
-
ASM_DB.mdf (dati ASM).
-
ASM_DB_log.ldf (log di transazione).
Nota: se si è installato ASM+MSDE con express setup, la cartella “Data” si trova in c:program filesMSDEMSSQL$ASMData
Spostare questi file sulla macchina su cui si sposta il database, nella cartella che si preferisce (potrebbe essere la cartella “Data” di SQL server, ma non è indispensabile).
MySQL
Copiare i file di backup o di dump sulla macchina su cui si sposta il database, nella cartella che si preferisce.
Passo 4 – Connettere il database al nuovo server
SQL Server/MSDE
Se si è utilizzato il detach database:
- Accedere, usando Enterprise Manager al server SQL di destinazione.
- Selezionare la cartella “Database” dal menu di sinistra e cliccare su di essa con il tasto destro del mouse.
- Selezionare All Activities->Attach Database.
- Nel menu “Attach Database”, indicare il percorso del file .mdf (vedere il passo 3).
- Verificare che entrambi i file .mdf e .ldf vengano mostrati nella griglia centrale.
- Lasciare il valore proposto per “Attach as” e selezionare come owner del database “sa”.
- Andare nella sezione Security > Logins dell’Enterprise Manager e creare un nuovo account di accesso.
- Scegliere un nome diverso dalla login del vecchio server (tipicamente “ASM_USER”), selezionare l’autenticazione di tipo SQL, inserire una password, selezionare dall’elenco dei database il database di ASM, premere “OK” e confermare la password appena inserita.
- Può darsi che compaia un messaggio di errore sull’impossibilità da parte del nuovo account di accedere al database selezionato e che chiede se si vuole continuare; premere “Sì”. Editare le proprietà dell’account appena creato, andare nel tab accesso database e selezionare dall’elenco il database di ASM.
- Selezionare nuovamente la cartella “Database”, poi il database di ASM e quindi la voce “Users” editare l’account appena creato e flaggare la voce “db_owner”.SM_DB.mdf (dati ASM).
Se si è utilizzato il backup del database:
- Creare una login per l’utente ASM_USER.
- Creare un database ASM_DB vuoto assegnando l’utente ASM_USER come owner.
- Effettuare il restore del database ASM_DB.
- Allineare i SID con la stored procedure sp_change_users_logine si è installato ASM+MSDE con express setup, la cartella “Data” si trova in c:program filesMSDEMSSQL$ASMData.
Nel caso di backup, utilizzare l’amministrazione di MySQL per effettuare il restore del database. Qualora con il restore su MySQL non venga ricreato l’utente, è necessario ricreare l’utente di accesso al database manualmente.
Nel caso di dump, ripristinare il database dai file di dump.
Passo 5 – Modificare il DNS ODBC
Il motore di ASM si avvale di una connessione ODBC Data Source Name per accedere al database.
I parametri della connessione ODBC sono specificati nel file
source=
user=
pass=
La password sita nel file engine.ini può essere criptata usando il programma toolASMCustSupport.exe dalla linea di comando. Attenzione: ASM è un’applicazione a 32 bit, anche se è installata su una macchina con sistema operativo a 64 bit. Occorre pertanto creare un’ODBC a 32 bit comunque, anche su una macchina a 64 bit. Il gestore ODB a 32 bit, su una macchina a 64 bit può essere avviato facendo doppio click sul file C:WindowsSysWow64ODBCad32.exe. SQL Server/MSDE Versioni < 4.0
L’applicazione web di ASM utilizza un file “config” differente per accedere al database. ASM salva nel registro alcune informazioni sull’installazione che occorre modificare per mantenere un’installazione pulita (e per lanciare l’aggiornamento senza problemi). Le chiavi del registro che devono essere aggiornate relativamente al database si trovano in: Sistemi a 32 bit:
Nota: dbtype = SQL Server anche per MSDE (questo parametro è per usi futuri). “Hostname” è il nome dell’istanza (es. macchinaasm). Avviare il motore di ASM (usando Start->Programmi->Archive Server for MDaemon->Start engine o Pannello di controllo->Servizi) e far ripartire il web server.
Verificare che il sistema funzioni correttamente. Spostamento di ASM Spostamento della sola installazione di ASM e del repository. Il database non viene spostato da dove si trova. Fare un backup della cartella di ASM e di quella del repository. Se SQL Server Enterprise Manager non è disponibile (per esempio se l’utente usa solo MSDE), connessione e disconnessione (attach-detach) possono essere effettuate avvalendosi di un programma gratuito scaricabile dal link:
o direttamente dalla linea di comando osql, vedere anche:
Attenzione
Dopo aver fatto il restore del database sulla nuova macchina, può essere necessario lanciare da query analyzer la stored procedure “sp_change_users_login ‘update_one’, ‘
Esempio:
endecoded string (len=28): DEABF60B0C48D10C8F60AFDE
Dopo la modifica di engine.ini, è necessario modificare anche la connessione ODBC usando l’ODBC management tool che si trova nel Pannello di controllo (programmi di amministrazione).
Passo 6 – Modificare il file di accesso per l’interfaccia Web
L’applicazione web di ASM utilizza un file “config” differente per accedere al database. Questo file,
Procedura:
Il file può essere decrittato solo sulla medesima macchina su cui è stato crittato ed avendo accesso alla utility aspnet_regiis.exe presente nella cartella di installazione del framework .NET (di default C:WINDOWSMicrosoft.NETFrameworkv4.0.30319) (E' compito dell'amministratore di sistema (di Windows) limitare l'accesso a aspnet_regiis (consentendolo al setup di ASM ovviamente)).
Questo file,
Passo 7 – Aggiornare il registro
Sistemi a 64 bit:
“Password” è criptata come nel DNS ODBC (vedere il passo 5).
Passo 8 – Riavviare ASM
Quindi:
http://www.asql.biz/DbaMgr/DownLoad2k.shtm
http://databasejournal.com/features/mssql/article.php/2224361