File Logico, Mdf, Log

lunedì 22 marzo 2010 - 14.44

vittosss Profilo | Junior Member

Ciao a tutti, c'è qualche anima pia che ha la pazienza e la voglia e in parole semplici mi spiega come funziona la questione file logico, filegroup ecc...ecc....?
io ho capito questo. ogni db ha 2 files. mdf e ldf. mdf = struttura e dati, ldf = log. questi due appartengono a uno e solo filegroup che è un nome logico.
quindi db pippo, ha 2 logical file name, uno per ldf e uno per mdf. eppure non capisco bene cosa me ne faccio...quando faccio un restore db spesso mi creano problemi.
quando poi leggo e trovo "backup di file e filegroup"....la crisi si fa incipiente.

il mio file di log cresce parecchio, recovery model = full. per renderlo + umano? backup del log? shrink?

infine, se ho un tempdb considerevolmente grosso? ho letto che questo viene distrutto e ricreato, sulla base del model, ogni qual volta riavvio. ma io riavvio molto di rado...


ringrazio in anticipo chiunque abbia la voglia e il tempo di rispondere.
ciao
V.

lbenaglia Profilo | Guru

>Ciao a tutti, c'è qualche anima pia che ha la pazienza e la voglia
>e in parole semplici mi spiega come funziona la questione file
>logico, filegroup ecc...ecc....?
>io ho capito questo. ogni db ha 2 files. mdf e ldf. mdf = struttura
>e dati, ldf = log. questi due appartengono a uno e solo filegroup
>che è un nome logico.
>quindi db pippo, ha 2 logical file name, uno per ldf e uno per
>mdf. eppure non capisco bene cosa me ne faccio...quando faccio
>un restore db spesso mi creano problemi.

Ciao Vittorio,

Sui Books Online l'argomento è spiegato in modo chiaro e completo:
http://msdn.microsoft.com/it-it/library/ms179316.aspx

Puoi spiegarci che problemi riscontri in fase di restore?

>il mio file di log cresce parecchio, recovery model = full. per
>renderlo + umano? backup del log? shrink?
Dipende.
Ti serve eseguire recovery point-in-time (ovvero ad una certa ora o all'ultima transazione prima di un crash)?
Se la risposta è si mantieni il full recovery model e definisci una politica di backup del t-log in modo da garantirti il ripristino in base ai tuoi SLA e con una frequenza tale da evitare che cresca oltre una determinata soglia; se la risposta è no, imposta il simple recovery model e ridimensiona il t-log con una DBCC SHRINKFILE ad una dimensione congrua con quelle del tuo db ed in base al suo utilizzo.

>infine, se ho un tempdb considerevolmente grosso? ho letto che
>questo viene distrutto e ricreato, sulla base del model, ogni
>qual volta riavvio. ma io riavvio molto di rado...
Se è grosso significa che lo usi.
Ora, come fare per usarlo meno?
Dipende da come lo usi
Evita di creare inutilmente tabelle temporanee, variabili table, ordinamenti inutili nelle query, definisci gli indici necessari in modo da generare piani di esecuzioni più efficienti e che non si appoggino al tempdb, ecc.

Una trattazione completa sull'utilizzo del tempdb la trovi in questo paragrafo dei Books Online:
http://msdn.microsoft.com/it-it/library/ms345368.aspx

>ringrazio in anticipo chiunque abbia la voglia e il tempo di
>rispondere.
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5