DBCC ShrinkDatabase()
DBCC ShrinkFile()
Simplement...
DBCC ShrinkDatabase()
: réduire tous les fichiersDBCC ShrinkFile()
: un seul fichierPar exemple, vous pouvez avoir un problème de sauvegarde de journal et il est devenu hors de contrôle, donc vous exécutez DBCC ShrinkFile()
.
Vous presque n'utilisez jamais ShrinkDatabase
.
Avant d'envisager d'utiliser l'une ou l'autre commande, veuillez lire le blog de Paul Randal sur la réduction .
Je ne réduirais aucun des fichiers (mdf, ldf) sauf s'il y avait une raison claire. Les fichiers ont la taille qu'ils ont car ils doivent l'être. Les blogs suggérant de le faire dans le cadre d'une maintenance régulière ne comprennent probablement pas comment fonctionne SQL Server.
Une base de données par défaut a deux fichiers
MyDb.MDF et MyDb.LDF
Le fichier MDF est le fichier de données où réside la partition principale. En fonction de vos besoins, vous pouvez partitionner une base de données en plusieurs fichiers. Ceci est fait pour que les données (une ou plusieurs tables) puissent s'étendre plusieurs fichiers qui sont généralement placés sur des disques durs séparés pour obtenir des performances plus élevées.
Si vous réduisez une base de données, tous les fichiers associés à cette base de données seront réduits.
Si vous réduisez un fichier, seul le fichier choisi sera réduit.
Vous avez seulement besoin d'utiliser la commande Shrink Database. Mais ce n'est généralement pas une bonne pratique de le faire et ce n'est pas non plus une pratique recommandée.
Si vous nous dites quel est le problème que vous rencontrez, nous pouvons vous donner plus d'informations sur la façon de le résoudre.
Très probablement, nous n'utilisons que le fichier rétractable dbcc. sp_helpdb 'databasename' fournit la liste des fichiers de données et journaux dans une base de données.
clic droit sur le studio de gestion, tâches-> rétrécir-> le fichier indique combien de% vous pouvez réduire.
quoi que nous rétrécissions, il est disponible sur le disque en tant qu'espace libre.
par exemple: utilisez le fichier de rétrécissement dbcc 'databasename' (fileid, 100)
ici 100 c'est 100 Mo
fileid peut obtenir de sp_helpdb 'nom de la base de données'