Microsoft SQL Server'da Oturum Açma Hatası: 18456


296

SQL Server'a bağlanmaya çalışırken bu hatayı alıyorum.

Microsoft SQL Server Hatası: 18456

Birisi bana hata kodunun ne anlama geldiğini söyleyebilir mi?


6
İmleç araması, hata kodunun bir oturum açma hatası olduğunu ve genellikle daha ayrıntılı bilgilerle birlikte geldiğini gösterir.
David

Ve bu daha ayrıntılı bilgi sql sunucusu hata günlüğünde olmalıdır. Sayının kendisi kasıtlı olarak size çok şey anlatmaz, bu yüzden krakerler bunu girişimlerinin nerede yanlış gittiğine dair ipuçları için kullanamaz.
Tony Hopkinson

yararlı bilgiler burada
sairfan

1
Ben sadecerun as administrator
Jacksonkr

Yanıtlar:


707

"SQL Server Kimlik Doğrulaması" kullanarak bağlanmaya çalışıyorsanız, sunucu kimlik doğrulamanızı değiştirmek isteyebilirsiniz:

Nesne gezginindeki Microsoft SQL Server Management Studio içinde:

  1. Sunucuya sağ tıklayın ve Properties

  2. Git Securitysayfa

  3. Altında radyo düğmesini Server authenticationseçinSQL Server and Windows Authentication mode

  4. Tıklayın OK

  5. SQL Hizmetlerini Yeniden Başlat


32
Teşekkürler. Kullanıcı eklemeye çalıştığınızda hiçbir uyarı mesajı yok.
JohnnyBizzle

12
Tam olarak ne demek "Sağ tıklama sunucusu ve tıklama özellikleri" bu nerede?
emcor

9
Nesne Explorer'ınızdaki üst düğümü ifade eder - oynat düğmeli sarı silindir
JGilmartin

21
Bu, insanların karşılaştığı çok yaygın bir sorundur. Bu basit ayarın kapalı olduğunu fark etmeden kalbinizin içeriğinde SQL Server oturumları oluşturabileceğiniz gerçeği IMO'yu kafa karıştırıyor. Bunu doğru cevap olarak tavsiye ederim.

7
@JGilmartin, Bağlanamayacağınız anlamına gelen Hata 18456'ya sahip olduğunuzda, Nesne Gezgini'nde sunucuya tam olarak nasıl bağlanabileceksiniz ?
Shai Alon

69

Veri platformu ekibinden bu blog makalesine göz atın.

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

Sorunun temel nedenini bulmak için hata iletisinin durum kısmına bakmanız gerekir.

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

Daha sonra Google, sorunun nasıl çözüleceğini.


42
Kendi kornamı tootlamak değil, ama burada çok daha fazla bilgi derledim
Aaron Bertrand

Her zaman korna çalıyorsun ... Yukarı oy için teşekkürler? Ama listeniz daha eksiksiz görünüyor! Çoğu insanın Google'ı nasıl kullanacağını bilmediğini düşünüyorum.
CRAFTY DBA

1
Oy kullanmak için cazip davrandım, ancak yırtıldım çünkü Google tarafından cevaplanabilecek soruları yanıtlamak insanları sadece arama yapmak yerine burada sormaya devam etmeye teşvik ediyor ...
Aaron Bertrand

13
Buradaki soruların% 99'u büyük olasılıkla Google tarafından yanıtlanabilir, ancak basit bir soru ve cevap önemli miktarda arama süresi ve genellikle gereksiz makaleler / bloglar üzerine dökülür ve böylece benden bir oy alır!
Chris Nevill

12
BURADA google'ı kullandığımda cevapları bulduğum yer (google SO aramalarından çok daha iyi aramalar SO ...)
Cos Callis

27

Açmadan önce sağ tıklayın ve 'Yönetici Olarak Çalıştır'ı seçin. Bu benim için problemi çözdü.


1
bu benim için bir çözümdü. State: 1Hata mesajında bulundum .
16:58

@Gsic Sen gerçek bir kurtarıcısın. Bir günden fazla bir süredir mücadele ediyorum ve çözümünüz çözdü. Teşekkürler
Karthik

Ne açmadan önce ??
Mike

11

önce "state" "1" ise hatanın ayrıntılarına bakın SQL Server / Properties / Security altında hem SQL hem de Windows kimlik doğrulaması için veritabanının ayarlandığından emin olun.

diğer devlet için yukarıdaki cevaplara bakınız ....


1
OMG teşekkür ederim! Girişlerimin hiçbiri çalışmıyor, daha sonra bu yanıta rastladım ve SQL Express örneğimin "SQL ve Windows kimlik doğrulaması" ndan "Windows kimlik doğrulaması" na bir şekilde değiştiğini gördüm. Geri değişti ve tüm işler.
Ian Kemp

1
Ayrıca, SSMS'yi kapatmak yeterli değilse, değişikliğin etkili olması için SqlServer hizmetine yeniden başlatma gerekir.
Ravid Goldenberg

10

Bu sorunla karşılaştım.

Lütfen ekteki resme bakın,

1. Adım: Sunucu özelliğine gidin

Adım 2: Güvenliğe Git

3. Adım: Sunucu kimlik doğrulamasını SQL sunucusu ve Windows Kimlik Doğrulama modu olarak değiştirin

ve Sql sunucunuzu yeniden başlatın.

resim açıklamasını buraya girin


9
  1. Sunucu-> özelliklerinizde karma mod kimlik doğrulamasının etkin olup olmadığını kontrol edin
  2. Sonra sunucu-> güvenliğinde bir giriş oluşturun
  3. veritabanınızda bu giriş için bir kullanıcı oluşturun
  4. Ardından, örneği sağ tıklayarak sunucunuzu yeniden başlatın ve yeniden başlat'ı seçin

5

Sadece başıma geldi ve burada listelenen diğer tüm vakalardan farklı olduğu ortaya çıktı.

Aynı kümede barındırılan iki sanal sunucum var, her birinin kendi IP adresi var. Ana makine, sunuculardan birini SQL Server, diğerini Web sunucusu olarak yapılandırdı. Ancak, SQL Server yüklü ve her ikisinde de çalışıyor. Ana bilgisayar, hangi sunucuların SQL ve Web olduğunu belirtmeyi unuttum, bu yüzden sadece ilk Web, ikincisi SQL olduğunu varsaydım.

SQL Server'a (düşündüğüm) bağlandığımda ve Windows Kimlik Doğrulaması'nı seçerek SSMS aracılığıyla bağlanmaya çalıştığımda, bu soruda belirtilen hatayı aldım. Çok sayıda tüy çıkardıktan sonra, SQL Server Ağ Yapılandırması, MSSQLSERVER Protokolleri de dahil olmak üzere tüm ayarları gözden geçirdim:

TCP / IP yapılandırmasının ekran görüntüsü

TCP / IP'yi çift tıklatmak bana şunu verdi:

TCP / IP özellikleri, yanlış IP adresi gösteriyor

IP adresi diğer sanal sunucudaydı! Bu nihayet bana sadece sunucular arasında karıştı ve tüm ikinci sunucuda iyi çalıştı fark etti.


4

Bir oturum açma kullanıcı bilgilerini değiştirirseniz veya yeni oturum açma kullanıcısı eklerseniz, oturum açmanız gerektiğinde SQL Server Hizmetini yeniden başlatmanız gerekir. bunun için

GİT -> Hizmetler gri renk satırı

Ardından SQL Server'a (MSSQLSERVER) gidin ve durun ve yeniden başlayın

Şimdi giriş yapmayı dene, umarım yapabilirsin.

Teşekkürler


3

18456 Hata Durumu Listesi

HATA DEVLET HATASI TANIMI

  • Durum 2 ve Durum 5 Geçersiz kullanıcı kimliği
  • Durum 6 SQL Kimlik Doğrulaması ile bir Windows oturum açma adı kullanmaya çalışın
  • Durum 7 Oturum açma devre dışı ve şifre uyuşmazlığı
  • Durum 8 Şifre uyuşmazlığı
  • Durum 9 Geçersiz şifre
  • Durum 11 ve Durum 12 Geçerli oturum açma ancak sunucu erişim hatası
  • Durum 13 SQL Server hizmeti duraklatıldı
  • Durum 18 Parola değiştirme gerekli

Olası nedenler Aşağıda nedenlerin bir listesi ve ne yapılacağıyla ilgili kısa bir açıklama verilmiştir:

SQL Kimlik Doğrulaması etkin değil : SQL Server örneğinde ilk kez SQL Login kullanıyorsanız, sunucu Windows Kimlik Doğrulama modunda ayarlanmış olabileceğinden (yalnızca) 18456 hatası oluşur.

Nasıl düzeltilir ? Bu SQL Server ve Windows Kimlik Doğrulama Modu sayfasını kontrol edin.

Geçersiz kullanıcı kimliği: SQL Server, almaya çalıştığınız sunucuda belirtilen UserID'yi bulamıyor. Bunun en yaygın nedeni, bu kullanıcı kimliğinin sunucuda erişimine izin verilmemesidir, ancak bu aynı zamanda basit bir yazım hatası olabilir veya yanlışlıkla farklı bir sunucuya bağlanmaya çalışıyorsunuz (Birden fazla sunucu kullanıyorsanız tipiktir)

Geçersiz şifre: Yanlış şifre veya sadece yazım hatası. Bu kullanıcı adının farklı sunucularda farklı şifreleri olabileceğini unutmayın.

daha az yaygın hatalar: Kullanıcı kimliği sunucuda devre dışı bırakılmış olabilir. SQL Kimlik Doğrulaması için Windows oturumu açıldı (Windows Kimlik Doğrulaması olarak değiştirin. SSMS kullanıyorsanız, bu seçeneği kullanmak için farklı bir kullanıcı olarak çalıştırmanız gerekebilir). Parolanın süresi dolmuş olabilir ve muhtemelen başka nedenleri olabilir…. Eğer başka birini biliyorsanız bana bildirin.

18456 durum 1 açıklamaları: Genellikle Microsoft SQL Server, hata durumu 1'i verecektir, bu aslında 18456 hatası dışında bir şey ifade etmez. Durum 1, benim için anlamlı olan sistemi korumak için gerçek durumu gizlemek için kullanılır. Aşağıda, tüm farklı durumları içeren bir liste ve doğru durumları ziyaret etme hakkında daha fazla bilgi için SQL Server 2005'te "oturum açma başarısız oldu" (Hata 18456) hata iletilerini anlama sayfasını

umarım yardımcı olur


2

Kullanıcıya sağ tıklayın, özelliklere gidin, varsayılan veritabanını master olarak değiştirin Bu, 19456 hatasını alıp almadığınızı kontrol etmeniz gerekenleri gösteren görüntünün ekran baskısıdır. Bazen varsayılan olarak kullanıcının sahip olmadığı bir veritabanına geçer izin


2

Önce başlat çubuğuna gidin, ardından yerel servisleri arayın Daha sonra "yerel servisleri görüntüle" ye tıklayın Sonra servis penceresini açıp SQL Server'a (MSSQLSERVER) sağ tıklayın ve durdur'a tıklayın ve sonra tekrar sağ tıklayın ve başlat'a tıklayın. Artık giriş yapabilir ve kullanıcı adınızı 'sa' olarak koyabilirsiniz ve şifre kazanılmış şifrenizdir.



1

Bu bir etki alanı üyesi bilgisayar olup olmadığını ağa bağlı olup olmadığınızı kontrol edin. Ayrıca, ağ ölçümleri nedeniyle rotalarınız yanlış olabileceğinden, çift ev bilgisayarında olmadığınızdan emin olun. SQL windows kimlik doğrulaması yerel PC hesabına geçti ancak SQL kimlik doğrulaması olarak kaydettirdiğim etki alanına bağlanamadığımda bu sorunu yaşadım. Kablosuz bağdaştırıcımı devre dışı bırakıp yeniden başlattıktan sonra, Windows entegrasyonu etki alanı hesabına geri döndü ve para cezası doğruladı. Daha önce yaptığınız gibi Karışık mod ayarlamıştım, böylece önceki yayınlar geçerli değil.



0

Active Directory'de tanımlı bir kullanıcıyla oturum açmaya çalıştığınıza ancak oturum açma ekranında "SQL Server Kimlik Doğrulaması" nı kullanmaya çalışıyorsanız bunun olabileceğine inanıyorum. NTLM / Windows Kimlik Doğrulaması ile farklı bir kullanıcıyı nasıl belirleyeceğimi bilmiyorum: Windows Kimlik Doğrulaması açılır menüsünü tıkladığımda, kullanıcı adı ve parola boşaltılır ve yalnızca kendim olarak oturum açabilirim.


0

Benim durumumda birden fazla yanlış deneme hesabı kilitledi. Bunu yapmak için aşağıdaki sorguyu çalıştırmayı denedim ve işe yaradı: ALTER LOGIN with PASSWORD = UNLOCK Ve belirli bir kullanıcı tarafından işaretlenmemiş "Password Security Enforce" seçeneğini ayarladığınızdan emin olun Sql Server -> Özellikler 'e sağ tıklayın.


0

SQL Server bağlantı sorunlarını giderme

SQL Kimlik Doğrulaması ile bağlantı kuramıyorsanız ve diğer çözümleri denediyseniz.

Aşağıdakileri deneyebilirsiniz:

Bağlantıyı kontrol edin

  • Güvenlik Duvarını devre dışı bırakın.
  • 1434'te PortQry'yi çalıştırın ve cevabı kontrol edin.

Durumu kontrol et

  • SSMS veya sqlcmd ile bağlanmayı deneyin ve mesajı kontrol edin.
  • Durum 1 nadiren belgelenir, ancak gerçek durumu bilmeme hakkınız olmadığı anlamına gelir.
  • Durumun ne olduğunu öğrenmek için SQL sunucusu dizinindeki günlük dosyasına bakın.

Devlet 5

Ne ? giriş bilgilerim mevcut değil mi? tam orada, SSMS'de görebiliyorum. Nasıl olabilir ?

En olası açıklama en doğru açıklamadır.

Giriş durumu

  • Yok et, yeniden yarat, etkinleştir.
  • şifreyi sıfırlayın.

Veya...

"Doğru yere bakmıyorsunuz" veya "gördüğünüz şey düşündüğünüz şey değil".

Yerel DB ve SQLEXPRESS çakışması

Windows kimlik doğrulaması ile SSMS ile bağlanabilir ve örnek SQLEXPRESS adlandırılır, muhtemelen bakıyorsun LocalDB ve sağ sunucu değil . Böylece, LocalDb'de girişinizi yeni oluşturdunuz.

SSMS ile SQL Server kimlik doğrulaması yoluyla bağlandığınızda, sevdiğiniz girişinizin henüz mevcut olmadığı SQLEXPRESS gerçek sunucusuna bağlanmaya çalışır.

Ek not: Orada tuhaf bir bağlantı dizesi unutmadıysanız bağlantı parametreleri sekmesine bakın.



0

Başka çalıştı benim için bir çözüm. serever->security->logins->new logins->General->kullanıcı adınızı giriş adı olarak oluşturun, sql sunucusu kimlik doğrulamasını tıklayın

şifre doğrulama üç onay kutusunun işaretini kaldırın. Bu çalışacak.

Sunucu özelliklerini değiştirmeyi unutmayın -> Güvenlik Server authentication-SQL Server and Windows Authentication mode


0

sen saux için mssql şifresini değiştirmek için linux yapabilirsiniz

sudo / opt / mssql / bin / mssql-conf kurulumu

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

SQL örneğimin altında yeni bir sysadmin kullanıcısı oluşturduktan sonra bu hatayı aldım. Yönetici kullanıcım belirli bir etki alanı altında oluşturuldu MyOrganization / useradmin

Kullanılması useradmin bir bağlantısı kesilmiş çevre üzerindeki SQL Server kimlik doğrulaması kullanan diğer kullanıcıları oluşturmak izin verir, ancak en kısa sürede size olsun giriş çalışırken

Microsoft SQL Server Hatası: 18456

Sorunu çözmek için, Organizasyon ağınıza tekrar bağlanmayı deneyin ve bağlıyken kullanıcıyı yaratın, ardından bağlantınız kesilebilir ve çalışacaktır.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.