[解決済み] SQL Server + SQL Server Authentication + Errorにログインできない。18456
質問
localhostsql2008 サーバーにログインアカウントを作成しました (例: User123)
データベースへのマッピング(デフォルト)
SQL Server の認証モードは両方 (Windows と SQL) に設定されています。
しかし、SQL Server へのログインに失敗し、次のメッセージが表示されます (User123 の場合)。
注:ユーザー名とパスワードが正しく入力されていることを複数回確認しました。
エラーの詳細です。
ユーザ 'User123' のログインに失敗しました。 (Net.SqlClientデータプロバイダ)
サーバー名: localhost³³2008 Error 数:18456 深刻度:14 状態:1 行番号: 65536
この件に関して何か助けがあればお願いします。
どのように解決するのですか?
デフォルトでは、ログイン失敗のエラーメッセージは、ログイン資格情報の不一致のために、クライアントユーザーの接続がサーバーによって拒否されたことにほかなりません。最初のタスクは、そのユーザーが SQL Server インスタンスおよび関連するデータベースで適切な特権を持っているかどうかを確認することです。明らかに、必要な特権が設定されていない場合、そのユーザーのログインに関連する特権を付与することによって、この問題を解決する必要があります。
そのユーザーがデータベースとランプに関連する権限を持っている場合でも、サーバーがそのログインに何らかの資格の問題を検出すると、SQL Server に認証を戻すことができなくなり、クライアントには次のエラーメッセージが表示されます。
Msg 18456, Level 14, State 1, Server <ServerName>, Line 1
Login failed for user '<Name>'
エラーメッセージを見ると、Level & 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 '<user name>'.
上記のように、エラーのSeverityとStateの列は、問題の原因を正確に把握するための鍵となります。上記のエラーのうち、8番の状態は、パスワードの不一致による認証の失敗を示しています。書籍オンラインを参照してください。デフォルトでは、深刻度19以下のユーザー定義メッセージは、発生してもMicrosoft Windowsアプリケーションログに送信されません。したがって、深刻度が19より低いユーザー定義メッセージは、SQL Server Agentの警告をトリガーしません。
SQL Server Protocols (Dev.team) のプログラムマネージャーである Sung Lee は、Error state description:The common error states and their descriptions are provided in the following table について、さらなる情報を概説しています。
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 '<user name>'.
SQL Server インスタンスのエラーログから、深刻度や状態レベルが定義されていないことがわかります。 したがって、次のトラブルシューティングのオプションは、イベント ビューアーのセキュリティ ログを見ることです [スクリーン ショットがないため編集してください] が、次のようになります。
アイデア、イベント ログで興味深いイベントを探す] です。
関連
-
[解決済み] sql文の角括弧[]の使い方を教えてください。
-
[解決済み] SSISの日付と時刻の連結
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] SQL ServerにおけるLEFT JOINとLEFT OUTER JOINの比較
-
[解決済み] SQL Server にテーブルが存在するかどうかを確認する
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
-
[解決済み] SQL ServerでINNER JOINを使用して削除するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】フラットファイルの日付カラムで「キャスト指定に無効な文字値があります」を修正する方法とは?
-
[解決済み] 「ストアドプロシージャが見つかりませんでした
-
[解決済み] Microsoft OLE DB Provider for SQL Server エラー '80040e14' '=' 付近の構文が正しくない
-
[解決済み] テーブルが存在しない場合、"Table 'dbo.Foo' already exists." というエラーはどのように解決すればよいですか?
-
[解決済み] 累積和の求め方
-
[解決済み] オペランドタイプの衝突
-
[解決済み] 一括読み込みができません。オペレーティングシステムのエラーコード5(アクセスが拒否されました。)
-
[解決済み] SQLのReplace関数内の正規表現?
-
[解決済み] SQL Serverでforeachを記述する方法とは?
-
[解決済み] SQL ServerでGROUP BYと一緒にDISTINCTを使用する