...
- Gentoo Linux
Нужно создать следующие 2 файла в/etc/init.d
с соответствующим содержимым:ora.database
— управление БД OracleCode Block bash bash #!/sbin/runscript # АСР "Гидра". Инициализационный скрипт БД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru # Зависимости depend() { need net } # Инициализация окружения function init_environment { source /etc/profile } # Запуск start() { ebegin "Starting Oracle Database" # Инициализация окружения init_environment # Запуск БД su $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME" # Выход с результатом запуска eend $? } # Остановка stop() { ebegin "Stopping Oracle Database" # Инициализация окружения init_environment # Остановка БД su $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME" # Выход с результатом остановки eend $? }
ora.listener
— управление прослушивателем СУБД Oracle
После создания файлов необходимо выдать разрешение на их запуск и произвести установку автозапуска:Code Block bash bash #!/sbin/runscript # АСР "Гидра". Инициализационный скрипт прослушивателя СУБД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru # Зависимости depend() { need net } # Инициализация окружения function init_environment { source /etc/profile } # Запуск start() { ebegin "Starting Oracle Database" # Инициализация окружения init_environment # Запуск прослушивателя su $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start LISTENER" # Выход с результатом запуска eend $? } # Остановка stop() { ebegin "Stopping Oracle Database" # Инициализация окружения init_environment # Остановка прослушивателя su $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop LISTENER" # Выход с результатом остановки eend $? }
Code Block # chmod +x /etc/init.d/ora.* && \ rc-update add ora.database default && \ rc-update add ora.listener default
- Ubuntu Linux, Debian Linux
Нужно создать следующие 2 файла в/etc/init.d
с соответствующим содержимым:ora.database
— управление БД OracleCode Block bash bash #!/bin/bash # АСР "Гидра". Инициализационный скрипт БД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru ### BEGIN INIT INFO # Provides: ora.database # Required-Start: $network # Required-Stop: $network # Should-Start: network-manager # Should-Stop: network-manager # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Oracle database ### END INIT INFO # Коды возврата скрипта RET_OK="0" RET_BAD_USAGE="1" RET_FAILED_RUN="2" # Подключение инит-функций . /lib/lsb/init-functions # Запись в вывод ошибок function echo_err { echo $@ >&2 } # Инициализация окружения function init_environment { . /etc/environment export ORACLE_HOME export ORACLE_OWNER } # Выполнение команды function run_cmd { # Выполнение команды eval $@ # Если выполнение было неудачным if [ $? != "0" ]; then # Завершение выполнения скрипта log_end_msg $RET_FAILED_RUN exit $RET_FAILED_RUN fi } # Действие на основе первого параметра вызова скрипта case "$1" in # Запуск start) log_daemon_msg "Starting Oracle Database" # Инициализация окружения init_environment # Запуск БД run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/dbstart $ORACLE_HOME\"" # Выход c успехом log_end_msg $RET_OK exit $RET_OK ;; # Остановка stop) log_daemon_msg "Stopping Oracle Database" # Инициализация окружения init_environment # Остановка БД run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/dbshut $ORACLE_HOME\"" # Выход c успехом log_end_msg $RET_OK exit $RET_OK ;; # Перезапуск restart) # Остановка $0 stop # Запуск $0 start # Выход с успехом exit $RET_OK ;; # Любое другое действие *) # Вывод сообщения с вариантами использования echo_err "Usage: $0 (start|stop|restart)" # Выход с неудачей exit $RET_BAD_USAGE ;; esac
ora.listener
— управление прослушивателем СУБД Oracle
После создания файлов необходимо выдать разрешение на их запуск и произвести установку автозапуска:Code Block bash bash #!/bin/bash # АСР "Гидра". Инициализационный скрипт прослушивателя СУБД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru ### BEGIN INIT INFO # Provides: ora.listener # Required-Start: $network # Required-Stop: $network # Should-Start: network-manager # Should-Stop: network-manager # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Oracle listener ### END INIT INFO # Коды возврата скрипта RET_OK="0" RET_BAD_USAGE="1" RET_FAILED_RUN="2" # Подключение инит-функций . /lib/lsb/init-functions # Запись в вывод ошибок function echo_err { echo $@ >&2 } # Инициализация окружения function init_environment { . /etc/environment export ORACLE_HOME export ORACLE_OWNER } # Выполнение команды function run_cmd { # Выполнение команды eval $@ # Если выполнение было неудачным if [ $? != "0" ]; then # Завершение выполнения скрипта log_end_msg $RET_FAILED_RUN exit $RET_FAILED_RUN fi } # Действие на основе первого параметра вызова скрипта case "$1" in # Запуск start) log_daemon_msg "Starting Oracle listener" # Инициализация окружения init_environment # Запуск прослушивателя run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/lsnrctl start LISTENER\"" # Выход c успехом log_end_msg $RET_OK exit $RET_OK ;; # Остановка stop) log_daemon_msg "Stopping Oracle listener" # Инициализация окружения init_environment # Остановка прослушивателя run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/lsnrctl stop LISTENER\"" # Выход c успехом log_end_msg $RET_OK exit $RET_OK ;; # Перезапуск restart) # Остановка $0 stop # Запуск $0 start # Выход с успехом exit $RET_OK ;; # Любое другое действие *) # Вывод сообщения с вариантами использования echo_err "Usage: $0 (start|stop|restart)" # Выход с неудачей exit $RET_BAD_USAGE ;; esac
Code Block # chmod +x /etc/init.d/ora.* && \ update-rc.d ora.database defaults && \ update-rc.d ora.listener defaults
- Red Hat Enterprise Linux
Нужно создать следующие 2 файла в/etc/init.d
с соответствующим содержимым:ora.database
— управление БД OracleCode Block bash bash #!/bin/bash # АСР "Гидра". Инициализационный скрипт БД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru # Коды возврата скрипта RET_OK="0" RET_BAD_USAGE="1" RET_FAILED_RUN="2" # Запись в вывод ошибок function echo_err { echo $@ >&2 } # Инициализация окружения function init_environment { . /etc/environment export ORACLE_HOME export ORACLE_OWNER } # Выполнение команды function run_cmd { # Выполнение команды eval $@ # Если выполнение было неудачным if [ $? != "0" ]; then # Завершение выполнения скрипта log_end_msg $RET_FAILED_RUN exit $RET_FAILED_RUN fi } # Действие на основе первого параметра вызова скрипта case "$1" in # Запуск start) echo "Starting Oracle Database..." # Инициализация окружения init_environment # Запуск БД run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/dbstart $ORACLE_HOME\"" # Выход c успехом exit $RET_OK ;; # Остановка stop) echo "Stopping Oracle Database..." # Инициализация окружения init_environment # Остановка БД run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/dbshut $ORACLE_HOME\"" # Выход c успехом exit $RET_OK ;; # Перезапуск restart) # Остановка $0 stop # Запуск $0 start # Выход с успехом exit $RET_OK ;; # Любое другое действие *) # Вывод сообщения с вариантами использования echo_err "Usage: $0 (start|stop|restart)" # Выход с неудачей exit $RET_BAD_USAGE ;; esac
ora.listener
— управление прослушивателем СУБД Oracle
После создания файлов необходимо выдать разрешение на их запуск и произвести установку автозапуска:Code Block bash bash #!/bin/bash # АСР "Гидра". Инициализационный скрипт прослушивателя СУБД Oracle # Автор: Петров Н. В. # (C) ООО "Латера Софтвер" # www.latera.ru | info@latera.ru # Коды возврата скрипта RET_OK="0" RET_BAD_USAGE="1" RET_FAILED_RUN="2" # Запись в вывод ошибок function echo_err { echo $@ >&2 } # Инициализация окружения function init_environment { . /etc/environment export ORACLE_HOME export ORACLE_OWNER } # Выполнение команды function run_cmd { # Выполнение команды eval $@ # Если выполнение было неудачным if [ $? != "0" ]; then # Завершение выполнения скрипта log_end_msg $RET_FAILED_RUN exit $RET_FAILED_RUN fi } # Действие на основе первого параметра вызова скрипта case "$1" in # Запуск start) echo "Starting Oracle listener..." # Инициализация окружения init_environment # Запуск прослушивателя run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/lsnrctl start LISTENER\"" # Выход c успехом exit $RET_OK ;; # Остановка stop) echo "Stopping Oracle listener..." # Инициализация окружения init_environment # Остановка прослушивателя run_cmd "su $ORACLE_OWNER -c \"$ORACLE_HOME/bin/lsnrctl stop LISTENER\"" # Выход c успехом exit $RET_OK ;; # Перезапуск restart) # Остановка $0 stop # Запуск $0 start # Выход с успехом exit $RET_OK ;; # Любое другое действие *) # Вывод сообщения с вариантами использования echo_err "Usage: $0 (start|stop|restart)" # Выход с неудачей exit $RET_BAD_USAGE ;; esac
Code Block # chmod +x /etc/init.d/ora.* && \ update-rc.d ora.database defaults && \ update-rc.d ora.listener defaults
...