最近、また複数の機会で、SSMSを使用してSQL Serverインスタンスの1つから別のインスタンスに接続しようとしたところ、次のエラーが発生しました。
現在のコマンドで重大なエラーが発生しました。結果があれば、破棄する必要があります。
SSMSを使用してローカルに接続しようとすると、次のエラーが発生します。
サーバーとの接続は正常に確立されましたが、ログインプロセス中にエラーが発生しました。 (プロバイダー:共有メモリプロバイダー、エラー:0-パイプの反対側にプロセスがありません。)(Microsoft SQL Server、エラー:233)
専用管理接続(DAC)経由の接続でも同じエラーが発生します。 SQLCMDは次のエラーを明らかにします。
SQL Server構成マネージャーは、SQL ServerサービスとSQL Serverエージェントサービスの両方が実行されていることを報告します。
SQL Serverエラーログは、イベントビューアのエントリがログに記録されると同時に停止し、SQL Serverエージェントジョブの接続の問題を報告します。
SQL Serverのスケジュールされたジョブ 'sp_WhoIsActive'(0x868EBDEC06F71344AC717E0C6A333D13)-ステータス:失敗-起動日:2018-09-18 10:38:00-メッセージ:ジョブが失敗しました。ジョブsp_WhoIsActiveの所有者(sa)がサーバーにアクセスできるかどうかを判別できません(理由:サーバーに接続できません-SQL ServerおよびSQL Serverエージェントのエラーログを確認してください)。
すべてのSQL Serverサービスは、グループ管理サービスアカウント(gMSA)で実行するように構成されています。
これまでの唯一の解決策はサーバーを再起動することでしたが、特に問題が複数回発生したため、これは明らかに満足できる解決策ではありません。
続行する必要があるのは、接続の問題が発生する前に、SQL Serverのエラーログに次のエラーメッセージが多数発生することだけです。
2018-09-17 13:31:19.20ユーザー '[ドメイン] [SQL ServerのgMSAアカウント] $'のログオンログインに失敗しました。理由:明示的に指定されたデータベース '[database_name]'を開くことができませんでした。 [クライアント:[ローカルマシン]] 2018-09-17 13:32:03.63ログオンエラー:18456、重大度:14、状態:38。
これらのログインの問題の結果、接続の最大数を超えた可能性はありますか?もしそうなら、なぜそれでもDAC経由で接続できないのですか?
誰かアドバイスしていただけますか?
詳細:
この問題は、SQL Serverエラーログ(上記の元の投稿を参照)で強調表示されていた多数の接続エラーに関連している可能性があると強く考えています。接続の最大数を超えた可能性があります。
その後、データベースサーバーを再起動し、接続の問題を解決しました。これが問題ではないことが判明した場合は、この投稿に再度アクセスします!
SQL Serverサービスに変更を適用する場合、関連する権限(ファイル/ディレクトリ/データベース/インスタンス)とポリシーが正しく設定されていることを保証するために、SQL Server xxxx構成マネージャーで変更することをお勧めします。
ファイル、ディレクトリ、レジストリ設定を含むすべての権限をリセットします。これらの簡単な手順に従って、サービスアカウントの要件に従って存在する可能性のあるポリシー。
SQL Server 2016 Configuration Managerを開き、SQL Server Servicesブランチに移動します。
構成マネージャーの右側のペインで、SQL Serverサービスを右クリックし、Propertiesを選択します。
SQL Server(InstanceName)のプロパティウィンドウで、ログオンタブにいることを確認します。
セレクターをビルトインアカウントに変更し、3つのオプションのいずれかを選択します。
Applyを押して、ダイアログがポップアップ表示されたら、「...行った変更は再起動するまで有効になりません」をクリックします[〜#〜] ok [〜# 〜]。
停止SQL Serverサービス(InstanceName)
開始SQL Serverサービス(IntanceName)
SQL Serverを再確認してください[〜#〜] errorlog [〜#〜]問題がないか確認してください。
SQL Server Agent(InstanceName)サービスに対して、手順2〜8を繰り返します。
SQL Server 2016 Configuration Managerを開き、SQL Server Servicesブランチに移動します。
構成マネージャーの右側のペインで、SQL Serverサービスを右クリックし、Propertiesを選択します。
SQL Server(InstanceName)のプロパティウィンドウで、ログオンタブにいることを確認します。
セレクターをこのアカウントに変更し、SQL Server(InstanceName)サービスのgMSAの詳細を入力します。
適用を押して、ダイアログがポップアップ表示され、「...加えた変更は再起動するまで有効になりません」と通知します[〜#〜] ok [〜# 〜]。
停止SQL Serverサービス(InstanceName)
開始SQL Serverサービス(IntanceName)
SQL Serverを再確認してください[〜#〜] errorlog [〜#〜]問題がないか確認してください。
SQL Server Agent(InstanceName)サービスに対して、手順2〜8を繰り返します。
サービスは、個々のサービスの要件に従って再構成されているはずです。