データベース'tempdb'のログがいっぱいです.データベースのトランザクション・ログをバックアップして、ログ・スペースを解放してください.


sql 2000/2005のデータ処理量が大きい場合、プログラムは「データベース'tempdb'のログがいっぱいです.データベースのトランザクション・ログをバックアップしてログ領域を解放してください」と報告します.
データベース・ログを縮小したり、空にしたりすることができます(ログ・ファイルが重要でない場合)
トランザクションログのクリアコマンド:DUMP TRANSACTION dbname WITH NO_LOG
トランケートトランザクションログコマンド:BACKUP LOG dbname WITH NO_LOGシュリンクログ操作:1、右クリックデータベース-属性-すべてのタスク-シュリンクデータベース-ファイル-選択ファイル
2、この方法では、SQL Serverを再起動する必要があります.
  • SQLサーバを停止します.コマンドプロンプトを開き、次のコマンドを入力してSQL Serverを起動します.sqlservr-c-f-cと-fパラメータを入力してSQL Serverを最小構成モードで起動し、データファイルのtempdbサイズを1 MB、ログファイルのtempdbを0.5 MBにします.注:SQL Serverの名前付きインスタンスを使用する場合は、適切なフォルダ(Program FilesMicrosoft SQL ServerMSSQL$instance nameBinn)に切り替え、-sスイッチ(-s%instance_name%)を使用する必要があります.
  • クエリー・アナライザを使用してSQL Serverに接続し、次のTransact-SQLコマンドを実行します.
    ALTER DATABASE tempdb MODIFY FILE
    
       (NAME = 'tempdev', SIZE = target_size_in_MB) 
    
       --Desired target size for the data file
    
    
    
       ALTER DATABASE tempdb MODIFY FILE
    
       (NAME = 'templog', SIZE = target_size_in_MB)
    
       --Desired target size for the log file

  • コマンドプロンプトウィンドウでCtrl-Cを押すSQLサーバを停止し、SQLサーバをサービスとして再起動し、Tempdbを検証する.mdfとTemplog.ldfファイルのサイズ.

  • この方法の限界は、デフォルトのtempdb論理ファイルtempdevとtemplogのみを操作できることです.他のファイルをtempdbに追加した場合は、SQLサーバをサービスとして再起動した後に縮小できます.起動中にすべてのtempdbファイルを再作成します.したがって、空で削除できます.tempdbの他のファイルを削除するには、REMOVE FILEオプション付きALTER DATABASEコマンドを使用します.