SQL Serverへのログインができない+SQL Server認証+エラー。18456

localhost\sql2008サーバーにログインアカウントを作成しました(例:User123)。

データベースにマップされています(デフォルト

SQL Server の Authentication Mode は both (Windows and SQL) に設定されています。

しかし、SQL Serverへのログインに失敗し、以下のメッセージが表示されます(User123の場合)。

注:ユーザー名とパスワードが正しく入力されているか、何度も確認しました。

エラーの詳細。

ユーザー 'User123'のログインに失敗しました。

(Net.SqlClientデータプロバイダー) と表示されました。 サーバー名:localhost\sql2008 エラー内容 番号:18456 深刻度:14 状態:1 行番号 : 65536

宜しくお願いします。

SQL Server Authenticationを有効にする必要があります。

1.オブジェクトエクスプローラーで、サーバーを右クリックし、「プロパティ」をクリックします。

.

2.サーバーのプロパティ]ウィンドウで、左側のページ一覧から[セキュリティ]をクリックします。Server Authentication"の項目で、"SQL Server and Windows Authentication mode"のラジオオプションを選択します。

をクリックします。

3.SQLEXPRESSサービスを再起動します。

解説 (18)
ソリューション

デフォルトのログイン失敗エラーメッセージは、ログイン資格情報の不一致のためにクライアントユーザーの接続がサーバーによって拒否されたことに他なりません。最初に確認することは、そのユーザーがSQL Serverインスタンスと関連するデータベースに対して関連する権限を持っているかどうかですが、これは良いことです。明らかに必要な権限が設定されていない場合は、そのユーザーのログインに関連する権限を与えて問題を解決する必要があります。

そのユーザーがデータベースとサーバーに関連した権限を持っていても、サーバーがそのログインのための認証問題に遭遇すると、SQL Serverに認証を返すことができなくなり、クライアントは以下のエラーメッセージを受け取ります。

Msg 18456, Level 14, State 1, Server , Line 1
Login failed for user ''

Ok now what, エラーメッセージを見ると、レベル&の状態を理解するには説明不足のように感じます。デフォルトでは、オペレーティング・システム・エラーは、ログインの認証に関する問題の性質にかかわらず、 'State'を1として表示します。そのため、さらに調査するには、このエラーの深刻度と状態の詳細について、関連するSQL Serverインスタンスのエラーログを調べる必要があります。ログの対応するエントリを見てみましょう。

2007-05-17 00:12:00.34 Logon     Error: 18456, Severity: 14, State: 8.
or

2007-05-17 00:12:00.34 Logon     Login failed for user ''.

上記で定義したように、エラーの重大度と状態の列は、問題の原因を正確に把握するための鍵となります。上記のエラー番号8の状態は、パスワードの不一致による認証失敗を示しています。オンライン書籍を参照してください。デフォルトでは、重大度が19未満のユーザー定義メッセージは、発生してもMicrosoft Windowsアプリケーションログには送信されません。そのため、重大度が19未満のユーザー定義メッセージは、SQL Server Agentの警告を引き起こしません。

SQL Server Protocols (Dev.team)のプログラムマネージャーであるSung Lee氏は、エラー状態の説明について次のように説明しています:一般的なエラー状態とその説明を次の表に示します。

ERROR STATE       ERROR DESCRIPTION
------------------------------------------------------------------------------
2 and 5           Invalid userid
6                 Attempt to use a Windows login name with SQL Authentication
7                 Login disabled and password mismatch
8                 Password mismatch
9                 Invalid password
11 and 12         Valid login but server access failure
13                SQL Server service paused
18                Change password required

Well I'm not finished yet, what would you do in case of error:

2007-05-17 00:12:00.34 Logon     Login failed for user ''.

そのSQL Serverインスタンスのエラーログからは、深刻度や状態のレベルが定義されていないことがわかります。 次のトラブルシューティングのオプションは、イベントビューアのセキュリティログを見ることです[スクリーンショットがないので編集しますが、以下のことがわかります]。

興味深いイベントのイベントログを見てみましょう]。

解説 (9)

私も同じ問題が発生しましたが、私の場合はサーバー認証を"SQL Server and Windows Authentication mode"に設定していなかったためでした(あなたは設定していました)。

これには以下の方法でアクセスできます。

  • インスタンスを右クリック(IE SQLServer2008
  • プロパティ」を選択します。
  • セキュリティ]オプションを選択します。
  • Server authentication" を "SQL Server and Windows Authentication mode&quot に変更します。
  • SQLServerサービスの再起動
  • インスタンスを右クリックします。
  • Restart&quot "をクリックします。
解説 (2)