メインコンテンツへスキップ

ログインが時間切れになりました

コメント

42件のコメント

  • Tanda

    「ログインが時間切れになりました」

    この文言をネットで検索すると、SQLServerのエラーらしい結果が出てきますね。Magicではあまり見ないエラーのような気がします。

    何らかの原因でSQLServerにログインでいていないみたいですね。

  • 群馬のマジシャン

    shinpei さん 初めまして

    xpa 3.x ではなく、しかももっと古いSQL Seerverの環境で、同様な現象がありました

    その時は、原因が良くわからないまま「差支えないテーブル」にたいして、Select 文を 埋め込みSQLで定期的に発行するという よくわからない対応をしてごまかしたことがあります。

     

    SQL Seerverであれば、通常はセッションタイムアウトの設定はデフォルトでは無制限になっていたとおもいます。

    あと、最近のSQL Seerverの接続情報は、一部障害があってMSJ殿から対応方法の情報も出ているので、そちらも参考にされてみては如何でしょう、私はこの対応をしないまま、XPA4.x でSQL Seerverにまったく接続できなくて、納品環境構築時にあせりました。

     

    参考になれば幸いです。

     

     

     

  • 群馬のマジシャン

    あとは、ここ2、3か月で発生するようになったとの事ですので、その前後で ネットワーク上に何か変化が無かったでしょうか?

    ルータ交換したとか・・・

    弊社事例で恐縮ですが、交換されたルータがこわれてて不定期に接続が切れてしまうとい現象に遭遇しました。

    また、セキュリティのツールが新たに導入されたりして、xpa がそのチェックに引っ掛かったこともありました。

    参考になれば幸いです。

     

  • Tanda

    あと、xpa 3.x + SQLServer 2019の組み合わせの場合は、Magicの技術情報サイトに「動作環境レポート」が出ておりますので、そちらの注意事項を確認されるのも重要だと思います。

     

  • Tanda

    失礼、

    「動作環境レポート」→「動作確認レポート」です。

  • nkmt

    RemoteAppとも書かれていますので
    gpedit.msc
    コンピューターの構成
     → 管理用テンプレート
     → Windows コンポーネント
     → リモートデスクトップサービス
     → リモートデスクトップサービスセッションホスト
     → セッション時間の制限
    の下に5つ設定項目があります。
    質問者様への返答ではありませんがこの項目の中では
    「切断されたセッションの制限時間を設定する」は1分にするようにしています。

  • shinpei

    みなさまご回答ありがとうございます。

    tandaさま
    ・SQLServerのエラーのようですよね。DbErr()関数で取得したものを載せています。
    https://devnet.magicsoftware.co.jp/magicxpa/mgenv/xpa3onwindows2019
     にて動作確認レポートを見てみましたが、ここに書かれていることは行っていませんでした。

    ISHIJIMAさま
    ・Magicで用意されているエラー文言ではなさそうですよね。
    ・すみません。画像は用意がありません。実際に再現できれば掲載します。
     今回のエラーは、サーバーで動いているMagicの待機バッチ上で発生しております。
     こちらの組み方の話なのですが、エラーポップアップをEscキーを発行して除去するようにしております。
     サーバー上では画像が取れませんでした…。
     ※DbErr()関数を組み込むと、画面上ではエラーポップアップは表示されますが、内容が空っぽ(空白)のように表示されます。
    ・サーバーで省電力の設定はしておりません。

    群馬のマジシャンさま
    ・差し支えないテーブルに対して、定期的にselect文を発行とありますが、SQLServerへのアクセスがない状態が続くと
     自然にセッションが切断されてしまうといったことを思っての処置だったのでしょうか?
    ・セッションタイムアウトの時間ですが、SQLServer側の設定ですよね?
    ・ハードの交換はしておりませんが、そちらもあたってみます。

    nkmtさま
    ・すみません。RemoteAppと書きましたが、クライアントがRemoteAppなだけで
     エラーが発生したのはサーバーだったので関係ない情報でした。
     申し訳ございません。
     ただ、今回の件とは別ですが、クライント側でいきなり切れてしまうなどといった障害も発生しておりましたので
     回答いただいた内容を確認してみようと思います。


    別の仕事もありまして、返信が遅くなってしまうことご了承ください。

  • shinpei

    ISHIJIMAさま

    はい。DBErrorが発生しておりその結果となります。
    以下、それぞれのエラー内容となります。
    ・ErrMagicName()
     [テーブルのオープンに失敗]
    ・DbErr()
     ログインが時間切れになりました

  • 群馬のマジシャン

    shinpei 様

    つたない記述で恐縮です。インラインで失礼致します。

    >・差し支えないテーブルに対して、定期的にselect文を発行とありますが、SQLServerへのアクセスがない状態が続くと 自然にセッションが切断されてしまうといったことを思っての処置だったのでしょうか?

    回答)はいおっしゃるように、自動で切断されるのは何もしない(操作しない?)場合なのかと考えての処置でした。

     

    >・セッションタイムアウトの時間ですが、SQLServer側の設定ですよね?

    回答)はい。弊社環境のSQL Seerverでは無制限にしてありました。

     

    >・ハードの交換はしておりませんが、そちらもあたってみます。

    回答)これは弊社で体験した珍しい環境だったのかもしれません。マイグレ後の新Serverが接続している先のルータ障害で、突然切れる/接続できない。という現象でした。

    今回のshinpei 様の状況とは少し違うかもしれません。

     

    参考になれば幸いです。

     

  • shinpei

    サーバー構成ですが、

    1.RDS(仮想サーバ HyperV)
      ・WindowsServer2016
      ・SQLServer2016
      ・Magicxpa3.2

    2.DBサーバ1(プライマリ) 13社のお客様のDBあり(インスタンスはそれぞれ別)
      ・WindowsServer2019
      ・SQLServer2019
      ※可用性グルーブ構築しております。

    3.DBサーバ2(セカンダリ)
      ・WindowsServer2019
      ・SQLServer2019

    以上となります。
    情報足りなければおっしゃってください。

  • shinpei

    群馬のマジシャンさま

    ご回答ありがとうございます。
    待機バッチが1分ごとにSQLServerにアクセスしています。
    セッションタイムアウトの値を確認してみます。
    ルータ周りは初期不良の問題もいくつか経験しております。
    また、運用中に突然壊れるといったこともありました。再確認してみます。

  • shinpei

    ISHIJIMAさま

    RDSサーバは毎日24:05に再起動するようにしております。
    RDSサーバの再起動にあわせて、DBサーバのインスタンスの再起動を行っております。
    これが、24:08頃になります。
    DBサーバ自体は再起動行っておりません。
    ※GWやお盆、正月などは実施する場合もあります。

    今回のエラー発生時、フェールオーバーは発生しておりません。

  • 群馬のマジシャン

    shinpei 様

    さきほどWebサイトで検索していたら

    対象DBのログサイズが肥大化し、ログの拡張処理時間(〇〇をこえたら拡張)の作業で時間がかかると接続が切れる場合もあるという書き込みがありました。

     

    大変失礼ながら、SQL Seerverメンテナンスプランなどで、ログのバックアップと圧縮等設定し、定期的にサイズを抑えていらっしゃいますか?

    たしか、SQL Seerver はあるバージョン以降、復旧モードが「単純」であってもログの切り捨て、領域開放(圧縮)が自動で行われなくなったように記憶しており、弊社ではSQL Seerver メンテナンスプランを設定しバックアップ&DB/ログの圧縮などを行っています。

    的外れであればすみません。

    また、DBやログの増分設定を、 %指定ではなく、MB等のサイズ指定の方が良いと思います。

    確かSQL Seerver2019では、デフォルトでMB指定だったとは思いますが。。。

     

  • shinpei

    群馬のマジシャンさま

    検索までしていただきありがとうございます。
    SQLServerのメンテナンスプランですが、毎日20:45に行っております。
    内容的には、DBバックアップ、ログファイルの圧縮のみです。
    DB自体は圧縮を行っておりませんでした。
    検討の余地がありそうです。
    DB拡張については、データが1024MB単位で無制限、ログが100MB単位で無制限となっております。

     

  • shinpei

    ISHIJIMAさま

    ご回答ありがとうございます。
    DBサーバとxpaの起動タイミングについては盲点でした。
    今一度見直します。
    インフラチームの言い分では、ネットワークの障害は発生していないとのことなんですよね…。
    もう一度問い詰めます。

  • shinpei

    ISHIJIMAさま

    試してみました。
    待機バッチ起動→サービス再起動→DbError

    ErrMagicname()
    [テーブル作成エラー]
    DbErr()
    [DBNETLIB][ConnectionWrite (send()).]一般的なネットワーク エラーです。ネットワークのマニュアルを調べてください。

    同じエラーは発生しませんでした。
    別の方法を考えてみます。

  • nkmt

    群馬のマジシャンさま
    横レスになってしまいますが私は
    SQLCMD -S LOCALHOST -Q "DBCC SHRINKDATABASE ('%DBNAME%')"
    を毎晩行っております。
    理由は、ldfファイルが小さくなるから・・・です。
    果たしてこれがいい事なのかわかりませんけど。
    単純復旧モードでしか納めておりません。

    私はほとんどのお客様がDBサーバー 兼 ターミナルサーバーですが
    最近はSQL Serverの再起動も一切しておりません。

    DBERR関数というのがあるのですね。
    知りませんでした。

  • Tanda

    インフラに問題があるのか、あるいはDBのバージョンに問題があるのかを切り分ける手段として、一旦、枯れたバージョン(安定したバージョン)のSQLServerに戻して試してみるという手もあります。ただ、データの移管が面倒なところもありますが。。。

    私の経験からすると、SQLServer 2005→2008→2014はかなり安定していましたね。

  • Tanda

    訂正。

    誤:SQLServer 2005→2008→2014
    正:SQLServer 2005→2008R2→2014

    です。

  • shinpei

    ISHIJIMAさま

    セッションタイムアウトの設定ですが、
    SQLServer Management Studioにて、インスタンスのプロパティ→接続→リモートサーバー接続
    このサーバーへのリモート接続を許可する=チェック、
    リモートクエリのタイムアウト=600
    となっておりました。
    (この設定がセッションタイムアウトで合っている?)
    10分アイドル状態が続くと、SQLServerのコネクションが切断されてしまうということでしょうか?

     

    追加書き込みします。

    1つの物理サーバーに複数の仮想RDSを構築しており、会社毎に1つのRDSがあります。
    今回発生したのは1社だけだと思っておりましたが、別の会社のRDSでも同時刻に同様のエラーメッセージが出ておりました。
    やはり、ネットワークや物理サーバーの負荷等が原因なのでしょうか・・・。

  • shinpei

    tandaさま

    最終手段ではそれもアリかなと思っておりますが、

    DBバージョンの変更は、影響範囲が大きいためためらっております。

  • Tanda

    はい、最終手段として考えたほうがいいかもしれませんね。

    SQLServer 2008のときも、当時はそうとうトラブりました。2008R2が出て安定したときは、本当にホッとしたことがいまだに記憶に新しいです。

     

  • shinpei

    ISHIJIMAさま

    製品:Microsoft SQL Server Enterprise: Core-based Licensing (64-bit)

    バージョン:15.0.2000.5

    です。

  • shinpei

    ISHIJIMAさま

    サービス起動中のバッチ起動と、サービス起動後のバッチ起動について

    試してはみたのですが、それがきちんと起動中か起動後かどうかの裏はとれていません。

    そして、エラーは出ましたが、ログイン時間切れではなく、一般的なネットワークエラーとして表示されました。

    現在は、パフォーマンスモニターにて、サーバーの負荷等を確認しております。

  • nkmt

    サーバー&クライアントの環境で、伝票入力画面を入力画面の途中で長時間放置すると
    固まるという現象がSQL Server 2022 & xpa 4.7.1 PT2 で起きていますので
    以下赤丸部分を試しに 0(タイムアウト無し)へ変更してみます。

  • nkmt

    先程のリモートリクエスのタイムアウトを
    0 タイムアウト無しへ変更し、SQL Serverは再起動せず
    伝票入力画面を 30分放置してみたいと思います。

  • Ace_Nagashima

    これは関係ないですか?
    下図の二つの設定はデフォルトで15分と切断有効になっています。
    私は初期設定時に必ずOffにするようにしています。

  • nkmt

    Ace_Nagashimaさま ありがとうございます。
    症状が直らない場合、サーバーでこの設定をしてみたいと思います。
    正直な所、私は初めて見た項目でした。
    客先の新サーバーは以下の状態です。

  • Ace_Nagashima

    Magic8とPervasive8での10台ぐらいのクラサバ環境で、伝票入力時に2~30分操作をしない場合に
    ファイルマネージャーの異常が発生するケースがあったのです。
    総てのクライアントで発生するわけではないので対策を行えなかったのですが、何かのIT系の記事に
    この設定の事が書いてあったので試したところ、以降はファイルマネージャーの異常が発生しなくなりました。
    それからはサーバー・クライアント共に初期設定時にローカルポリシーの設定を行っています。
    (念のためですが)

  • nkmt

    Nagashima様、そうなんですね。
    私は今までその設定は一切してこなかったと思います。
    もしかするとクライアントで伝票入力などを起動していてこけるなどしていたお客様もあるのかもしれないです。
    サーバーの電源設定を見てみました。
    バランスになっていました。
    リソースモニタで確認すると最大周波数は50%~80%を表示しました。
    電源設定を高パフォーマンスーマンスへ変更してみました。
    最大周波数が126%~145%を表示しました。

サインインしてコメントを残してください。