DBの再起動後にエラー15404をクリアする方法(再起動以外)


9

SQL Serverエージェントの1時間ごとのジョブが頻繁に(たとえば、数か月ごと)エラー15404の報告を開始し、介入されるまで報告を続けます。

[298] SQLServerエラー:15404、Windows NTグループ/ユーザー 'DOMAIN_NAME \ SomeDomainAccount'に関する情報を取得できませんでした、エラーコード0x6e。[SQLSTATE 42000](ConnIsLoginSysAdmin)

SQL ServerエンジンおよびSQL Serverエージェントサービスを手動で再起動した直後に、最初の障害が発生することがあります。マシンを再起動すると、問題を解決できます。

ジョブの所有者は、エラーメッセージに表示される名前で、SQL Server管理者です。

SQL Serverエンジンサービスアカウントは、サービスアカウントのように見えます(私はそれがデフォルトのインストールアカウントであると思います(エンジン/エージェントインスタンス間の干渉を防ぐために、一般的なNetworkServiceよりも1ノッチ優れています)。

   NT Service\MSSQL$INSTNAME

ジョブが常に失敗する場合は1つのことですが、再起動後にジョブが成功するため、などのサービスアカウントが機能しているはずであり、A / Dタイミングの問題やバグがあると思います。A / D構成についてITに質問すると、通常は「何も変更されていません」という応答になります。

  • エンジンおよびエージェントサービスを再起動すると、ジョブが失敗し始める可能性があります。
  • マシンを再起動すると問題が解決します。
  • エンジンとエージェントをすぐに再起動しても、ジョブが失敗することはなくなりました。

リンク: SQL Server 8198エラーのトラブルシューティング方法


更新、これは投稿後2回以上発生しています。
crokusek 2014年

おそらく関連していますが、断続的(毎週)に2つの異なるサーバーでSSPIの問題生成できないこともあります。
crokusek 2014年

昨日動作していたSQLスクリプトからこのエラーがランダムに発生したことを追加します。スクリプトへの変更、まったく同じマシン、Windowsログに明らかなエラーはありません。SQLの問題のある行は、CREATE ASSEMBLYステートメント、AUTHORIZATION [dbo]、PERMISSION_SET = EXTERNAL_ACCESS;でした。
redcalx 2015

より詳しい情報。SQL Serverを再起動しても問題は解決しませんでしたが、マシンを再起動すると解決しました。私のドメインアカウントに関する微妙な問題だと私は思うので、おそらくログオフ/ログオンがそれをしたでしょう。最近パスワードを変更していないことに注意してください。
redcalx 2015

回答:


4

解決策ではありませんが、ジョブの所有者をSQLアカウントにすることで問題を回避できます。

ジョブが開始されるたびに、SQL Serverはジョブの所有者のIDを確認し、ジョブを実行する権限があることを確認します。所有者がWindowsアカウントの場合、エンジンはActive Directoryを照会する必要があります。何らかの理由で失敗した場合、ジョブは実行されません。ADサーバーがビジー状態であるか、ネットワークから切断されているか、SQL Serverサービスアカウントに権限がないことが原因である可能性があります。

再起動後すぐに機能するので、キャッシュされた認証情報と関係があるのではないかと思います。Windowsは、後で使用するために検索する資格情報を保存します。そのキャッシュは再起動時にクリアされます。おそらく何かがキャッシュを破壊しています。


正しいと思います。キャッシュされた資格情報です。再起動すると、Active Directoryサーバーに強制的にログインされます。DBダイアグラムでこのエラーが発生します。会社のネットワークから切断されている場合、接続するとエラーは発生しません。切断すると私の許可が失われます。クエリ、作成などはできますが、図を作成することはできません。15404エラー。
StixO

0

ドメインAからドメインBに移動したインスタンスに問題があり、すべての場所で権限を確認し、すべての場所でフルコントロールを許可しました。サービスアカウントの変更、ジョブの所有権、新しいジョブの作成...何も機能しませんでした。SQL Serverのログインとして存在するサービスユーザーB \ sqlserviceおよびA \ sqlserviceと同じ名前が見つかりましたA \ sqlserviceログインを削除した後、すべてが正常に動作し始めました。これは、一部のWindowsポインターが間違っていたことを意味します


明確にするために、このエラーが発生していて、エラーを報告B\sqlserviceできなかったのは、アカウントが情報を取得できなかったということですか?
RDFozz 2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.