Pokud server narazí na chybu, která brání úspěšnému přihlášení, klient zobrazí následující chybovou zprávu.
Msg 18456, Level 14, State 1, Server <server name>, Line 1
Login failed for user '<user name>'
- To obvykle znamená, že váš požadavek na připojení byl úspěšně přijat vámi zadaným názvem serveru, ale server vám z mnoha důvodů nemůže udělit přístup a vyvolá chybu:18456.
- Toto ID události někdy poskytuje také stav 1, což ve skutečnosti není tak užitečné, protože z bezpečnostních důvodů se jakákoli chyba převede na stav 1, pokud nemůžete zkontrolovat přihlášení na serveru.
- Microsoft neposkytuje příliš užitečná pole zpráv, takže níže jsou některá vysvětlení, proč se vám zobrazuje chyba.
Neplatné ID uživatele: SQL Server nemůže najít zadané ID uživatele na serveru, který se pokoušíte získat. Nejčastější příčinou je, že tomuto ID uživatele nebyl udělen přístup na server, ale může to být také jednoduchý překlep nebo se omylem pokoušíte připojit k jinému serveru (typické, pokud používáte více než jeden server)
Neplatné heslo: Špatné heslo nebo jen překlep. Pamatujte, že toto uživatelské jméno může mít různá hesla na různých serverech.
méně časté chyby: ID uživatele může být na serveru zakázáno. Pro SQL Authentication bylo poskytnuto přihlášení Windows (změna na Windows Authentication. Pokud používáte SSMS, budete možná muset spustit jako jiný uživatel, abyste mohli použít tuto možnost). Platnost hesla možná vypršela a pravděpodobně z několika dalších důvodů….
18456 vysvětlení stavu 1: Microsoft SQL Server vám obvykle poskytne chybový stav 1, což ve skutečnosti neznamená nic kromě toho, že máte chybu 18456. Stav 1 se používá ke skrytí skutečného stavu za účelem ochrany systému, což mi dává smysl. Níže je uveden seznam se všemi různými stavy a pro další informace o načítání přesných stavů navštivte Vysvětlení chybových zpráv „přihlášení se nezdařilo“ (chyba 18456) v SQL Server 2005
Ověřování SQL není povoleno: Pokud používáte přihlášení SQL poprvé na instanci SQL Server, velmi často dochází k chybě 18456, protože ve vlastnostech serveru je nastaveno (pouze) ověřování systému Windows (část zabezpečení).
Chcete-li získat přístup k vlastnostem serveru, - Otevřete SQL Server Management Studio, přejděte do podokna Průzkumník objektů (použijte zobrazení, pokud jej nevidíte).- Pomocí tlačítka připojit se připojte k databázovému stroji pro váš server. Po připojení to uvidíte v průzkumníku objektů.- Klikněte pravým tlačítkem na server a klikněte na vlastnosti. Zobrazí se okno Vlastnosti serveru.
Podívejte se na níže uvedený snímek obrazovky, který může způsobovat selhání přihlášení SQL
Ověření serveru byste měli nastavit na SQL Server Windows Authentication
Chcete-li tuto chybu vyřešit, postupujte na počítači se serverem SQL Server 2005 podle následujících kroků.
- Vytvořte nového uživatele s oprávněním správce se stejným uživatelským jménem a heslem jako má SQL Server 2008 v operačním systému.
- V databázi SQL Server vytvořte nového uživatele rozbalením DatabaseNode>> Zabezpečení>> Přihlásit>> - Vytvořte nového uživatele a přidejte tohoto nového uživatele s vybraným přepínačem Windows Authentication. - Tohoto uživatele lze přidat pouze pomocí vybraného ověřování systému Windows, jedná se o přihlášení uživatele operačního systému.
- Po dokončení dvou výše uvedených kroků po připojení ze serveru SQL Server 2008 k serveru SQL Server 2005 pomocí ověřování systému Windows dojde k úspěšnému připojení.
Jak opravit? Podívejte se na toto video s odkazem Stránka režimu SQL Server a Windows Authentication .