SSMS 2016 からエラー ログを読み取ろうとすると、SQL Server 2016 エージェントの起動または "データの取得に失敗しました" エラーが発生する
この記事では、古いバージョンの MS ODBC 13 ドライバーを使用する場合に SSMS で発生するさまざまな問題と、これらの問題の解決策を示します。
元の製品バージョン: SQL Server 2016 Developer
元の KB 番号: 3185365
現象
Microsoft SQL Server 2016 RTM または SQL Server 2016 RTM CU1 名前付きインスタンスがある場合、次のいずれかの現象が発生する可能性があります。
症状 1
SQL Server エージェント ログ ファイルには、次のようなメッセージが表示されます。
2016-08-06 14:54:41 - ! [000] サーバー 'servername\instancename' に接続できません。SQLServerAgent を開始できません
2016-08-06 14:54:46 - ! [298] SQLServer エラー:
65535、SQL Server ネットワーク インターフェイス: 指定されたサーバー/インスタンスの検索中にエラーが発生しました
[xFFFFFFFF]。 [SQLSTATE 08001]
2016-08-06 14:54:46 - ! [165] ODBC エラー: 0、
ログイン タイムアウトの有効期限が切れた [SQLSTATE HYT00]
2016-08-06 14:54:46 - ! [298]
SQLServer エラー: 65535、SQL Server への接続の確立中にネットワーク関連またはインスタンス固有のエラーが発生しました。
サーバーが見つからないか、アクセスできません。
インスタンス名が正しいことと、SQL Server がリモート接続を許可するように構成されていることを確認してください。 詳細については、SQL Server オンライン ブックを参照してください。 [SQLSTATE 08001]
現象 2
SQL Server エラー ログを読み取ろうとすると、試行が失敗し、次のようなエラーが返されます。
この要求のデータを取得できませんでした。 (Microsoft.SqlServer.Management.Sdk.Sfc)
Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。 (Microsoft.SqlServer.ConnectionInfo)
さらに、xp_readerrorlogを実行しようとすると、次のエラーが発生する可能性があります。
メッセージ 22004、レベル 16、状態 1、行 0
ループバック接続を開けませんでした。 詳細については、イベント ログを参照してください。
メッセージ 22004、レベル 16、状態 1、行 0
エラー ログの場所が見つかりません。
現象 3
古いバックアップまたはレポート ファイルを "サイレント" に削除するメンテナンス クリーンアップ タスクなど、特定のメンテナンス プランまたは SQL エージェント ジョブは失敗します。 クリーンアップ タスクの場合、対応するジョブの実行時に削除される予定のファイルは削除されず、エラーは SQL Server ログに書き込まれません。 sp_readerrorlog
を実行すると、現象 2 が発生します。
原因
この問題は、MS ODBC 13 ドライバーの欠陥が原因で発生します。 SQL Server Management Studio (SSMS) とSQL Server エージェントこのドライバーを使用して SQL Server コンピューターに接続します。
解決方法
この問題は、 MS ODBC 13.1 ドライバーで修正されています。