web-dev-qa-db-ja.com

Microsoft SQL Serverにログインするエラー:18456

SQL Serverに接続しようとしているときにこのエラーが発生します。

Microsoft SQL Serverエラー:18456

エラーコードの意味を誰かに教えてもらえますか。

270
merazuu

あなたが "SQL Server認証"を使って接続しようとしているなら、あなたはあなたのサーバー認証を修正したいかもしれません:

オブジェクトエクスプローラのMicrosoft SQL Server Management Studio内で、次の手順を実行します。

  1. サーバーを右クリックしてPropertiesをクリックします。

  2. Securityページに行く

  3. Server authenticationの下でSQL Server and Windows Authentication modeラジオボタンを選択します

  4. OKをクリック

  5. SQLサービスを再起動します。

629
Aringan

データプラットフォームチームからこのブログ記事をチェックしてください。

http://blogs.msdn.com/b/sql_protocols/archive/2006/02/21/536201.aspx

あなたは本当に問題の根本的な原因を見つけるためにエラーメッセージの状態部分を見る必要があります。

2, 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, 12 = Valid login but server access failure
13 = SQL Server service paused
18 = Change password required

その後、Googleはどのように問題を解決するのか。

64
CRAFTY DBA

開く前に、右クリックして[管理者として実行]を選択します。これで問題は解決しました。

24
Gsic

最初に "state"が "1"の場合、エラーの詳細を参照してください。データベースがSQL server/Properties/Securityの下でSQL認証とWindows認証の両方に設定されていることを確認してください。

他の状態については上記の答えを参照してください....

10
Ahmad Jahanbin
  1. サーバー - >プロパティで混在モード認証が有効になっているかどうかを確認してください。
  2. それからserver-> securityでログインを作成します
  3. データベースにそのログイン用のユーザーを作成します。
  4. 次にインスタンスを右クリックしてサーバーを再起動し、再起動を選択します。
7

私はこの問題に直面しました。

添付画像をご覧ください、

SQLサーバーとWindows認証モードとしてSQL認証を変更してください。

そしてSqlサーバーを再起動してください。

enter image description here

6
Neo Vijay

ちょうど私に起こった、そしてここにリストされている他のすべてのケースとは異なることがわかった。

2つの仮想サーバーが同じクラスター内でホストされていて、それぞれが独自のIPアドレスを持っていることがあります。ホストは、一方のサーバーをSQL Serverに、もう一方のサーバーをWebサーバーに設定しました。ただし、SQL Serverは両方にインストールされ、実行されています。ホストは、どのサーバーがSQLでどれがWebであるかについて言及するのを忘れていたので、最初のものをWeb、2番目のものをSQLと仮定しました。

私が考えていたSQL Serverに接続し、Windows認証を選択してSSMS経由で接続しようとすると、この質問に記載されているエラーが発生しました。たくさんの髪の毛を引っ張った後、私はSQL Serverネットワーク構成、MSSQLSERVERのためのプロトコルを含むすべての設定を調べました:

screenshot of TCP/IP configuration

TCP/IPをダブルクリックして私にこれを与えた:

TCP/IP properties, showing wrong IP address

IPアドレスは他の仮想サーバーのものです。これでようやくサーバー間を混同してしまい、2台目のサーバーでうまく機能したことに気付きました。

4
Shadow Wizard

18456エラー状態リスト

エラー状態エラーの説明

  • 状態2および状態5の無効なユーザーID
  • 状態6 SQL認証でWindowsログイン名を使用しようとしています
  • 状態7ログインが無効で、パスワードが一致しません
  • 状態8パスワードの不一致
  • 状態9無効なパスワード
  • 状態11および状態12有効なログインですが、サーバーアクセス障害
  • 状態13のSQL Serverサービスが一時停止しました
  • 状態18パスワードの変更が必要

潜在的な原因以下は、理由のリストと、対処方法の簡単な説明です。

SQL認証が有効になっていない:SQL ServerインスタンスでSQLログインを初めて使用する場合、サーバーがWindows認証に設定されている可能性があるため、エラー18456が非常に頻繁に発生しますモード(のみ)。

修正方法?これを確認してください SQL ServerおよびWindows認証モードページ

無効なユーザーID:SQL Serverは、取得しようとしているサーバーで指定されたユーザーIDを見つけることができません。最も一般的な原因は、このユーザーIDがサーバーへのアクセスを許可されていないことですが、これは単純なタイプミスであるか、誤って別のサーバーに接続しようとしている可能性があります(複数のサーバーを使用する場合は一般的です)

無効なパスワード:間違ったパスワードまたは単なる入力ミス。このユーザー名は、サーバーごとに異なるパスワードを持つことができることに注意してください。

一般的なエラーが少ない:サーバーでユーザーIDが無効になっている可能性があります。 SQL認証用にWindowsログインが提供されました(Windows認証に変更します。SSMSを使用する場合、このオプションを使用するには別のユーザーとして実行する必要があります)。パスワードの有効期限が切れている可能性があり、おそらく他のいくつかの理由があります。他の何かを知っているなら私に知らせてください。

18456状態1の説明:通常、Microsoft SQL Serverはエラー状態1を表示しますが、これは実際には18456エラーがあることを意味します。状態1は、システムを保護するために実際の状態を隠すために使用されますが、これは理にかなっています。以下は、すべての異なる状態のリストであり、正確な状態の取得の詳細については、 SQL Server 2005の「ログイン失敗」(エラー18456)エラーメッセージについて を参照してください。

役立つことを願っています

2
mohammad ha

最初にスタートバーに行き、ローカルサービスを検索します。それから「ローカルサービスを見る」をクリックします。それからそれはサービスウィンドウを開き、それからそれを右クリックして停止をクリックします。これで、ログインして自分のユーザー名を「sa」に設定でき、passwordがあなたの獲得したパスワードになります。

2
Nilachal Sethi

ユーザーを右クリックしてプロパティを開き、デフォルトのデータベースをmasterに変更しますこれはエラー19456が発生したかどうかを確認する必要があるものを示すイメージのスクリーン印刷です。許可

2
Safari Devs

また、Windows認証でログインして次のクエリを実行して有効にすることもできます。

ALTER LOGIN sa ENABLE ;  
GO  
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>' ;  
GO

ソース: https://docs.Microsoft.com/en-us/sql/database-engine/configure-windows/change-server-authentication-mode

1
Jose Ortega

私にとって、それは 間違った ログイン名とパスワードでした。

1
JerryGoyal

これがドメインメンバーPCの場合は、ネットワークに接続しているかどうかを確認してください。また、ネットワークメトリクスが原因でルートが正しくない可能性があるため、デュアルホームPCに接続していないことを確認してください。 SQLウィンドウ認証がローカルPCアカウントに切り替えられたがドメインをSQL認証として登録したドメインに接続できなかったとき、私はこの問題を抱えていた。ワイヤレスアダプタを無効にして再起動すると、Windows統合はドメインアカウントに戻り、正常に認証されました。あなたがすでに行ったように私はすでに混合モードを設定していたので前の投稿は適用されません。

1
Tim Robinson

ログインユーザーの資格情報を変更したり、新しいログインユーザーを追加したりした場合は、ログインが必要になった後、SQL Serverサービスを再起動する必要があります。そのために

に行く - >サービス gray color row

その後、SQL Server(MSSQLSERVER)に行き、停止して再度開始してください。

今すぐログインしてみてください、私はあなたができることを願っています。

ありがとう

1
dush88c

これは最近、アプリケーション接続文字列内のデータベース名のスペルミスが原因で発生しました。

0
StingyJack

SQL Server接続のトラブルシューティング

SQL認証に接続できず、他の解決策を試してみた場合。

以下を試してください。

接続を確認する

  • ファイアウォールを無効にします。
  • 1434でPortQryを実行し、答えを確認してください。

状態を確認する

  • SSMSまたはsqlcmdに接続してメッセージを確認してください。
  • 状態1が文書化されることはめったにありませんが、それはあなたに本当の状態を知る権利がないことを意味します。
  • 状態が何であるかを知るためにSQLサーバのディレクトリのログファイルを見てください。

状態5

何 ?私のログインは存在しませんか?それはすぐそこです、私はSSMSでそれを見ることができます。どうすることができますか?

最も可能性の高い説明は、正しい説明である可能性が最も高いです。

ログインの状態

  • 破壊し、再作成し、有効にします。
  • パスワードを再設定してください。

それとも….

"あなたは正しい場所を見ていない"または "あなたが見るものはあなたが思うものではない"。

ローカルDBとSQLEXPRESSの競合

Windows認証を使用してSSMSに接続し、インスタンスの名前がSQLEXPRESSの場合は、おそらく LocalDb を見ているのでしょうが、正しいサーバー ではありません。それであなたはただLocalDbにあなたのログインを作成しました。

あなたがSSMSとのSQL Server認証を通して接続するとき、それはあなたの最愛のログインがまだ存在しないSQLEXPRESS実サーバーに接続しようとします。

追加の注意事項: 変な接続文字列を忘れていない場合は、接続パラメータタブを確認してください。

0
Fab

あなたは、saアカウントのパスワードを変更するためにmssqlのためにLinuxですることができます

Sudo/opt/mssql/bin/mssql-confのセットアップ

The license terms for this product can be downloaded from
 http://go.Microsoft.com/fwlink/?LinkId=746388 Jump Jump
and found in /usr/share/doc/mssql-server/LICENSE.TXT.
Do you accept the license terms? [Yes/No]:yes
  Setting up Microsoft SQL Server
Enter the new SQL Server system administrator password:  --Enter strong password
Confirm the new SQL Server system administrator password: --Enter strong password
 starting Microsoft SQL Server...
 Enabling Microsoft SQL Server to run at boot...
Setup completed successfully.
0
arnav

私の場合、複数の間違った試みがアカウントをロックしました。それをするために私は以下のクエリを実行しようとしました、そしてそれはうまくいきました。 Sql Server - > Propertiesを右クリックします。

0
Tanay Khede

もう一つの 働いた 私のための解決策。 serever->security->logins->new logins->General->ログイン名としてあなたのユーザー名を作成し、SQLサーバー認証をクリックしてパスワードを追加します

パスワード確認の3つのチェックボックスをオフにします。これはうまくいくでしょう。

サーバーのプロパティを変更することを忘れないでください - >セキュリティをServer authenticationからSQL Server and Windows Authentication mode

0
chamzz.dot

SQLインスタンスの下に新しいsysadminユーザーを作成した後にこのエラーが発生しました。私の管理ユーザーは特定のドメインで作成されましたMyOrganization/useradmin

切断された環境でseradminを使用すると、SQL Server認証を使用して他のユーザーを作成できますが、ログインしようとするとすぐに

Microsoft SQL Serverエラー:18456

問題を解決するには、組織のネットワークに再度接続して、接続中にユーザーを作成してみてください。そうすれば、切断されて機能します。

0
Zinov

Active Directoryで定義されているユーザーでログインしようとしているが、ログイン画面で「SQL Server認証」を使用しようとしている場合、これが発生する可能性があると思います。 NTLM/Windows認証で別のユーザーを指定する方法がわかりません。Windows認証ドロップダウンをクリックすると、ユーザー名とパスワードが空白になり、自分自身でしかログインできなくなります。

0
stolsvik

私は同じ問題に直面しました。最初に混合モード認証を有効にする必要があります。詳細については 混合モード認証を有効にする方法

0
user3603622