none
ロックタイムアウト時間の設定方法について RRS feed

  • 質問

  • ロックタイムアウト時間を接続単位ではなく、データベース単位もしくはアプリケーション単位で設定する方法についてご存知ではないでしょうか。

    SET LOCKTIMEOUT 30000 SELECT * FROM [テーブル名] のように各接続単位で設定する方法については把握したのですが、

    ロックタイムアウト時間をデータベースに対して設定する方法を探しております。

    直接SQL Serverに対してSET LOCKTIMEOUTを発行しても、別の接続では規定値の-1(ロックタイムアウトエラーを発生させない)に戻ってしまいます。

    [環境]

    Webフォームアプリケーション

    .NET Framework4.0

    SQL Server2012

    データベースへの接続についてはTableAdaperを使用しております。

    2013年2月15日 1:58

回答

  • 以下ご参考までに、連携します。

    データベース全体のクエリタイムアウトの設定は、「query wait サーバー構成オプション」で指定できるようです。

    ただ、こちらのサイトにも書かれているように、「このオプションを変更することはおすすめしません」となっています。

     

    非推奨となっているこちらのオプション変更を、調査ご検討の上、それでも採用するメリットがあると判断される場合は、ご利用ください。

    もしくは、タイムアウトの設定部分をプログラム側で共通化するなどの対応をご検討ください。

     

    以上、何かしら調査のヒントになりますようでしたら、幸いです。

    • 回答の候補に設定 佐伯玲 2013年2月19日 1:44
    • 回答としてマーク 佐伯玲 2013年2月22日 6:49
    2013年2月18日 4:30

すべての返信

  • 以下ご参考までに、連携します。

    データベース全体のクエリタイムアウトの設定は、「query wait サーバー構成オプション」で指定できるようです。

    ただ、こちらのサイトにも書かれているように、「このオプションを変更することはおすすめしません」となっています。

     

    非推奨となっているこちらのオプション変更を、調査ご検討の上、それでも採用するメリットがあると判断される場合は、ご利用ください。

    もしくは、タイムアウトの設定部分をプログラム側で共通化するなどの対応をご検討ください。

     

    以上、何かしら調査のヒントになりますようでしたら、幸いです。

    • 回答の候補に設定 佐伯玲 2013年2月19日 1:44
    • 回答としてマーク 佐伯玲 2013年2月22日 6:49
    2013年2月18日 4:30
  • こんにちは、komagorou さん
    フォーラムオペレータの佐伯 玲 です。

    kyk_nk さんから寄せられた情報はご確認いただけましたでしょうか?
    参考になりそうな情報だと思わいましたので勝手ながら私のほうで「回答としてマーク」とさせていただきました。

    ご不明な点などありましたら引き続きこちらのスレッドをご活用ください。

    宜しくお願いいたします。
    __________________________
    日本マイクロソフト株式会社 フォーラム オペレータ 佐伯 玲

    2013年2月22日 6:48