【環境】
OS:Windows2003Server Standard SP2
DB:SQLserver2000 8.0

ASPと連動したWEBシステムを構築していますが、保守計画のトランザクションバックアップで取ったTRNファイルが肥大化してしまいます。
よって
トランザクションログバックアップジョブに時間が多大に掛かってしまい、その間トランザクション使用領域の切り捨てがされないので、領域が圧迫されてしまいます。
※自動拡張は5%で設定してますが、自動拡張タイムアウトが頻発します

トランザクションバックアップジョブは2分に1回ほどの割合で実行しています。毎時起きるわけではないのですが、1日に数回そのような現象が発生してしまい、その間トランザクションバックアップジョブは稼動し続け、かつ自動拡張タイムアウトでシステム負荷が異常に高くなります。

大変困っております。。
なにか対策がある方は是非教えていただきたいと思います。
また、同様の事例がある方がいらっしゃいましたら教えてください。

些細な情報、対策でも良いのでどうぞ宜しくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

正直回答に自信はありませんが、わかる範囲でお答えします。



復旧モデルはなんでしょうか?話を聞いている限り、フルですか?

また、トランザクションログの切り捨てと圧縮をした方がよさそうです。また、切り捨てがされないとのことですが、恐らくアクティブなログファイルがあると切り捨て対象にならないので、それかもしれませんね。

http://msdn.microsoft.com/ja-jp/library/ms178037 …
をご覧の上、アクティブログがあるか確認してみてください。
(アクティブログがあると、いくら圧縮かけても無駄なので)

また、切り捨てと圧縮の方法については、
http://techbank.jp/sqlserver/#a2
http://techbank.jp/Community/forums/p/1119/6132. …
あたりを参考にして頂ければと思います。

>2分に1回ほどの割合

これについては、復旧モデルをフル(完全復旧)以外のものにすれば変わるかもしれませんが確証はありません。
http://msdn.microsoft.com/ja-jp/library/aa173678(SQL.80).aspx

1時間に1回、バックアップを自動的に戻すようなことをしなければ、
復旧モデルは、完全復旧でなくても良いような気がするので、
ご検討ください。
    • good
    • 0
この回答へのお礼

大変参考になりました!ありがとうございます。
上記URLを参考にして試してみます!

お礼日時:2009/05/19 19:20

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qお勧めのバックアップツール

度々お世話になっております。
バックアップツールはフリー/製品問わず多々あると思いますが
DVD-Rにバックアップできるツールを探しています。

おすすめのバックアップツールを教えてください。

出来ればフリーの方がありがたいです・・・

ちなみに、Windows2000です。

Aベストアンサー

バックアップが終わると、すぐに書き込めば忘れずに出来ると思いますが、それでも忘れると言うのなら、DVDに直接バックアップすればいいと思います
起動ドライブをバックアップすると、今現在のすべての設定を記録するので、その時点のWinに戻れます

参考URL:http://www.lifeboat.jp/products/ib7p/ib7p.html

Q【SQL Server2005】mdfファイルが壊れた後のトランザクションログバックアップ

OS:Windows Server 2003、DB:SQL Server 2005 Developer Edition
を使用しています。

データファイル:test.mdf、ログファイル:test_log.ldfでtestデータベースを構成後、SQL Serverサービスを停止し、test.mdfファイルの名前を変更、test.mdfが壊れたものと仮定します。
その後、SQL Serverサービスを起動すると、testデータベース上にmdfファイルが見つからないエラーが発生します。

この状態でトランザクションログを救出するため、SQL Server Management Studioでトランザクションログバックアップを実行させます。

しかし、この際、右クリックのメニューからバックアップを選択することができず、トランザクションログバックアップができません。

この状態でトランザクションログバックアップを行うにはどのようにすればよいのでしょうか。
どなたかご存知の方がいらっしゃれば教えてください。

Aベストアンサー

この場合は、LDFファイル自体をファイルコピーで退避すればよかった記憶が…MSにそのあたりの手順(復元まで)を示したものがあるようなきはするのですが…よく覚えてません。

Qバックアップツールのお勧めをお教えください。

WindowsXP Pro1台、WindowsXP Home1台の計2台をワークグループで動かしています。

どちらのマシンも常時駆動ではなく、使うときだけ電源を入れて使い終わったら電源を落としています。

XP Proの方にRAID-1のHDDが取り付けてあり、ここに重要なデータを適宜バックアップしています(現在は手作業)

このような状況で、指定されたフォルダのデータを、ネットワークがつながっているときにバックグラウンドでバックアップしてくれる、お勧めのソフトはありませんか?
できれば、実際に使っている方のご意見も伺いたいのですが、紹介記事などでも結構です。

よろしくお願いします。

Aベストアンサー

なるほど,そういうことでしたか。

であればWindowsXPのオフラインフォルダによる同期が
イメージ的に近いのではないでしょうか。

http://www.microsoft.com/japan/windowsxp/pro/business/feature/remote/offlinefolder.asp

ただ,これにしてもリアルタイムではないというネックが
あったりしますが。

参考URL:http://www.microsoft.com/japan/windowsxp/pro/business/feature/remote/offlinefolder.asp

Qタイムアウト

接続のタイムアウトとトランザクションタイムアウト以外に
タイムアウトってありますか?
教えてください。
よろしくお願い致します。

Aベストアンサー

参考になりますか、わかりませんが、、、

remote query timeout とか知ってます。
あと接続のタイムアウトも、ODBCの接続プールのタイムアウトとか。
あと、、、セッションタイムアウトとか。。。

Qお勧めのバックアップソフト教えてください

データのバックアップをしたいのですが、お勧めのバックアップソフトありませんか?

データが4Gくらいあるので、差分バックアップなど、高速にバックアップできるものがいいです。

よろしくお願いします。

Aベストアンサー

ベクターから片っ端に落して実験しましたが、下記が一番使いやすいです。(オススメ)
フリーですけど中々高速です。
気に入っている点は、
コピー元とコピー先フォルダの時間まで同じくなるためです。
バックアップツール Backup
http://www2.biglobe.ne.jp/~sota/

参考URL:http://www2.biglobe.ne.jp/~sota/

Qタイムアウト

SQLServer2008Exを使用してます。
MSSMSでクエリ(SELECT文)を実行するとタイムアウトになってしまします。
データの量はそれなりにあるのですが、実行タイムアウトは0(ゼロ)無限の待ち時間に設定してあるのに何故なんでしょうか?

Aベストアンサー

どうやってSELECTしているのかわからないのですが、クエリ画面でSELECT文投げているのではなく、SSMSの機能を使ってクエリを実行しているならば、念のため以下のリンクもチェックしてみてください。

http://support.microsoft.com/kb/915849/ja

Qお勧めのバックアップソフト

今使っているパソコンの調子が悪いのでバックアップを取ろうと思っています。
しかし、バックアップソフトにも高いものから安いものまでいろいろあって迷っています。
そこで、皆さんに聞きたいのですが、どのバックアップソフトがお勧めですか?
教えてください、お願いします。

Aベストアンサー

イメージバックアップをとる前にリカバリしたほうがいいですね。
IEのお気に入りやOEのアドレス帳、メールをバックアップするにはExmaがおすすめです。
http://hp.vector.co.jp/authors/VA022434/html/main.htm
マイドキュメントにあるデータ
アプリケーションで作成したデータ
IMEのユーザー辞書
プロバイダのIDとパスワード
各種パスワード
ダウンロードしたオンラインソフト、修正プログラム、ドライバソフト
WindowsのサービスパックをあらかじめCD-Rなどに保存して、インターネットに接続する前にアップデートしておいた方が安心です。
アンチウィルスソフトをインストールしてインターネットに接続してアップデート
WindowsUpdateをすべて完了させる。
イメージバックアップ
Acronis True Imageがおすすめです。ダウンロード版が安いです。
http://www.vector.co.jp/soft/win95/util/se319022.html

ソースネクストのAcronis TrueImage Personal はUSBやIEEE1394を使えないので注意してください。

イメージバックアップをとる前にリカバリしたほうがいいですね。
IEのお気に入りやOEのアドレス帳、メールをバックアップするにはExmaがおすすめです。
http://hp.vector.co.jp/authors/VA022434/html/main.htm
マイドキュメントにあるデータ
アプリケーションで作成したデータ
IMEのユーザー辞書
プロバイダのIDとパスワード
各種パスワード
ダウンロードしたオンラインソフト、修正プログラム、ドライバソフト
WindowsのサービスパックをあらかじめCD-Rなどに保存して、インターネットに接続する前に...続きを読む

QSELECT文でタイムアウトが起こります。

いつも勉強させて頂いております。どうぞよろしくお願いします。

以下の環境で開発を行っています。
SQLServer2005
ASP.NET C#

.NETのソースで
1つのクラスに2つのクエリ(2つともSELECT←複数テーブルを結合している)を呼び出す処理を書いています。(トランザクション処理は付けていません)2クエリとも検索対象テーブルは60万件程度のデータを保持しています。検索条件によって処理速度は違うのですが、1ユーザが最も遅い検索条件で検索をしてもタイムアウトにはなりません。しかし、2ユーザが同じタイミングで検索(どのような条件でも)処理を行うと、タイムアウトを起こしてしまいます。まれにデッドロックも起こります。

SQLServerではSelectのたびにlockがかかるのでSQL文中に「WITH(NOLOCK)」を記述するように書かれているサイトを見つけたのですが、他ユーザからの更新もあり得るテーブルなので、他の方法を探しております。
トランザクション分離レベルは規定値です。

是非、どなたかご教授ください。よろしくお願いします。

いつも勉強させて頂いております。どうぞよろしくお願いします。

以下の環境で開発を行っています。
SQLServer2005
ASP.NET C#

.NETのソースで
1つのクラスに2つのクエリ(2つともSELECT←複数テーブルを結合している)を呼び出す処理を書いています。(トランザクション処理は付けていません)2クエリとも検索対象テーブルは60万件程度のデータを保持しています。検索条件によって処理速度は違うのですが、1ユーザが最も遅い検索条件で検索をしてもタイムアウトにはなりません。しかし、2ユーザが同じタイミ...続きを読む

Aベストアンサー

2ユーザともタイムアウトになるのですか?
タイムアウトがハードウェアのリソースやコネクションの競合などではなくて、テーブルロックにより発生しているという結論はどうやって導き出しましたか?
READ COMITTEDのロックヒントなしのSELECT同士でブロッキングやデッドロックが発生するパターンが思い当たらないので。

NOLOCKをつけたらタイムアウトしなくなるか試してみるのがいいと思います。
で、本当にロックが原因で、ダーティリードは避けたいとなると、参照処理ということを踏まえてスナップショット分離レベルを使うくらいかと思います。

Qお勧めのツールバー

IEのツールバーにGoogleツールバーを追加しています。
皆さんは何を使われていますか?
お勧めのものがありましたら教えてください。

Aベストアンサー

こんにちは。

googleツールバーは私も入れています。

100以上の検索サービスを利用できる「DinopSearchBar」も入れています。
このツールバーは完成度も高くお勧めできますよ。
http://www.forest.impress.co.jp/library/dinopsearchbar.html

ページ翻訳とかいろいろできるので、インフォシークツールバーも入れてあります。
ただインフォシークツールバーはツールバーをIEに表示したままにしておくと
普通のフォルダにもツールバーが出てしまうのが嫌いです。
http://toolbar.www.infoseek.co.jp/Tbar?pg=tbar_top.html&svx=100302&svp=SEEK

天文学的な数のWebサイトのキャッシュを閲覧できる Internet Archive にも
ツールバーがあるのですが、
最近になってインストールのページが見当たらないんですよね。
googleのキャッシュは画像なしですけど、ここのサイトは画像まで保存されていることが多いのでうれしいです。
http://web.archive.org/archive_request_ng

こんにちは。

googleツールバーは私も入れています。

100以上の検索サービスを利用できる「DinopSearchBar」も入れています。
このツールバーは完成度も高くお勧めできますよ。
http://www.forest.impress.co.jp/library/dinopsearchbar.html

ページ翻訳とかいろいろできるので、インフォシークツールバーも入れてあります。
ただインフォシークツールバーはツールバーをIEに表示したままにしておくと
普通のフォルダにもツールバーが出てしまうのが嫌いです。
http://toolbar.www.infoseek.co.jp/T...続きを読む

QSqlServerとC#の連携問題 タイムアウト

C#+SqlServerでC/Sアプリを作りました。
しかし、現在下記の問題があります。
ご存知の方いらっしゃいましたら、教えてください。

クライアント側はデータをサーバー側に送信します。
サーバー側はデータを受信しながらSqlServerに保存します。
軽量のデータでやるなら、問題は出ません。
しかし、8GBのデータでやると、その途中、いつも下記のエラーが出ます。

Class:11
Index #0
Message: タイムアウトに達しました。操作が完了する前にタイムアウト期間が過ぎたか、またはサーバーが応答していません。
LineNumber: 0
Source: .Net SqlClient Data Provider
Procedure:
System.Data.SqlClient.SqlException: タイムアウトに達しました。操作が完了する前にタイムアウト期間が過ぎたか、またはサーバーが応答していません。
場所 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
場所 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
場所 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
場所 System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
場所 System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
場所 System.Data.SqlClient.TdsParserStateObject.ReadBuffer()
場所 System.Data.SqlClient.TdsParserStateObject.ReadByte()
場所 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
場所 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
場所 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
場所 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
場所 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
場所 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
場所 System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult)
場所 System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries)
場所 System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
場所 System.Data.Linq.ChangeDirector.StandardChangeDirector.DynamicInsert(TrackedObject item)
場所 System.Data.Linq.ChangeDirector.StandardChangeDirector.Insert(TrackedObject item)
場所 System.Data.Linq.ChangeProcessor.SubmitChanges(ConflictMode failureMode)
場所 System.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
場所 System.Data.Linq.DataContext.SubmitChanges()

その他:
 SqlServer2008 R2
 C# .Net3.5
WindowsServer2008 R2

C#+SqlServerでC/Sアプリを作りました。
しかし、現在下記の問題があります。
ご存知の方いらっしゃいましたら、教えてください。

クライアント側はデータをサーバー側に送信します。
サーバー側はデータを受信しながらSqlServerに保存します。
軽量のデータでやるなら、問題は出ません。
しかし、8GBのデータでやると、その途中、いつも下記のエラーが出ます。

Class:11
Index #0
Message: タイムアウトに達しました。操作が完了する前にタイムアウト期間が過ぎたか、またはサーバーが応答していません。
Line...続きを読む

Aベストアンサー

8GB の何をどういう風に送っているのかまったく書かないのですね。
Command オブジェクトを使用しているのならタイムアウト値を無制限にするとか。


人気Q&Aランキング