Ответ 1
Я также недавно удалил свою учетную запись Windows с моего локального сервера разработки 2008. Я смог использовать однопользовательский режим SQL Server, чтобы воссоздать мой логин и добавить его в роль sysadmin. Прошло всего несколько минут, и я не должен был признавать свою ужасную ошибку для всех.
Из MSDN:
Запуск SQL Server в однопользовательском режиме позволяет любому члену компьютерная группа локальных администраторов для подключения к экземпляру SQL Сервер как член фиксированной роли сервера sysadmin.
Вот как я восстановил себя:
- Выход из SSMS
- Остановить любые службы, связанные с SQL. Мне пришлось прекратить Службы Reporting Services. Другие службы SQL, такие как SQL Agent, также будут использовать ваше одно ценное соединение.
- Остановить службу SQL
- Запустите службу SQL с дополнительным параметром
-m
. Это превратит SQL в однопользовательский режим. Это означает, что SQL будет принимать только одно соединение. - Используйте
sqlcmd
для подключения к вашему серверу с опцией надежного подключения-E
. SQL будет принимать вас в рольsysadmin
, если вы локальный администратор. -
В интерактивном сеансе создайте свой логин и добавьте в роль
sysadmins
.USE master GO CREATE LOGIN [domain\username] FROM WINDOWS WITH DEFAULT_DATABASE=[Master] GO EXEC sp_addsrvrolemember @loginame=N'domain\username', @rolename=N'sysadmin' GO
- Остановите службу SQL, удалите параметр
-m
и перезапустите службу. Теперь вы можете вернуться в SSMS и продолжать использовать сервер в обычном режиме.
Если вы получили сообщение:
Ошибка входа в домен пользователя\имя пользователя. Причина: Сервер находится в одном пользователе Режим. В настоящее время может подключаться только один администратор.
Тогда есть что-то, использующее ваше единственное соединение. Вам нужно будет найти эту службу или соединение и остановить ее, прежде чем вы сможете войти в систему. Проверьте агент SQL, службы отчетов SQL, службы анализа SQL и т.д.