Procedura: Compattazione di un database (SQL Server Management Studio)

In questo argomento viene descritta la procedura per la compattazione di un database mediante Esplora oggetti in SQL Server Management Studio. Non è possibile ridurre il database a dimensioni inferiori a quelle minime previste per lo stesso database. Le dimensioni minime corrispondono alle dimensioni specificate quando il database è stato inizialmente creato o alle ultime dimensioni impostate in modo esplicito mediante un'operazione di modifica delle dimensioni dei file, ad esempio DBCC SHRINKFILE. Pertanto, se originariamente è stato creato un database con dimensioni pari a 10 MB e le dimensioni sono aumentate fino a 100 MB, è possibile compattare il database fino a un minimo di 10 MB, anche se tutti i dati nel database sono stati eliminati.

La compattazione dei file di dati consente di recuperare spazio mediante lo spostamento di pagine di dati dalla fine del file in uno spazio libero più prossimo all'inizio del file. Quando alla fine del file viene reso disponibile spazio sufficiente, le pagine di dati alla fine del file possono essere deallocate e restituite al file system.

Nota di attenzioneAttenzione

I dati spostati al fine della compattazione di un file possono essere inseriti in qualsiasi posizione disponibile nel file. Ciò comporta la frammentazione dell'indice, con la possibile riduzione delle prestazioni delle query per la ricerca di un intervallo dell'indice. Per eliminare la frammentazione, ricompilare gli indici del file dopo la compattazione.

Per compattare un database

  1. In Esplora oggetti connettersi a un'istanza del Motore di database di SQL Server, quindi espandere tale istanza.

  2. Espandere Database e quindi fare clic con il pulsante destro del mouse sul database che si desidera compattare.

  3. Scegliere Attività, Compatta e quindi fare clic su Database.

  4. Facoltativamente, selezionare la casella di controllo Riorganizza i file prima di rilasciare lo spazio inutilizzato. Se l'opzione è selezionata, è necessario specificare un valore per Spazio massimo disponibile nei file dopo la compattazione.

    Selezionare l'opzione equivale a specificare un valore target_percent per l'esecuzione di DBCC SHRINKDATABASE. La deselezione dell'opzione equivale all'esecuzione di DBCC SHRINKDATABASE. Per impostazione predefinita, questa opzione è deselezionata.

  5. Immettere la percentuale massima di spazio che si desidera sia disponibile nei file di database dopo la compattazione del database. I valori consentiti sono compresi tra 0 e 99. Questa opzione è disponibile solo se Riorganizza i file prima di rilasciare lo spazio inutilizzato è abilitato.

  6. Fare clic su OK.