Réduire une grande base de données SQL Server

13

J'ai une grande base de données de test SQL Server 2008 (1,9 To) et je souhaite réduire sa taille sur le disque. J'ai supprimé des tables inutilisées et purgé des quantités importantes de données, mais sa taille sur le disque ne l'a pas réduit. Que devrais-je faire?

J'ai regardé la tâche Shrink dans SSMS, mais les options sont déroutantes. Dois-je réduire la base de données ou les fichiers? Et avec quelles options?

entrez la description de l'image ici entrez la description de l'image ici

Dan
la source
Si vous cherchez à réduire la taille, lisez ceci - sqlservercentral.com/articles/data-modeling/71725
SqlSandwiches

Réponses:

10

Sélectionnez le deuxième bouton radio Reorganize pages before releasing unused space, puis dans l' Shrink file to:option, mettez le Mo minimum spécifié. Vous serez corrigé si vous mettez un Mo inférieur à celui spécifié. Cliquez ensuite sur OK.

J'ai constaté que l'utilisation des commandes DBCC pour ces travaux tout le temps, car l'interface graphique ne fonctionnait pas dans certains de mes cas.

Notez également que l'espace supplémentaire est là pour une raison. Vous aurez besoin d'espace pour la croissance future, mais c'est un tout nouveau sujet de performance.

StanleyJohns
la source
3
Pour mieux répondre à la question, j'expliquerais la différence entre la réduction de la base de données et la réduction des fichiers, ainsi que la différence entre libérer de l'espace inutilisé et réorganiser les pages. Au lieu de cela, vous venez de dire "faites ceci" sans explication.
Nick Chammas
5

Si vous disposez de la compression 2008 (éditions Enterprise ou Developer), vous devriez pouvoir réduire votre grande base de données à l'aide d'index et de tables compressés. Le livre blanc de MS « Compression des données: stratégie, planification de la capacité et meilleures pratiques » devrait être en mesure de vous aider à trouver ce dont vous avez besoin. Citez-le:

"La fonction de compression des données du logiciel de base de données Microsoft® SQL Server® 2008 peut aider à réduire la taille de la base de données et à améliorer les performances des charges de travail intensives d'E / S. Cependant, des ressources CPU supplémentaires sont requises sur le serveur de base de données pour compresser et décompresser les données, tandis que les données sont échangées avec l'application. Par conséquent, il est important de comprendre les caractéristiques de la charge de travail lors du choix des tables à compresser. Ce livre blanc fournit des conseils sur les points suivants:

How to decide which tables and indexes to compress
How to estimate the resources required to compress a table
How to reclaim space released by data compression
The performance impacts of data compression on typical workloads"

Voici une explication plus courte.

Vous pouvez trouver une estimation de l'espace que vous pouvez économiser en utilisant la procédure stockée sp_estimate_data_compression_savings .

Marian
la source