SSMS
 sql >> Database >  >> Database Tools >> SSMS

Come mi concedo l'accesso come amministratore a un'istanza di SQL Server locale?

Aprire una finestra del prompt dei comandi. Se hai già un'istanza predefinita di SQL Server in esecuzione, esegui il comando seguente al prompt dei comandi per arrestare il servizio SQL Server:

net stop mssqlserver

Ora vai alla directory in cui è installato SQL Server. La directory può ad esempio essere una di queste:

C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn

Scopri la tua directory MSSQL e il CD in esso in quanto tale:

CD C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn

Ora esegui il comando seguente per avviare SQL Server in modalità utente singolo. ComeSQLCMD viene specificato, solo un SQLCMD è possibile effettuare la connessione (da un'altra finestra del prompt dei comandi).

sqlservr -m"SQLCMD"

Ora, apri un'altra finestra del prompt dei comandi con lo stesso utente di quello che ha avviato SQL Server in modalità utente singolo sopra e in essa esegui:

sqlcmd

E premi invio. Ora puoi eseguire istruzioni SQL sull'istanza di SQL Server in esecuzione in modalità utente singolo:

create login [<<DOMAIN\USERNAME>>] from windows;

-- For older versions of SQL Server:
EXEC sys.sp_addsrvrolemember @loginame = N'<<DOMAIN\USERNAME>>', @rolename = N'sysadmin';

-- For newer versions of SQL Server:
ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>];

GO

Fonte .

AGGIORNATO Non dimenticare un punto e virgola dopo ALTER SERVER ROLE [sysadmin] ADD MEMBER [<<DOMAIN\USERNAME>>]; e non aggiungere punto e virgola in più dopo GO oppure il comando non viene mai eseguito.