За наявності прав користувача локального адміністратора в операційній системі, в якій встановлений Microsoft SQL Server (я припускаю версію 2008), може статися ситуація, що прав на підключення або керування сервером SQL у такого користувача немає. Статися таке може з різних причин, від саботажу до банальної установки SQL Server доменним користувачем, якого вже видалили. Однак, є можливість без переустановки SQL Server отримати адміністративні права будь-якому користувачеві, що володіє локальними адміністративними правами на рівні ОС. Для цього потрібно зробити такі дії.
- Зайти в систему від імені користувача з правами локального адміністратора
- Запустити командний рядок з правами адміністратора (починаючи з Windows Server 2008 за умовчанням увімкнено UAC, тому для повних прав у системі всі програми потрібно запускати правим кліком → запуск від адміну)
-
Виконати зупинку служби SQL Server
net stop MSSQLSERVER
-
Виконати запуск служби SQL Server в режимі одного користувача
net start MSSQLSERVER /m
-
Підключитись до командного процесора керування SQL Server з правами поточного користувача
sqlcmd -E
-
Додати об'єкт безпеки Windows (локального або доменного користувача або групу) у базу даних користувачів SQL Server
CREATE LOGIN [builtin\адміністратори] FROM WINDOWS;
GO;
-
Призначити цьому користувачеві права адміністратора SQL Server
EXEC sp_addsrvrolemember 'builtin\адміністратори', 'sysadmin';
GO;
-
Вийти з sqlcmd ;)
exit
-
Останавливаем службу SQL Server
net stop MSSQLSERVER
-
Запустити службу SQL Server у звичайному режимі
net start MSSQLSERVER
- Тепер можна підключатися за допомогою Management Studio до вашого SQL сервера та виконувати необхідні дії