Domanda

Sto sviluppando un piano per SQL Server 2012 EE per ridimensionare e digitare correttamente (nchar to char tipi) Alcuni campi NVARCHARCH (MAX) inutilmente Unicode e vorrebbero ottimizzare le dimensioni del database come parte dei tempi di fermo effettuando una volta restringersi. Gli esperimenti hanno mostrato un risparmio di spazio assegnato del 50% che è 11 g di dati.

Dopo aver letto e sperimentare, è evidente che il restringimento di un database causa la frammentazione degli indici e gli indici di ricostruzione causano espandere il database. Una vera situazione di cattura-22. Non voglio lasciare il 50% di spazio libero nel database che è 11 g di memoria disco in questo caso.

Di seguito è riportato un approccio decente per un retro di una volta che consentirebbe di finire con indici non fragili e statistiche di indice aggiornate?

o Backup w / Verifica e backup duplicati.

o Doccia tutti gli indici.

o Ricostruisci le tabelle troppo grasse tramite copia in nuove tabelle, quindi rilasciare e rinominare le tabelle. Questo sta attualmente lavorando bene.

O Riduci il database lasciando una quantità ragionevole di spazio libero.

o Ricreare tutti gli indici che sono stati caduti.

o Convalidare il database e controllare la frammentazione.

sottolineando eventuali avvertimenti, suggerimenti, gantistici o alternative da considerare molto apprezzato.

thx, dave

È stato utile?

Soluzione

Il modello di recupero semplice non "spegne il registro" - così generalmente, a meno che non si spezzisca nessuna di queste attività in pezzi molto piccoli, semplicemente pre-dimensionare il registro abbastanza grande da affrontare le ricostruzioni più grandi, e non preoccuparti di scherzare con il modello di recupero.

Inoltre, e ancora in generale, a meno che i tuoi dati non saranno nuovamente mai crescono di nuovo, liberando lo spazio temporaneamente è di piccolo vantaggio (dato che non so cosa intendi per "ragionevole"). Dovrai lasciare spazio libero sull'azionamento, nel caso in cui il database cresca di nuovo, giusto? Perché restringelo solo per far crescere di nuovo? Hai intenzione di fornire noleggio a breve termine su quello spazio fino a quando il database cresce? Stai solo cercando di evitare gli avvisi di spazio% gratuiti?

Suggerimento: dai questi post una buona lettura ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top