Каталог решений - Выполнение команд операционной системы на сервере баз данных ms sql без доступа к серверу

Выполнение команд операционной системы на сервере баз данных ms sql без доступа к серверу

Выполнение команд операционной системы на сервере баз данных ms sql без доступа к серверу

В наличии

Полезный набор команд для некоторых рабочих ситуаций

Категория:

Описание

В работе возможна ситуация, когда нет доступа к административному терминалу сервера субд и нет физического доступа к нему. Но необходимо выполнить определенные комнды на сервере. Случай из практики — sql сервер и сервер 1С установлены на одной машине и необходимо перезапустить службу сервера 1С. Или необходимо создать определенное задание в таск-менеджере операционной системы и т.д.. В ряде случаев (зависит от настроек сервера) при наличии логина к sql server (с 2005) с ролью sysadmin, например «sa», можно получить доступ к командной строке системы и выполнять консольные команды с высокими привилегиями. Ниже описаны действия:

На рабочей станции запускается managment studio и выполняется запрос

EXEC sp_configure ‘show advanced options’, 1
GO

RECONFIGURE
GO

EXEC sp_configure ‘xp_cmdshell’, 1
GO

RECONFIGURE
GO

Подробнее http://technet.microsoft.com/ru-ru/library/ms190693.aspx http://technet.microsoft.com/ru-ru/library/ms175046.aspx

Нам важно, что «Процесс Windows, порожденный процедурой xp_cmdshell, имеет те же права защиты, что и учетная запись службы SQL Server.» Теперь, в большинстве случаев, появится возможность выполнять команды системы сервера с высокими привилегиями. По соображениям безопасности после необходимо отключать данный параметр установкой значения 0.

Примеры запросов с полезными командами:

* копирование файла между каталогами сервера 

EXEC xp_cmdshell ‘copy «C:\test\logcfg.xml» «C:\Program Files\1cv81\bin\conf\logcfg.xml» ‘;

* удаление файла на сервере

EXEC xp_cmdshell ‘del «C:\Program Files\1cv81\server\srvribrg.lst» ‘;

* удаление каталога «reg_1541» вместе с его содержимым

EXEC xp_cmdshell ‘rmdir /s /q «C:\Program Files\1cv81\server\reg_1541″‘;

* просмотр запущенных служб

EXEC xp_cmdshell ‘net start’;

* просмотр процессов

EXEC xp_cmdshell ‘tasklist’;

Если сервер 1С установлен на том же сервере:

* остановка службы сервера 1С

EXEC xp_cmdshell ‘net stop «1C:Enterprise 8.1 Server (x86-64) Agent»‘;

* запуск службы сервера 1С

EXEC xp_cmdshell ‘net start «1C:Enterprise 8.1 Server (x86-64) Agent»‘;

* остановка через ragent (запуск -start)

EXEC xp_cmdshell ‘»C:\Program Files\1cv81\bin\ragent.exe» -stop’;

 

 

 

 

has been added to your cart:
Оформление заказа