私はインターネット全体を探していましたが、私の問題に対する許容できる解決策を見つけることができません。妥協のない解決策さえあるのだろうかと思っています...
私はDBAではありませんが、巨大なWebサイトで作業している一人のチームであり、追加の団体に追加の資金を提供することはありません。そのため、できる限り最善を尽くしています。
私たちのバックアップ計画はひどいものであり、私はそれを改善するのに本当に苦労しています。現在、SQL Server 2005を実行しているサーバーは2つあります。ミラーリングされたデータベース(監視なし)があり、正常に機能しているようです。私は正午と深夜に完全バックアップを行います。これらはサービスプロバイダーによって毎晩テープにバックアップされ、古いレコードを手元に置いておくために、バックアップファイルを毎週DVDに書き込みます。ミラーリングは監視サーバーがないと意味がないように見えるので、最終的にはログ配布に切り替えたいと思います。
問題は、トランザクションログがノンストップで増加していることです。私が行った調査から、ミラーリングされたデータベースのログファイルを切り捨てることができないようです。では、どうすればファイルの成長を止めることができますか?
このウェブページに基づいて、私はこれを試しました:
USE dbname
GO
CHECKPOINT
GO
BACKUP LOG dbname TO DISK='NULL' WITH NOFORMAT, INIT, NAME = N'dbnameLog Backup', SKIP, NOREWIND, NOUNLOAD
GO
DBCC SHRINKFILE('dbname_Log', 2048)
GO
しかし、それはうまくいきませんでした。私が見つけた他のすべては、ミラーを機能させるために、backuplogコマンドを実行する前にミラーを無効にする必要があると言っています。
私の質問(TL; DR)
ミラーを無効にせずにトランザクションログファイルを縮小するにはどうすればよいですか?