Manutenzione DB

mercoledì 19 settembre 2012 - 15.43
Tag Elenco Tags  SQL Server 2000

vittosss Profilo | Junior Member

Ciao a tutti,
ho deciso di eseguire alcune azioni al fine di migliorare le prestazioni del mio db. in generale, credo, ed eventualmente criticatemi, dovrei sapere cosa fare ma sono naturalmente aperto a consigli ed opinioni. mi piacrebbe anche avere un parere in merito all'ordine di esecuzione.
vado ad illustrare.
1- cancellare i dati cancellabili dalle tabelle
2- truncate log
3- controllo impostazioni uso memoria ( statica o dinamica )
4- controllo % incremento ( per evitare frammentazione )
5- checkdb
6- deframmentazione indici
7- deframmentazione dischi
8- aggiornamento statistiche
9- creazione nuovi indici
10- spostare i file dei db. mdf del mio db su un disco fisico. ldf su altro disco fisico. tempdb su altro disco fisico.

che ne dite?

ps dbcc dbreindex o dbcc indexdefrag?
sono due comandi diversi immagino. uno verifica la frammentazione dell'indice l'altro ricrea indici giusto?

alx_81 Profilo | Guru

>Ciao a tutti,
ciao

>1- cancellare i dati cancellabili dalle tabelle
se non ti servono ok, ma questo ovviamente creerà un po' di deframmentazione

>2- truncate log
truncate? o shrink per ridurre la dimensione dopo la cancellazione?

>3- controllo impostazioni uso memoria ( statica o dinamica )
ok, questo fa sempre bene, e puoi farlo alla fine, anche perchè vedi meglio i contatori quando sei a regime secondo me (le cache soprattutto)

>4- controllo % incremento ( per evitare frammentazione )
% incremento di cosa? file? o stai parlando di fill factor? e quindi di indici?

>5- checkdb
anche questo, fallo ma non migliora le prestazioni, serve per controllare che il tuo database non sia "corrotto"

>6- deframmentazione indici
dopo la cancellazione lo saranno di certo. Ma puoi fare la rebuild alla fine così parti da una situazione ben organizzata.

>7- deframmentazione dischi
ok, se non ricordo male, dipende da che dischi usi, ma la deframmentazione dei dischi aiuta.

>8- aggiornamento statistiche
ok

>9- creazione nuovi indici
ok, se servono.

>10- spostare i file dei db. mdf del mio db su un disco fisico. ldf su altro disco fisico. tempdb su altro disco fisico.
Qui c'è un mondo, dipende da quanti mdf o ndf utente hai, che sottosistema disco hai, e ricorda sempre di dedicare, se possibile, un disco veloce al tempdb, soprattutto al suo ldf, visto che sql ne fa un uso piuttosto elevato in certi contesti.

>ps dbcc dbreindex o dbcc indexdefrag?
>sono due comandi diversi immagino. uno verifica la frammentazione dell'indice l'altro ricrea indici giusto?
il primo fa il rebuild degli indici (nelle nuove versioni, usare ALTER INDEX, ma non è il tuo caso a quanto vedo), il secondo deframmenta (se non erro sulle foglie) gli indici. Anch'esso è deprecato nelle nuove versioni di sql.

--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi
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