2009-08-18 16 views
7

Quali sono alcuni strumenti (commerciali o OSS) che forniscono un meccanismo basato sulla GUI per la creazione di script di aggiornamento dello schema? Per essere chiari, ecco le responsabilità dello strumento:Strumento di migrazione dello schema Oracle automatizzato

  • Ottenere la connessione alla versione dello schema recente (denominata "origine").
  • Ottenere la connessione alla versione precedente dello schema (denominata "destinazione").
  • Confronta tutti gli oggetti schema tra origine e destinazione.
  • Creare uno script per rendere lo schema di destinazione equivalente allo schema di origine ("script di aggiornamento").
  • Creare uno script di ripristino per ripristinare lo schema di origine, utilizzato se lo script di aggiornamento non riesce (in qualsiasi momento).
  • Creare singoli file per oggetti schema.

Il software deve:

  • Utilizzare ALTER TABLE invece di DROP e CREATE per le colonne rinominate.
  • Lavorare con Oracle 10g o versioni successive.
  • Creare script che possono essere eseguiti in batch (tramite riga di comando).
  • Processo di installazione banale.
  • (Bonus) Creare script che possono essere eseguiti con SQL * Plus.

Ecco alcuni esempi (da StackOverflow, ServerFault, e le ricerche di Google):

software che non soddisfa i criteri, o non possono essere valutati , include:

  • TOAD
  • PL/SQL Developer - Istruzioni SQL * Plus non valide. Non produce istruzioni ALTER.
  • SQL Fairy - Nessun programma di installazione. Complesso processo di installazione. Scarsamente documentato
  • - Valutazione di set di dati danneggiati, assistenza clienti scadente.
  • OrbitDB - Valutazione set di dati danneggiati.
  • SchemaCrawler - Nessuna versione di download facilmente identificabile per i database Oracle.
  • SQL Compare - SQL Server, non Oracle.
  • LiquiBase - Richiede la modifica del processo di sviluppo. Nessun programma di installazione. Modifica manualmente i file di configurazione. Non riconosce il proprio parametro baseUrl.

L'unico errore paralizzante della versione di valutazione è nel tempo. La paralisi limitando il numero di tabelle e viste nasconde possibili bug visibili solo nel software durante il tentativo di migrare centinaia di tabelle e viste.

risposta

2

Non penso che SQLDeveloper sia la strada da percorrere. È ottimo per la migrazione tra diversi database, non le modifiche incrementali a un modello di dati.

0

Toad for Oracle con il modulo DBA fa tutto questo abbastanza bene con l'eccezione dello script di rollback.

0

cx_OracleTools

Se non mente strumenti orientati a linea di comando di questo pacchetto open source farà ciò che si richiede, con l'eccezione di generare script di rollback.

ExportObjects [opzioni]

Esporta tutti gli oggetti in uno schema come una serie di directory che prendono il nome il tipo di oggetto che contiene una serie di file che prendono il nome dell'oggetto stesso.

GeneratePatch [opzioni] dadir TODIR

Genera una patch per le differenze di oggetti in due directory (che può sono stati creati con ExportObjects) e assicura che lo script patch può essere eseguito senza paura di incontrare errori a causa delle dipendenze tra gli oggetti .

http://cx-oracletools.sourceforge.net/

+0

Non è un progetto OSS attivo. Molto probabilmente bacato. Il 2006 era qualche anno fa adesso. –

+0

@Dave, non è bacato, è solo completato e stabile. ;-) Lo usiamo in produzione ogni giorno. –

Problemi correlati