
SQL Server 2005 Express Editionを使用しています。
データベースは単純復旧モデルなのですが、トランザクション ログがすぐ満杯になり、9002 エラーが発行され、困っています。データベース、トランザクション ログ共にバックアップは取っていません。自動拡張もしていません。
ネットで調べると、単純復旧モデルは自動的にトランザクション ログを切り捨てるので、ログの肥大化を心配する必要はないと書いてあります。なぜ満杯になるのか不明。
(圧縮される量よりも、ログが貯まる量のほうが多い?)
トランザクションログは、ログ領域を5GBにしているのに1時間程度で満杯になり、9002 エラーが発行され困っています。
対策としては、ジョブでDBCC SHRINKFILEを定期的に発行して、トランザクション ログを削除する
案を考えていますが、イレギュラーな気がしています。他にもっといい対策案(簡単、確実)はないでしょうか?
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
単純復旧モードにしていれば、コミットされたトランザクションはトランザクションログに残らず解放されます。
しかし、コミットされていないトランザクションは解放されていません。
今回のケースですと、何か長いバッチ処理がはしっていませんか?
もしくは、大量のデータを一気に更新する処理をしていませんか?
例えば2時間かかるバッチ処理をワントランザクションで実行していると、
1時間経過して5GB使用してしまいまんぱんになることはあります。
上記のクエスチョンどちらのケースでも、DBCC SHRINKFILEしても意味がありません。
対応としては、コミット粒度の見直しか、例えばバッチ処理で必要な容量までは
トランザクションログを確保するとかでしょうか。
ワントランザクションで10GBトランザクションログが必要なら、
ワントランザクションを維持するには、ログを10GBにするしかありません。
トランザクション粒度を見なおして、1トランザクションで必要な容量を
数GBにするとかでしょうか。
ちなみに以下のケースもあるので、ご注意。
1 データ更新料は少ないが、数時間かかるトランザクション
2 10分程度でおわるがデータ更新料が多いトランザクション
3 それいがいのトランザクション
1〜3の順番にトランザクションが実行されると、1がコミットされるまでは、
2と3の分のトランザクションログは解放できないのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- ネットワーク syslog保存サーバーに蓄積するログファイル容量について 3 2023/01/09 20:13
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- SQL Server PCが悪くなって新しいPCにSSMSのデータを移すよう頼まれたけど移し方が分からない 1 2023/05/18 16:54
- 不安障害・適応障害・パニック障害 45歳(男)、会社に行くのが怖い。 定常作業がなく単発作業を黙々とこなす日々。 自分は出来損ないだと 7 2022/05/11 06:28
- iPhone(アイフォーン) iphoneのicloud写真データ移動について 3 2022/11/28 18:11
- コーヒーメーカー・電気ケトル・電気ポット コーヒーメーカーを探していて、少し検索して浅はかな知識ですが、ドリップ式は8杯〜など一度に多目に珈琲 4 2022/11/30 10:22
- JavaScript Typescript が必要な理由 1 2023/01/07 11:45
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
トランザクション中に別のトラ...
-
OracleでいうSpl*plusみたいなもの
-
accessVBAでのワークスペース
-
postgresql についてです
-
ロールフォワードとロールバッ...
-
ファイルサイズって
-
データベースの切断について
-
SQL SERVER 2005 EXPRESS EDITION
-
SQLSERVER2008 R8についてお願...
-
Symantec System Recovery
-
SQL2008から2000へデータコピー...
-
データベースからのインポート...
-
ファイルの存在チェック
-
SQLServerのバックアップ
-
警察はスマホに保存した動画や...
-
SQL Server7.0でバックアップし...
-
OpenOffice.org とMicrosoft Of...
-
SQLの実行と発行は同じ意味...
-
ファイルサーバはシーケンシャ...
-
PostgreSQLのエクスポートについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【DB】同じトランザクション内...
-
postgresql についてです
-
dbFailOnError とは?
-
Accessdでの「トランザクション...
-
一つのトランザクションでSELEC...
-
TPSとは・・・
-
OracleのROWIDについて…
-
ADO Connection を再利用する方法
-
INSERT分の処理速度がトランザ...
-
jmeterについて、教えてください。
-
トランザクションの肥大化
-
SQLserver2000のレプリケーショ...
-
汎用系システムのDBについて
-
サーバースペックが決まりません。
-
PostgreSqlについて
-
PostgreSQLのクラスタ運用について
-
SAPのSPROって何の略ですか?
-
SQL Server 2005トランザクショ...
-
SAPのfavoriteメニューを他のユ...
-
outlookが起動しません。
おすすめ情報