Meilleur auteur de réponses
Syntaxe du SHRINKDATABASE dans SLQ Server 2008 R2

Question
-
Bonjour,
Question de débutant: J'ai une base de données qui dispose d'un espace de 105 Mo alors quelle n'en occupe que 5 Mo : je voulais mettre en pratique la fonction SQL en lui disant de n'occuper que 50% du total:
DBCC SHRINKDATABASE
( database_name | database_id | 0
[ , target_percent ]
[ , { NOTRUNCATE | TRUNCATEONLY } ]
)
[ WITH NO_INFOMSGS ]
-------------------
J'ai essayé la syntaxe :
DBCC SHRINKDATABASE
('ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067'
,50, NOTRUNCATE
)-----------
Mais en réponse j'ai 6 fois le message :
DBCC SHRINKDATABASE : le fichier ID 1 de la base de données ID 19 a été ignoré, parce qu'il n'a pas assez d'espace disponible à récupérer.
Qu'est-ce que j'ai raté ?
Merci
Réponses
-
Hello,
En effet le fichier MDF (fileid=1) est utilisé à 84%, donc tu ne pourras pas le ramener à 50% :
% = UsedExtents * 100 / TotalExtents => 44*100/52=84,6%
Par contre tu devrais avoir récupéré de la place dans les autres fichiers.
David B.- Marqué comme réponse WLID1966 mardi 29 mars 2011 20:10
Toutes les réponses
-
-
Bonsoir David, et merci.
Voici le résultat de la requête :
Colonne TotalExtents:52
320
320
320
320
320Colonne UserExtents:
44
1
1
3
1
1
Colonne Name:ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082
ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20100927
ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101004
ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101018
ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101025
ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101101Colonne FileName :
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082.mdf
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20100927.ndf
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101004.ndf
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101018.ndf
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101025.ndf
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ApplicationdeserviceWebAnalytics_ReportingDB_f474dd9d-27fe-4c04-8067-af0387135082Aggregation20101101.ndfDatabase_size:
104.56 MB
Unallocated space:
100.57 MBReserved: 2744 KB
Data : 1200 KB
Index size: 1272 KB
Unused: 272 KB -
Hello,
En effet le fichier MDF (fileid=1) est utilisé à 84%, donc tu ne pourras pas le ramener à 50% :
% = UsedExtents * 100 / TotalExtents => 44*100/52=84,6%
Par contre tu devrais avoir récupéré de la place dans les autres fichiers.
David B.- Marqué comme réponse WLID1966 mardi 29 mars 2011 20:10
-