Tramite il comando
sqlcmd.exe di
SQL Server 2005 è possibile aggiungere un utente, ad esempio:
c:>sqlcmd -S .\officeservers
1> sp_addlogin 'sgartadmin', 'password'
2> go
1> sp_addsrvrolemember 'sgartadmin', 'sysadmin'
2> go
1> quit
in questo caso aggiungo l'utente
sgartadmin come membro del ruolo
sysadmin.
Per verificare se l'utente ha accesso digitare:
c:>sqlcmd -S .\officeservers -U sgartadmin
Se il login non funziona può essere che SQL Server è impostato per lavorare in
Integrated Security. Per abilitare l'autenticazione sql si può impostare la seguente chiave di registro sul valore 2 (1 = Integrated Security , 2 = Mixed Mode authentication):
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\LoginMode
e riavviare i servizi sql. In questo caso sto agendo sulla prima istanza identificata dalla stringa
MSSQL.1.
Se da una macchina remota la connessione non funziona e compare questo errore:
SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF].
Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 : A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..
Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 : Login timeout expired.
verifica che:
- SQL Server Surface Area Configuration \ Remote connection sia impostato su Local and remote connection e Using TCP/IP
- il servizio SQL Server Browser sia attivo
- il servizio SQL Server sia attivo
- la configurazione del firewall