Connect to SQL server   zodpovězená otázka

SQL, Databáze

Dobrý den

Potřeboval bych poradit. Už dva dny se snažím připojit k SQL serveru 2005 Express, který se nachází na jiném počítači v síti. Zatím jen pomocí Management studia(také Express).V okně Connect to server Server najdu. Ale pokud dám connect, hodí hlášku "Login failed for user...error 18452" (Win. Authentication) nebo "Property Login was not set..." (SQL server Authentication). Nevím, jestli první případ se dá použít u vzdáleného serveru a u druhého případu nevím co napsat do textBoxu Login a Password. Při instalaci serveru jsem nic takoveho nezadával.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud se chcete přihlašovat jménem a heslem (SQL Server Authentication), což doporučuji, tak je nutné si vytvořit uživatele SQL příkazem:

USE [master]
GO
CREATE LOGIN [admin] WITH PASSWORD=N'heslo' DEFAULT_DATABASE=[master], CHECK_POLICY=OFF
GO
EXEC master..sp_addsrvrolemember @loginame = N'admin', @rolename = N'sysadmin'
GO
nahlásit spamnahlásit spam 0 odpovědětodpovědět

První případ se dá použít i u vzdáleného serveru, pokud je to nastaveno. Typicky tedy pokud máte na tomto serveru (či v doméně) odpovídající účet a odpovídající práva. Ten druhý způsob má tu výhodu, že funguje vždy (pokud tedy máte SQL uzivatele a heslo) a nevýhodu v tom, že máte dvoje přihlašování - do systému a na SQL server (to může být nicméně i výhoda). Kromě toho T-SQL kódu lze uživatele založit i pomocí Management studia.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Z aplikace pak potřebujete správný Connection String pro pripojeni k MSSQL Serveru 2005 Express

"Data Source=10.0.0.100,1433\sqlexpress;Initial Catalog=Zakaznici;User ID=RemoteUser; Password=blablabla

providerName="System.Data.SqlClient" />

IP adresu nahradíte IP adresou PC na kterém běží MS SQL Server

Initial Catalog je název výchozí DB, ke které se připojujete

1433 je Default port na kterém SQL Server naslouchá

Predtim je treba na PC kde bezi SQL Server udelat nasledujici:

1. Nastavit v SQL Server Configuration Manageru TCP/IP Protocol - IP adresa plus port 1433

2. V SQL Server Surface Area configuration zkouknout popr. nastavit parametry pro Remote Connections

3. V registrech nastavit HKEY_LOCAL_MACHINE Software Microsoft atd. Login mode na 2 (Nebím jestli je to nutné, ale v průběhu experimentů jsem to tak nastavil)

4. V SQL SERVER Management Studiu vytvorit scriptem nebo naklikat Login pro SQL Server s nazvem treba RemoteLogin a v kazde databazi ke ktere se hodlate pripojovat pak vytvorit uzivatele treba s nazvem RemoteUser (na nazvech nezalezi) a propojit je prikazy

USE nazev_databaze;
ALTER USER RemoteUser WITH LOGIN=RemoteLogin;

5. Tamtez priradit vzniklemu databazovemu uzivateli prava SELECT, UPDATE atd.

Nechť mě odborníci nechytají za slovo, ale takto jsem to před půl rokem po osmi hodinách vylaboroval a vše chodí na různých PC i serverech bez problémů.

nahlásit spamnahlásit spam 3 / 3 odpovědětodpovědět

Děkuji za vyčerpávající odpovědi. Hodně z těch věcí, které tady píšete jsem za ty dva dny také na internetu našel. Vezmu to teď presně podle Vašeho návodu a uvidím.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak bohužel se nezdařilo. I když vytvořím uživatele, ať už pomocí příkazu, nebo ve složce Security/Logins/New Login, nepodaří se mi pod ním přihlásit ani v Management studiu na tom počítači, kde je Server. Chyba je pořád stejná: Login failed for user 'admin'. The user is not associated with a trusted SQL Server connection. Nevím kde dělám chybu, ale je mi devné, že když dám vlastnosti vytvořeného uživatele, okénka s heslama mají mnohem větší počet "teček" než je mé heslo. A to opakovaně, i když to změním, potvrdím a znova otevřu..

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak toho množství teček v poli pro heslo se neděste, to aplikace trochu mlží za účelem zvýšení bezpečnosti hesla (z pole není vidět, kolik má heslo opravdu znaků).

Co se týče Vašeho hlavního problému, pak se domnívám, že jste při instalaci SQL Serveru zvolil při volbě Autentication Mode volbu "Windows autentication mode" místo "Mixed mode". Zkuste se přihlásit v Management studiu pomocí Windows Autentication (to Vám určitě půjde) a v kořenovém uzlu stromu v levém treeview klikněte pravým tlačítkem na název SQL serveru, dále zvolte "Properties" a pod záložkou "Security" zaškrtněte volbu "SQL Server and Windows Autentication Mode".

Pak už by mělo přihlášení pomocí Vámi vytvořeného loginu fungovat.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

Opravdu to bylo tím, děkuji.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

dobry den, problem bude s nejvetsi pravdepodobnosti v tom, ze pri instalaci SQL server je defailtne nastavena metoda prihlaseni na Windows authentification. Je potreba toto nastaveni na sql instanci zmenit. S podobnymi problemy se potyka dost lidi, napsal jsem na toto clanek http://biportal.cz/sql-chyba-login-faile...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback