WebSphere ESB versione 6.2 richiede che Cloudscape sia in esecuzione almeno alla versione v10.1.x. (notare che Cloudscape v10.1.x è costituito dalla code base di Apache Derby Versioni 10.1). Durante l'upgrade di WebSphere ESB versione 6.2, lo strumento di migrazione esegue automaticamente l'upgrade delle istanze di database a cui accedono alcuni componenti interni, come il registro UDDI, attraverso il framework embedded. Lo strumento tenta inoltre di eseguire un aggiornamento delle istanze di Cloudscape a cui le applicazioni accedono attraverso il framework embedded. È necessario verificare i risultati della migrazione per questi database di backend.
Prima di iniziare
Non utilizzare Cloudscape v10.1.x come database di produzione.
Utilizzarlo solo per scopi di sviluppo e test.
Per saperne di più: La nuova versione di Cloudscape combina il runtime Derby con vantaggi aggiuntivi, come IBM® QA (Quality Assurance) e NLS (National Language Support). Per informazioni sulla code base open source di Cloudscape v10.1.x, vedere le pagine Web del prodotto
Cloudscape..
Lo strumento di migrazione tenta di eseguire un aggiornamento soltanto delle istanze del database Cloudscape a cui si ha accesso attraverso il framework embedded. È necessario eseguire manualmente l'aggiornamento delle istanze di Cloudscape che eseguono transazioni con i server attraverso il framework Derby Network Server. Consultare Esecuzione manuale dell'aggiornamento di Cloudscape. Questo requisito elimina il rischio di danneggiare applicazioni di terze parti che utilizzano il framework Network Server per accedere alle stesse istanze di database di WebSphere ESB
Altre applicazioni possono accedere a Cloudscape su Network Server in quanto il framework fornisce al database una base di software di connettività, al contrario del framework embedded. Cloudscape Network Server può eseguire transazioni con più JVM (Java™ Virtual Machine) (o server) contemporaneamente, mentre Cloudscape su framework embedded interagisce con una sola JVM. Le implementazioni di WebSphere ESB in cluster o in coesistenza richiedono Network Server. Per ulteriori informazioni, consultare il centro informazioni di IBM Cloudscape.
Informazioni su questa attività
Per le istanze del database a cui le applicazioni hanno accesso mediante il framework embedded, la migrazione automatica può riuscire completamente, non riuscire per nulla oppure riuscire con avvertenze. Una migrazione che produce messaggi di avvertenza crea un database Cloudscape v10.1.x
con i dati dell'utente, ma non esegue la migrazione di tutta la logica configurata e le altre impostazioni, per esempio:
- chiavi
- controlli
- viste
- trigger
- alias
- procedure memorizzate
Per distinguere tra una migrazione parzialmente o completamente riuscita, è necessario verificare i risultati della migrazione automatica controllando sia i log post-upgrade generali che i log dei database singoli.
L'esecuzione di queste attività consente di avere dati diagnostici di importanza vitale per risolvere i problemi relativi ai database migrati parzialmente e a quelli per cui la migrazione automatica non riesce per nulla. Infine, migrare questi database mediante un processo manuale.
Procedura
- Aprire il log post-upgrade di ciascun nuovo profilo WebSphere ESB versione 6.2. Il nome di percorso del log è install_rootprofiles/nomeProfilo/logs/WASPostUpgrade.data_ora.log.
- Esaminare il log post-upgrade e cercare i messaggi di errore del database. Queste eccezioni indicano errori di migrazione del database. Le righe seguenti sono un esempio di contenuto del log post-upgrade, in cui il codice di errore del database è DSRA7600E. Lo strumento di migrazione fa riferimento a tutte le eccezioni relative al database mediante il prefisso DSRA.
MIGR0344I: Processing configuration file /opt/WebSphere60/AppServer/cloudscape
/db2j.properties.
MIGR0344I: Processing configuration file /opt/WebSphere60/AppServer/config/cells
/migr06/applications/MyBankApp.ear/deployments/MyBankApp/deployment.xml.
DSRA7600E: Cloudscape migration of database instance /opt/WebSphere61/Express
/profiles/default/databases/_opt_WebSphere60_AppServer_bin_DefaultDB failed,
reason: java.sql.SQLException: Failure creating target db
MIGR0430W: Cloudscape Database /fvt/temp/60BaseXExpress/PostUpgrade50BaseFVTTest9
/testRun/pre/websphere_backup/bin/DefaultDB failed to migrate <nome del nuovo database>
Importante: contattare l'Assistenza IBM WebSphere ESB
se si riscontra un messaggio di errore di migrazione per un'istanza Cloudscape cui accede un
componente interno WebSphere, ovvero
un componente di WebSphere ESB anziché una
delle proprie applicazioni).
- Aprire il singolo log di migrazione database che corrisponde a ciascuno dei propri database Cloudscape di backend. Questi log hanno la stessa data e ora del log post-upgrade generale. Questi log mostrano maggiori dettagli riguardo gli errori rispetto a quanto riportato sul log post-upgrade generale; inoltre riportano errori che non sono presenti sul log post-upgrade generale.
Il nome di percorso di ciascun log di database è WAS_HOME/profiles/nomeProfilo/logs/nomeCompletoPercorsoDB_migrationLogdata_ora.log.
- Esaminare ciascun log di migrazione database per individuare gli errori. Per una migrazione completamente riuscita, il log contiene un messaggio simile al testo seguente:
MIGR0429I: Cloudscape Database F:\temp\60BaseXExpress\PostUpgrade50BaseFVTTest2\testRun
\pre\websphere_backup\bin\DefaultDB was successfully migrated. See log C:\WebSphere61
\Express\profiles\default\logs\DefaultDB_migrationLogSun-Dec-18-13.31.40-CST-2005.log
Altrimenti, il log mostra messaggi di errore nel formato riportato nell'esempio seguente:
connecting to source db <jdbc:db2j:/fvt/temp/60BaseXExpress/PostUpgrade50BaseFVTTest9
/testRun/pre/websphere_backup/bin/DefaultDB>
connecting to source db <jdbc:db2j:/fvt/temp/60BaseXExpress/PostUpgrade50BaseFVTTest9
/testRun/pre/websphere_backup/bin/DefaultDB> took 0.26 seconds
creating target db <jdbc:derby:/opt/WebSphere61/Express/profiles/default/databases
/_opt_WebSphere60_AppServer_bin_DefaultDB>
ERROR: An error occurred during migration. See debug.log for more details.
shutting down databases
shutting down databases took 0.055 seconds
- Per maggiori dettagli su un errore di migrazione, consultare il log di debug corrispondente al log di migrazione database. L'utilità di migrazione di WebSphere Application
Server attiva per impostazione predefinita una traccia di debug di migrazione;
questa funzione di traccia genera i log di debug del database. Il nome completo del percorso di un log di debug è WAS_HOME/profiles/nomeProfilo/logs/nomeCompletoPercorsoDB_migrationDebugdata_ora.log.
Le righe seguenti sono un esempio di testo di debug. Queste righe riportano dati di eccezione dettagliati per l'errore a cui si fa riferimento nel precedente esempio di migrazione database.
java.sql.SQLException: Database_opt_WebSphere60_AppServer_bin_DefaultDB already exists.
Aborting migration
at com.ibm.db2j.tools.migration.MigrateFrom60Impl.go(Unknown Source)
at com.ibm.db2j.tools.migration.MigrateFrom60Impl.doMigrate(Unknown Source)
at com.ibm.db2j.tools.MigrateFrom60.doMigrate(Unknown Source)
at com.ibm.ws.adapter.migration.CloudscapeMigrationUtility.migr
Risultati
- L'utilità di migrazione di WebSphere ESB modifica le configurazioni JDBC di Cloudscape indipendentemente dal fatto che la migrazione delle istanze di database a cui le applicazioni hanno accesso riesca o meno. Lo strumento modifica i percorsi di classe, le classi di implementazione delle origini dati e le classi helper delle origini dati del provider JDBC Cloudscape. La seguente tabella descrive tali cambiamenti:
Tabella 1. Nuove informazioni di classeTipo di classe |
Valore precedente |
Nuovo valore |
Percorso di classe provider JDBC |
${CLOUDSCAPE_JDBC_DRIVER_PATH}/db2j.jar |
${DERBY_JDBC_DRIVER_PATH}/derby.jar- Dove DERBY_JDBC_DRIVER_PATH è la variabile di ambiente WebSphere che definisce il provider JDBC Cloudscape
- Dove derby.jar è il nome di base del file di classe del driver JDBC (nel proprio ambiente, fare riferimento al file di classe del driver JDBC mediante il nome completo del percorso).
|
Classe di implementazione delle origini dati: pool di connessione |
com.ibm.db2j.jdbc.DB2jConnectionPool DataSource |
org.apache.derby.jdbc.EmbeddedConnection PoolDataSource |
Classe di implementazione delle origini dati: XA |
com.ibm.db2j.jdbc.DB2jXADataSource |
org.apache.derby.jdbc.EmbeddedXADataSource |
Classe helper delle origini dati |
com.ibm.websphere.rsadapter.Cloudscape DataStoreHelper |
com.ibm.websphere.rsadapter.Derby DataStoreHelper |
Inoltre vengono apportati cambiamenti al file db2j.properties:- Il nome WAS_HOME/cloudscape/dbj.properties cambia in WAS_HOME/derby/derby.properties
- All'interno del file, i nomi delle proprietà cambiano da db2j.drda.* a derby.drda.*
- Una migrazione parzialmente o completamente riuscita del database cambia l'ubicazione e il nome del database secondo l'esempio seguente:
- Nome precedente del database: c:\temp\mydb
- Nuovo nome del database: Il nuovo nome comprende un codice hash che combina l'intero nome di percorso del database precedente e la data e ora della migrazione. Il nuovo nome include inoltre il nome precedente del database e la data e ora completi. Esempio: install_root\profiles\profile_name\databases\nome_db_codiceHash_dataOra
Annotare i nomi esatti dei percorsi: Sia per le migrazioni parzialmente riuscite che per le migrazioni non riuscite, i messaggi dei log contengono sia il nome di percorso precedente del database che quello nuovo, che devono essere utilizzati per eseguire la migrazione manuale. Annotare con precisione questi nomi di percorso.
Operazioni successive
Se la migrazione riesce in modo parziale, tentare di risolvere i problemi relativi al nuovo database v10.1.x solo se si ha una conoscenza approfondita di Cloudscape. In caso contrario, eliminare il nuovo database. Eseguire la procedura di migrazione manuale sul database originario, come accadrebbe per un database la cui migrazione automatica non riesce per nulla.
Consultare
Esecuzione manuale dell'aggiornamento di Cloudscape per le istruzioni.
Per le istanze diCloudscape la cui migrazione è riuscita, occorre tenere presente che le nuove origini dati con ambito cella possono essere utilizzate solo da nodi su cui sia in esecuzione la versione 6.0.2 o successiva di WebSphere ESB. Le versioni precedenti del prodotto non supportano il nuovo Cloudscape; quando le applicazioni su nodi precedenti alla versione 6.0.2 tentano di accedere a un'origine dati Cloudscape 10.1.x, il server genererà eccezioni al runtime.