Базы данных - ЛИНТЕР - статьи

         

и всех файлов ЛИНТЕР. su


############################################### #!/bin/sh # # Auto start-stop Linter SQL server
LINTER_BIN=/linter/bin . /etc/rc.d/init.d/functions case "$1" in start) echo -n "Starting Linter SQL server: "
#Работаем из-под специального пользователя - владельца #файлов базы данных и всех файлов ЛИНТЕР. su oleg -c $LINTER_BIN/startlin
#Обязательно должно совпадать с названием программы touch /var/lock/subsys/linter.s ;; stop) echo -n "Stopping Linter SQL server: " su oleg -c $LINTER_BIN/stoplin rm -f /var/lock/subsys/linter.s ;; restart) $0 stop $0 start ;; *) echo "Usage: linter {start|stop|restart}" exit 1 esac #############################################
После этого необходимо создать ссылки на этот файл в каталогах /etc/rc.d/rcX.d, где X - уровень загрузки, причем ссылка должна начинаться с буквы K - для останова и с буквы S – для старта, потом должны следовать две цифры, определяющие порядок вызова среди остальных. Для старта целесообразно использовать большие числа (запускать ЛИНТЕР одним из последних среди прочих доменов), а для останова – маленькие (останавливать одним из первых). За двумя числами должно следовать название программы из каталога /etc/rc.d/init.d. Останов вносится обычно в уровни загрузки 0 и 6 (останов ОС и перезагрузка), а запуск в каталог уровня загрузки 3.
Принципиально важно, чтобы название, которое идет сразу за двумя цифрами, определяющими последовательность, совпадало с именем блокировочного файла в /var/lock/subsys. Если Вы изменили название стартовой программы, то обязательно измените и название блокировочного файла, иначе при попытке завершения работы системы программа останова СУБД не будет вызвана, что может привести к разрушению базы данных.
Неудачное завершение программы startlin или автоматического старта свидетельствует или о уже запущенном ядре СУБД или о некорректном завершении (без использования программы stoplin). В любом случае необходимо выяснить причину неудачного запуска и, возможно, провести мероприятия по тестированию целостности базы с использованием утилиты testdb.
В приведенном примере, в случае неуспешного запуска ЛИНТЕР (по любым причинам – даже по наличию блокировочного файла), запуск СУБД отменяется. Однако в реальной системе естественно будет необходимо попытаться восстановить базу данных в любых случаях, в которых это возможно.

Содержание раздела