Ако сървърът срещне грешка, която пречи на успешното влизане, клиентът ще покаже следното съобщение за грешка.
Msg 18456, Level 14, State 1, Server <server name>, Line 1
Login failed for user '<user name>'
- Обикновено това означава, че заявката ви за връзка е била успешно получена от името на сървъра, което сте посочили, но сървърът не може да ви предостави достъп поради редица причини и извежда грешка:18456.
- Този eventID понякога предоставя и състояние 1, което всъщност не е толкова полезно, тъй като поради съображения за сигурност всяка грешка се преобразува в състояние 1, освен ако не можете да проверите влизането на сървъра.
- Microsoft не предоставя много полезни кутии за съобщения, така че по-долу са някои обяснения защо получавате грешката.
Невалиден потребителски идентификатор: SQL Server не може да намери посочения UserID на сървъра, който се опитвате да получите. Най-честата причина е, че този потребителски идентификатор не е получил достъп до сървъра, но това може да е и проста печатна грешка или случайно се опитвате да се свържете с друг сървър (типично, ако използвате повече от един сървър)
Невалидна парола: Грешна парола или просто печатна грешка. Не забравяйте, че това потребителско име може да има различни пароли на различни сървъри.
по-рядко срещани грешки: Потребителският ID може да е деактивиран на сървъра. Влизането в Windows е предоставено за SQL удостоверяване (променете на удостоверяване на Windows. Ако използвате SSMS, може да се наложи да стартирате като различен потребител, за да използвате тази опция). Паролата може да е изтекла и вероятно няколко други причини...
18456 посочете 1 обяснения: Обикновено Microsoft SQL Server ще ви даде състояние на грешка 1, което всъщност не означава нищо, освен че имате грешка 18456. Състояние 1 се използва за скриване на действителното състояние, за да се защити системата, което за мен има смисъл. По-долу е даден списък с всички различни състояния и за повече информация относно извличането на точни състояния посетете Разбиране на съобщенията за грешка „неуспешно влизане“ (Грешка 18456) в SQL Server 2005
SQL удостоверяването не е активирано: Ако използвате SQL Login за първи път на екземпляр на SQL Server, много често се появява грешка 18456, тъй като удостоверяването на Windows (само) е зададено в свойствата на сървъра (секция за сигурност).
За достъп до свойствата на сървъра,- Отворете SQL Server Management Studio, отидете в панела на Object Explorer (използвайте изглед, ако не можете да го видите).- Използвайте бутона за свързване, за да се свържете с базата данни за вашия сървър. След като се свържете, ще го видите в изследователя на обекти.- Щракнете с десния бутон върху сървъра и щракнете върху свойства. Ще се появи прозорец със свойства на сървъра.
Вижте екранната снимка по-долу, която може да причини неуспешно влизане в SQL
Трябва да зададете удостоверяване на сървъра на SQL Server Удостоверяване на Windows
За да разрешите тази грешка, следвайте стъпките по-долу на компютър със SQL Server 2005.
- Създайте нов потребител с привилегия на администратор със същото потребителско име и парола като SQL Server 2008 в операционна система.
- В базата данни на SQL Server създайте нов потребител, като разгънете DatabaseNode>> Защита>> Вход>> - Създайте нов потребител и добавете този нов потребител с избран радио бутон за удостоверяване на Windows. - Този потребител може да бъде добавен само чрез избрано удостоверяване на Windows, това е потребителско влизане на операционната система.
- След като горните две стъпки бъдат завършени, когато се свържете от SQL Server 2008 към SQL Server 2005 с помощта на удостоверяване на Windows, той ще се свърже успешно.
Как да поправя? Вижте този видеоклип с връзка Страница за SQL сървър и режим за удостоверяване на Windows.