サイズが最大4GBのデータベースがあります。スキーマと基本データのみを含むデータベースが必要なため、そのデータベースをコピーして99%のデータを削除しました(ほとんどの場合、静的データが保持されます)。
現在の問題は、MDFファイルのサイズがまだ最大4GBであるということです。(たとえば、これを使用して)テーブルのサイズを読み取ると、合計で20MB未満になります。ログファイルはすでに縮小されていますが、実行したスクリプトはどれもDBファイルを縮小するために機能しませんでした。
注:私は通常これを行いませんが、今回はデータベースを縮小する必要があります(推奨されていないことはわかっています)
編集:+有用な情報
指示:
exec sp_spaceused
出力:
database_name database_size unallocated_space
AccudemiaEmptyDb 3648.38 MB 4.21 MB
指示:
select object_name(id) as objname, SUM(dpages*8) as dpages, COUNT(*) as cnt
from sysindexes
group by id
order by dpages desc
出力:
object_name(id) sum(dpages*8) count(*)
sysdercv 675328 1
sysxmitqueue 359776 1
sysdesend 72216 1
sysconvgroup 47704 1
sysobjvalues 4760 5
sec_OperationAccessRule 3472 5
sec_PageAccessRule 2232 5
syscolpars 656 11
AuditObjects 624 2
sysmultiobjrefs 408 5
HelpPage 376 8
sysschobjs 352 9
syssoftobjrefs 328 7
sysidxstats 272 10
sysrscols 200 1
Translation 160 3
sysallocunits 128 3
sysiscols 128 8
syssingleobjrefs 96 5
sysrowsets 80 4