Migrazione SQL SERVER 2000 - 2008

lunedì 04 aprile 2011 - 11.30
Tag Elenco Tags  SQL Server 2008 R2

prova2011 Profilo | Newbie

Salve,
ho un'applicazione ASP-SQLSERVER 2000 che girà tranquillamente su WINDOWS SERVER 2003. Ho cambiato server (sono passato a un WINDOWS SERVER 2008 + SQL SERVER 2008 R2). Sto tentando di effettuare la migrazione tramite l'IMPORT-EXPORT, ma i campi indicizzati della tabella sorgente, non mantengono le stesse proprietà nella tabella destinazione. Ad esempio i campi ID sono INT e non ammettono valore NULL, ma allo stesso tempo non sono indicizzato e incrementati automaticamente e pertanto quando provo a fare un'insert (dove il campo ID non lo valorizzo poichè mi dovrebbe essere assegnato automaticamente) il programma mi va in errore poichè mi dice che il campo ID non ammette il valore NULL. Come posso migrare le tabelle con tutte le proprietà precedenti?

Grazie.

alx_81 Profilo | Guru

>Salve,
Ciao e benvenuto su dotnethell.it!

>ho un'applicazione ASP-SQLSERVER 2000 che girà tranquillamente
>su WINDOWS SERVER 2003. Ho cambiato server (sono passato a un
>WINDOWS SERVER 2008 + SQL SERVER 2008 R2). Sto tentando di effettuare
>la migrazione tramite l'IMPORT-EXPORT, ma i campi indicizzati
>della tabella sorgente, non mantengono le stesse proprietà nella
>tabella destinazione. Ad esempio i campi ID sono INT e non ammettono
>valore NULL, ma allo stesso tempo non sono indicizzato e incrementati
>automaticamente e pertanto quando provo a fare un'insert (dove
>il campo ID non lo valorizzo poichè mi dovrebbe essere assegnato
>automaticamente) il programma mi va in errore poichè mi dice
>che il campo ID non ammette il valore NULL. Come posso migrare
>le tabelle con tutte le proprietà precedenti?
per effettuare la migrazione ci sono vari approcci. Diciamo che nel tuo caso eviterei di usare import export (che è molto orientato ai dati e non alle strutture) ma farei un bel backup da 2000 per eseguire poi un restore su 2008. Che ne dici?

>Grazie.
di nulla!
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

lbenaglia Profilo | Guru

>Diciamo che
>nel tuo caso eviterei di usare import export (che è molto orientato
>ai dati e non alle strutture) ma farei un bel backup da 2000
>per eseguire poi un restore su 2008. Che ne dici?

Concordo
Ricordati al termine di:

1) Impostare un nuovo dbowner (ad esempio "sa");
2) Aggiornare le statistiche di tutte le tabelle in modalità FULL SCAN
3) Ricostruire tutti gli indici
4) Rimappare gli user account alle corrispettive login specificando un default schema (ad esempio "dbo").

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

prova2011 Profilo | Newbie

Si backup e restore funziona alla grande.
Credevo che la funzione import - export avesse lo stesso vantaggio.

Grazie 1000

lbenaglia Profilo | Guru

>Si backup e restore funziona alla grande.
OK.
Ricordati di eseguire anche gli altri 4 punti se non vuoi incorrere nei problemi di utenti orfani o performance scadenti.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/

a2piazza Profilo | Newbie

Scusate cosa si intende per "Impostare un nuovo dbowner" e "Rimappare gli user account alle corrispettive login specificando un default schema". Grazie.

lbenaglia Profilo | Guru

>Scusate cosa si intende per "Impostare un nuovo dbowner" e "Rimappare
>gli user account alle corrispettive login specificando un default
>schema".

Ciao,

Ogni db ha un proprietario (owner) che di default corrisponde alla login che l'ha creato. Puoi modificarlo da SSMS o via ALTER AUTHORIZATION.
Per la seconda domanda fai riferimento a questo paragrafo dei Books Online:
http://msdn.microsoft.com/en-us/library/ms175475.aspx

>Grazie.
Prego,

Ciao!

--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5