Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Cosa accade al backup del db se cambia PC?
domenica 21 febbraio 2010 - 04.24
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
dom 21 feb 2010 - 04:24
Cerco di esporre il quesito:
Ho un db su sql server 2008.
Tutte le tabelle di questo database sono associate ad un dato utente che non è sa di sql server.
Se percaso formatto il pc, o voglio portare questo database su di un altro pc ove c'è un altro sql server, cosa devo fare?
Devo creare su sql server di destinazione lo stesso utente, con stessa login e password, che avevo sul vecchio sql server e tutto fila liscio?
Oppure devo creare un nuovo utente ead andare tabella per tabella a riassociarle al nuovo utente che creo?
Grazie a tutti
Riccardo D'Aria
Riccardo D'Aria
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
dom 21 feb 2010 - 10:54
>Se percaso formatto il pc, o voglio portare questo database su
>di un altro pc ove c'è un altro sql server, cosa devo fare?
>
>Devo creare su sql server di destinazione lo stesso utente, con
>stessa login e password, che avevo sul vecchio sql server e tutto
>fila liscio?
>
>Oppure devo creare un nuovo utente ead andare tabella per tabella
>a riassociarle al nuovo utente che creo?
Ciao Riccardo,
Iniziamo col dire che esistono 2 tipi di utenze: le login e gli user account.
Le login si definiscono a livello di istanza e sono utilizzate per autenticarsi ad essa.
Gli user account si definiscono a livello di database, sono associati ad una login e su di essi si definiscono le permission sugli oggetti.
Quando esegui un full backup, verranno copiati anch'essi dato che fisicamente risiedono nella tabella sysusers presente in ogni database, quindi verranno mantenute tutte le permission sugli oggetti.
Le login essendo a livello di istanza (si trovano nella tabella syslogins nel master) non verranno backuppate insieme al tuo db.
Quindi, se pialli il server oppure esegui il restore su una istanza differente dovrai fare 3 cose:
1) Definire una o più logins sulla nuova istanza;
2) Eseguire il restore del db;
3) Riassociare ogni user account con la corrispettiva login (dato che il SID della login sarà sicuramente differente rispetto a quello d'origine).
Quest'ultima operazione può essere eseguita con il comando ALTER USER userName WITH LOGIN = loginName; oppure mediante la stored procedure di sistema sp_change_users_login:
http://msdn.microsoft.com/en-us/library/ms176060.aspx
http://msdn.microsoft.com/en-us/library/ms174378.aspx
>Grazie a tutti
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Torna su
Stanze Forum
Elenco Threads
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 !