Командная строка: Проверьте, запущена ли служба Windows или нет - PullRequest
1 голос
/ 28 декабря 2011

У меня есть командный файл, который выполняет файл .sql для резервного копирования базы данных.Я помещаю свой пакетный файл в папку автозагрузки для резервного копирования базы данных при включении компьютера.Но сервер Oracle не запускается при попытке запуска этого пакетного файла.Поэтому я не могу создать резервную копию базы данных.

Поэтому я хочу проверить, запущен ли сервер Oracle или нет с использованием командного файла.Если сервер Oracle запущен, то пакетный файл запускает команду для выполнения файла .sql для резервной базы данных.В противном случае следует подождать до запуска сервера Oracle.Когда сервер Oracle запущен, пакетный файл должен выполнить команду для выполнения файла .sql для резервной базы данных.

Как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 28 декабря 2011

Предполагая, что ваша служба Oracle является локальной, вы можете использовать sc start

start /wait sc start <name-of-your-oracle-service>

Если служба запущена, эта команда вернется сразу же. В противном случае он дождется завершения запуска службы, прежде чем вернуться.

Если имя службы содержит пробелы, заключите имя в двойные кавычки ".

1 голос
/ 28 декабря 2011

Как правило, вы можете проверить сетевую службу, используя команду «sc query», перед запуском команд резервного копирования базы данных. Кроме того, вы также можете выполнить следующую команду ping, чтобы отложить запуск вашего процесса,

ping -n 5 localhost > NUL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...