web-dev-qa-db-ja.com

エラーメッセージ:(プロバイダー:共有メモリプロバイダー、エラー:0-パイプのもう一方の端にプロセスがありません。)

Windows Server 2003にWebサイトを展開しようとしています。次のエラーメッセージで何かが足りないか、何が間違っていますか。どうすれば修正できますか?感謝

エラーメッセージが表示されます。

サーバーとの接続は正常に確立されましたが、ログインプロセス中にエラーが発生しました。 (プロバイダー:共有メモリプロバイダー、エラー:0-パイプの反対側にプロセスはありません。)説明:現在のWeb要求の実行中に未処理の例外が発生しました。エラーの詳細とコードのどこで発生したかについては、スタックトレースを確認してください。

例外の詳細:System.Data.SqlClient.SqlException:サーバーとの接続は正常に確立されましたが、ログインプロセス中にエラーが発生しました。 (プロバイダー:共有メモリプロバイダー、エラー:0-パイプの反対側にプロセスはありません。)

ソースエラー:

現在のWeb要求の実行中に、未処理の例外が生成されました。例外の発生元と場所に関する情報は、以下の例外スタックトレースを使用して特定できます。

スタックトレース:

[SqlException(0x80131904):サーバーとの接続は正常に確立されましたが、ログインプロセス中にエラーが発生しました。 (プロバイダー:共有メモリプロバイダー、エラー:0-パイプの反対側にプロセスはありません。)]
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)+1019
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)+108
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection、DbConnectionFactory connectionFactory)+126
System.Data.SqlClient.SqlConnection.Open()+125
NHibernate.Connection.DriverConnectionProvider.GetConnection()+104
NHibernate.Tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.Prepare()+15 NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.GetReservedWords(Dialect dialect、IConnectionHelper connectionHelper)+89
NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)+80
NHibernate.Impl.SessionFactoryImpl..ctor(構成cfg、IMappingマッピング、設定設定、EventListenersリスナー)+599
NHibernate.Cfg.Configuration.BuildSessionFactory()+104
MyProject.API.Data.SessionManager..cctor()in C:\ Dev\Code\API\Data\SessionManager.cs:27

54
learning

通常、これをトラブルシューティングするには、SQL Server構成マネージャー(SSCM)に移動し、次のことを行います。

  1. 共有メモリプロトコルが有効になっていることを確認します
  2. 名前付きパイププロトコルが有効になっていることを確認します
  3. tCP/IPが有効になっており、設定で名前付きパイプよりも先にあることを確認します

多分それは助けることができます: SQL Serverへの接続を開くことができませんでした

55
DimonZa

これと同じエラーメッセージが表示されましたが、混合モード認証が有効になっていないことが原因でした。 Windows Authのみを使用していました。これは、vSphereのデフォルトのMSSQL展開で一般的であり、vSphere 5.1にアップグレードするときに問題になります。

混合モード認証に変更するには、 http://support.webecs.com/kb/a374/how-do-i-configure-sql-server-express-to-enable-mixed- mode-authentication.aspx

30
LowWalker

SQL Server Management Studioでも同じエラーが発生しました。

より具体的なエラーを調べるには、SQL Serverによって作成されたログファイルを見てください。ログファイルを開くと、このエラーが見つかりました

「2」ユーザー接続の最大数に既に達したため、接続できませんでした。システム管理者は、sp_configureを使用して最大値を増やすことができます。接続が閉じられました

私はこれを理解するのにかなりの時間を費やします。最後に、次のコードを実行すると問題が解決しました。

sp_configure 'show advanced options', 1;
go

reconfigure
go

sp_configure 'user connections', 0
go

reconfigure
go

here および here の詳細

編集

ログを表示するには、Windows起動ボタンで「ログ」を検索し、「イベントログを表示」をクリックします。そこから「Windowsログ」の下のアプリケーションに移動します。 「システム」ログを選択して、システムに関するエラーを確認することもできます。右側の[現在のログをフィルター]をクリックして[エラーチェックボックス]を選択すると、現在のログでフィルターを使用できます。

19
Hammad Khan

ちょうど別の可能性。この問題を解決するには、SQLサーバーサービスを再起動する必要がありました。

8
khr055

次のように、サーバー認証モードを混合モードに有効にする必要があります。SQLStudioで、[YourServer]-> [プロパティ]-> [セキュリティ]-> [SqlServerおよびウィンドウ認証モードの選択]を選択します。

4
DupDup

Windows資格情報->ログイン->ログインを選択->プロパティで->ログインが有効か無効かを確認して、SQLサーバーに移動します。無効にした場合、有効にします。このソリューションはうまくいきました。

3
user3226665

接続文字列に"Trusted_Connection=true"が追加されているかどうかを確認してください。

今日、このエラーが発生しました。私の場合、SQLサーバー上のERRORLOGファイルを見ると、次のエラーが表示されました。

ユーザー ''のログインに失敗しました。理由:ログインプロパティで指定されたデータベース ''を開けませんでした。

これは、数日前にこのユーザーの「デフォルトデータベース」を削除したためです。デフォルトのデータベースを新しいデータベースに設定すると、問題が修正されました。

これが他の誰かに役立つことを願っています。

1
Scotty

「C:\ Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Log\ERRORLOG」にあるSQL SERVERログファイルを調べると、「ユーザー 'XXXXX'のログインに失敗しました。理由: SQL認証を使用したログインの試行に失敗しました。サーバーはWindows認証専用に構成されています。[CLIENT:] "

修正方法は、「Microsoft SQL Server Management Studio」を開くことです-> SQLサーバーを右クリックして、「プロパティ」->セキュリティ->認証を混合モードに変更します。 -> SQLサーバーを再起動します。

1
Will Yang

「Password = xxx;」を追加するのを忘れました私の場合、接続文字列で。

1
Charles HETIER

MSSQLサーバーのインストール中に混合認証モードを有効にします。 saユーザーのパスワードも入力します。

0
Sakib

こんにちは、以下に添付されているスクリーンショットに従って、サーバー認証の両方を有効にします。

enter image description here

0
Deepak Bajaj

調査のすべての有効かつ有効なコース、特に詳細情報のログ。

これをヒットする人にとっては、DBユーザーを作成したときにパスワードポリシーを適用し、最初のログインでパスワードを変更するようにユーザーに任せる(つまり、パスワードフィールドの周りのチェックボックスをデフォルト値のままにしておく) 。

SQL Management Studioで非常に簡単に実行でき、ログを調べない限り、認証されていない問題がマスクされることがあります。

0
Cueball 6118

これは古いですが、接続ダイアログで、削除したデータベースがデフォルトのままであるという問題がありました。そして、これらのコマンドを実行しても、プロンプトのデフォルトデータベースは変更されませんでした。 「サーバーに接続」ダイアログを開いて「オプション」を選択し、「接続プロパティ」タブを選択するとtypingデフォルトのデータベース(noドロップダウンから選択することにより)データベースは入力された新しい値のままになります。これは私には欠陥のように聞こえますが、誰かがそれについて疑問に思っていた場合、少なくともSQL Server 2012では問題を修正する必要があります

0
user3223834