sqlog

sql & co
posts - 78, comments - 14, trackbacks - 1

Migrazione Sql Server

E' da un po' che non scrivo, causa vari fattori, non ultimo il fatto che cambiano azienda mi sono dovuto "assestare" un pochino. Attualmente mi sto occupando di eseguire la migrazione da SQL 2000 a 2005 di tutti i database aziendali. Da qui a qualche settimana, comunque ho intenzione di preparare un post più dettagliato sul lavoro svolto, dato che non si è trattato semplicemente di un DeAttach/Attach , ma ho preferito “re-scriptare” per intero tutti i database e fare un po’ di pulizia (vecchi utenti, viste, procedure, funzioni, tabelle) ed esportare/importare tutti i dati.

A tal proposito ho fatto uso di due tool, l’ottimo Red Gate SQL Compare per esegure la comparazione fra gli schemi di due database.

Per quanto riguarda l’export dei dati in prima istanza mi ero appoggiato a Red Gate SQL Data Compare, ma onestamente l’ho trovato parecchio lento e non adatto alle mie necessità.
Mi sono quindi fatto un giro per la rete e trovando (stranamente) poche alternative (non ultimo SSIS), mi sono scritto un piccolo tool che copriva le mie necessità (poter essere schedulato e configurato via file di configurazione). Per l’occasione ho pubblicato tutto su Codeplex (Sql Server DataPump).

Print | posted on martedì 3 giugno 2008 17:26 |

Feedback

Gravatar

# re: Migrazione Sql Server

Ciao

in verità mi son scritto l'applicazione ad hoc proprio per evitare l'export e l'import (che avrei dovuto fare con BCP). Ho utilizzato il SQLBulkCopy agganciato ad un SQLDataReader, (mi sembra un buon compromesso fra velocità e sicurezza).
Con un normale tool di export avrei dovuto generare script (o cmq un eventuale file nativo nel caso per es. di BCP) e reimportare. Con questo tool salto un passaggio, risparmiando non poco tempo soprtattutto sul db di parecchi Gb.
Avevo pensato anche al SSIS, ma secondo me non è il massimo per fare questo tipo di operazioni dove (come nel mio caso) ci sono parecchie decine di db da spostare, trovo più comodo crearmi vari file di configurazione e lanciare (anche in parallelo) varie esportazioni (parallelizzando risparmio qualcosina, magari anche su macchine diverse).

Il lavoro di pulizia l'ho fatto in parte in fase di rigenerazione degli schema (eliminando utenti, viste, etc... non piu validi) in parte dopo con i DB ancora vuoti. A questo aggiungo che alcuni DB parecchio vecchi (alcni risalivano anche ad una precedente istanza SQL 7.0) non erano messi proprio bene e ho optato per la rigenerazione proprio per eliminare eventuali problemi. A questo metti che ho dovuto "normalizzare" tutti gli schema dei DB che spesso presentavano (erroneamente) non DBO ma il nome di altri utenti e reimpostare tutte le Collate (in molto db ancora venivano usate le SQL_ ormai dismesse).

Se hai consigli da darmi o altre curiosità sono a tua disposizione! :)
03/06/2008 21:43 | pietro partescano
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET