Ответы:
Если вы делаете это через T-SQL:
Предоставление Windows Login возможности подключения к SQL Server:
CREATE LOGIN [Domain\User] FROM WINDOWS;
или
CREATE LOGIN [Domain\Group] FROM WINDOWS;
Если для входа используется SQL Server:
CREATE LOGIN [LoginName] WITH PASSWORD = 'SomePassword';
После этого вы можете сделать одну из двух вещей. Вы можете добавить его в членство фиксированной серверной роли sysadmin, используя sp_addsrvrolemember:
EXEC sp_addsrvrolemember 'LoginName', 'sysadmin';
или вы можете предоставить права входа CONTROL SERVER:
GRANT CONTROL SERVER TO [LoginName];
До этого я думаю, что мы должны иметь возможность войти в SQL Server в первую очередь. Я был администратором сервера, но не смог войти, так как SQL Server был установлен с помощью учетной записи администратора домена.
Таким образом, вам может потребоваться запустить SQL Server с параметром командной строки -m
(однопользовательский режим),
sqlservr.exe -m
и затем сделайте, как сказал К. Брайан Келли , или подключитесь через управляющую студию, как предложено Джеффом (вход будет успешным)
Дополнительные пошаговые инструкции можно найти в SQL Server 2008: Забыли добавить учетную запись администратора?
Для полноты, метод GUI
В SQL Server Management Studio в папке Security / Logins для базы данных щелкните правой кнопкой мыши Logins и выберите New Login:
Обязательно используйте полный domain\username
формат в поле Имя для входа и проверьте список ролей сервера, чтобы убедиться, что пользователь получает нужные вам роли.
Хм, это может означать две разные вещи.
ответы:
Поскольку у меня не было полного ответа для решения этой проблемы, вот что я сделал для SQLServer 2014
-m
)sqlcmd -S <instance name> -E
Введите следующее в оболочке
CREATE LOGIN [<DOMAIN>\<user>] FROM WINDOWS
go
exec sp_addsrvrolemember @loginame='<DOMAIN>\<user>', @rolename='sysadmin'
go
-m
)go
команды; Я привык к SSMS, поэтому не думал использовать go
для отправки пакета из клиента командной строки.