Проблема встаёт может раз в год может реже, и каждый год открываю решения заного, надоело.
делаем так
сначала узнаём какие имена и где лежат БД
в Query Analyser выбираю нужную БД и пишу запрос
[cc lang=”sql”] SELECT CAST(name AS VARCHAR(20)) AS ‘Name’,
CAST(filename AS VARCHAR(75)) AS ‘Filename’
FROM sysfiles[/cc]
он говорит
[cc lang=”sql”]ExpressDiagnostic E:\Databases\ExpressDiagnosticTest.MDF
ExpressDiagnostic_lo E:\Databases\ExpressDiagnosticTest_Log.LDF
[/cc]
теперь я выполняю вот такой запрос
[cc lang=”sql”]
CHECKPOINT
BACKUP LOG “ExpressDiagnosticTest” WITH TRUNCATE_ONLY
CHECKPOINT
DBCC SHRINKFILE (‘ExpressDiagnostic_log’)[/cc]
ExpressDiagnosticTest – полное название базы
ExpressDiagnostic_log – системное Имя логфайла из результата первого запроса (!!!!не вот это ExpressDiagnosticTest_Log)
допустим у меня несколько баз
[cc lang=”sql”]ExpressDiagnosticTest
ExpressDiagnosticTest2010
ExpressDiagnosticTest2011[/cc]
И т.п. а системное имя логфайла всегда одно ExpressDiagnostic_log
И всё логфайлы не весят десятки содни гигабайт