SQL Serverに接続しようとしているときにこのエラーが発生します。
Microsoft SQL Serverエラー:18456
エラーコードの意味を誰かに教えてもらえますか。
あなたが "SQL Server認証"を使って接続しようとしているなら、あなたはあなたのサーバー認証を修正したいかもしれません:
オブジェクトエクスプローラのMicrosoft SQL Server Management Studio内で、次の手順を実行します。
サーバーを右クリックしてProperties
をクリックします。
Security
ページに行く
Server authentication
の下でSQL Server and Windows Authentication mode
ラジオボタンを選択します
OK
をクリック
SQLサービスを再起動します。
データプラットフォームチームからこのブログ記事をチェックしてください。
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はどのように問題を解決するのか。
開く前に、右クリックして[管理者として実行]を選択します。これで問題は解決しました。
最初に "state"が "1"の場合、エラーの詳細を参照してください。データベースがSQL server/Properties/Securityの下でSQL認証とWindows認証の両方に設定されていることを確認してください。
他の状態については上記の答えを参照してください....
ちょうど私に起こった、そしてここにリストされている他のすべてのケースとは異なることがわかった。
2つの仮想サーバーが同じクラスター内でホストされていて、それぞれが独自のIPアドレスを持っていることがあります。ホストは、一方のサーバーをSQL Serverに、もう一方のサーバーをWebサーバーに設定しました。ただし、SQL Serverは両方にインストールされ、実行されています。ホストは、どのサーバーがSQLでどれがWebであるかについて言及するのを忘れていたので、最初のものをWeb、2番目のものをSQLと仮定しました。
私が考えていたSQL Serverに接続し、Windows認証を選択してSSMS経由で接続しようとすると、この質問に記載されているエラーが発生しました。たくさんの髪の毛を引っ張った後、私はSQL Serverネットワーク構成、MSSQLSERVERのためのプロトコルを含むすべての設定を調べました:
TCP/IPをダブルクリックして私にこれを与えた:
IPアドレスは他の仮想サーバーのものです。これでようやくサーバー間を混同してしまい、2台目のサーバーでうまく機能したことに気付きました。
18456エラー状態リスト
エラー状態エラーの説明
潜在的な原因以下は、理由のリストと、対処方法の簡単な説明です。
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)エラーメッセージについて を参照してください。
役立つことを願っています
最初にスタートバーに行き、ローカルサービスを検索します。それから「ローカルサービスを見る」をクリックします。それからそれはサービスウィンドウを開き、それからそれを右クリックして停止をクリックします。これで、ログインして自分のユーザー名を「sa」に設定でき、passwordがあなたの獲得したパスワードになります。
ユーザーを右クリックしてプロパティを開き、デフォルトのデータベースをmasterに変更しますこれはエラー19456が発生したかどうかを確認する必要があるものを示すイメージのスクリーン印刷です。許可
また、Windows認証でログインして次のクエリを実行して有効にすることもできます。
ALTER LOGIN sa ENABLE ;
GO
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>' ;
GO
私にとって、それは 間違った ログイン名とパスワードでした。
これがドメインメンバーPCの場合は、ネットワークに接続しているかどうかを確認してください。また、ネットワークメトリクスが原因でルートが正しくない可能性があるため、デュアルホームPCに接続していないことを確認してください。 SQLウィンドウ認証がローカルPCアカウントに切り替えられたがドメインをSQL認証として登録したドメインに接続できなかったとき、私はこの問題を抱えていた。ワイヤレスアダプタを無効にして再起動すると、Windows統合はドメインアカウントに戻り、正常に認証されました。あなたがすでに行ったように私はすでに混合モードを設定していたので前の投稿は適用されません。
これは最近、アプリケーション接続文字列内のデータベース名のスペルミスが原因で発生しました。
SQL認証に接続できず、他の解決策を試してみた場合。
以下を試してください。
何 ?私のログインは存在しませんか?それはすぐそこです、私はSSMSでそれを見ることができます。どうすることができますか?
最も可能性の高い説明は、正しい説明である可能性が最も高いです。
それとも….
"あなたは正しい場所を見ていない"または "あなたが見るものはあなたが思うものではない"。
Windows認証を使用してSSMSに接続し、インスタンスの名前がSQLEXPRESSの場合は、おそらく LocalDb と を見ているのでしょうが、正しいサーバー ではありません。それであなたはただLocalDbにあなたのログインを作成しました。
あなたがSSMSとのSQL Server認証を通して接続するとき、それはあなたの最愛のログインがまだ存在しないSQLEXPRESS実サーバーに接続しようとします。
追加の注意事項: 変な接続文字列を忘れていない場合は、接続パラメータタブを確認してください。
あなたは、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.
私の場合、複数の間違った試みがアカウントをロックしました。それをするために私は以下のクエリを実行しようとしました、そしてそれはうまくいきました。 Sql Server - > Propertiesを右クリックします。
もう一つの 働いた 私のための解決策。 serever->security->logins->new logins->General->
ログイン名としてあなたのユーザー名を作成し、SQLサーバー認証をクリックしてパスワードを追加します
パスワード確認の3つのチェックボックスをオフにします。これはうまくいくでしょう。
サーバーのプロパティを変更することを忘れないでください - >セキュリティをServer authentication
からSQL Server and Windows Authentication mode
に
SQLインスタンスの下に新しいsysadminユーザーを作成した後にこのエラーが発生しました。私の管理ユーザーは特定のドメインで作成されましたMyOrganization/useradmin
切断された環境でseradminを使用すると、SQL Server認証を使用して他のユーザーを作成できますが、ログインしようとするとすぐに
Microsoft SQL Serverエラー:18456
問題を解決するには、組織のネットワークに再度接続して、接続中にユーザーを作成してみてください。そうすれば、切断されて機能します。
Active Directoryで定義されているユーザーでログインしようとしているが、ログイン画面で「SQL Server認証」を使用しようとしている場合、これが発生する可能性があると思います。 NTLM/Windows認証で別のユーザーを指定する方法がわかりません。Windows認証ドロップダウンをクリックすると、ユーザー名とパスワードが空白になり、自分自身でしかログインできなくなります。
私は同じ問題に直面しました。最初に混合モード認証を有効にする必要があります。詳細については 混合モード認証を有効にする方法