Модераторы: powerfox, ZeeLax
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка базы Oracle на удаленном сервере, Прошу помощи с bash скриптом 
V
    Опции темы
Zerstroer
Дата 4.11.2013, 08:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.8.2007
Где: Алма-Ата

Репутация: нет
Всего: 3



Здравствуйте, уважаемые!
У меня есть задачка. Прошу помочь с решением.
На удаленном сервере имеется СУБД Oracle. На ней крутится некая база данных. Необходимо написать скрипт, который будет осуществлять проверку на возможность подключения и входа в БД. Т.е. который будет проверять работоспособность базы данных.
Возвращать скрипт должен '1' в случае, если все в порядке и '0' - если подключение не удалось.

Пока я остановился вот на этом. 
Код

#bin/sh
export LD_LIBRARY_PATH=/opt/oracle/instantclient_12_1/
echo 'select 1 from all_tables where ROWNUM = 1;' | /opt/oracle/instantclient_12_1/./sqlplus testconnect/testconnect@'(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxx.xxx.xxx.xxx)(PORT=1521)))(CONNECT_DATA=(SID=amp)))' | grep -w ERROR

Нахожусь в небольшом затруднении, что делать дальше.

Если вопрос конкретизировать, то он звучит так: как организовать в вышеприведенном скрипте вывод '1/0' в случае успеха/неудачи?

Это сообщение отредактировал(а) Zerstroer - 5.11.2013, 12:00


--------------------
In silico
PM MAIL ICQ   Вверх
McMan
Дата 5.11.2013, 08:42 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 21.2.2007
Где: Ярославль

Репутация: 1
Всего: 1



Код

echo $?

PM MAIL   Вверх
Сумасшедший
Дата 5.11.2013, 11:07 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чилавек-Каропка
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 15.8.2004
Где: Москва

Репутация: 8
Всего: 107



MYVAR=`echo "ololo"`
если, то, иначе, конецесли


--------------------
Однажды ты спросишь, а я отвечу: "Время ожидания специалиста - 10 минут". Ты бросишь трубку, так и не узнав, что Ваш звонок очень важен для нас!
PM MAIL WWW Jabber   Вверх
Zerstroer
Дата 5.11.2013, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 8.8.2007
Где: Алма-Ата

Репутация: нет
Всего: 3



Спасибо за ответы, в конечном итоге у меня получилось вот это:
Код

#!bin/sh
export LD_LIBRARY_PATH=/opt/oracle/instantclient_12_1/
if [ "$#" -eq 2 ]; then
if echo 'select 1 from user_tables;' | /opt/oracle/instantclient_12_1/./sqlplus testconnect/testconnect@'(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=( PROTOCOL=TCP)(HOST='"$1"')(PORT='"$2"')))(CONNECT_ DATA=(SID=amp)))' | grep -wq 'rows selected' >> /dev/null ;
then echo 1
else echo 0
fi
else echo 0
fi



--------------------
In silico
PM MAIL ICQ   Вверх
Сумасшедший
Дата 6.11.2013, 09:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чилавек-Каропка
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 15.8.2004
Где: Москва

Репутация: 8
Всего: 107



Zerstroer, это, конечно хорошо. Только к примеру этот плагин к нагиосу был бы полезнее


--------------------
Однажды ты спросишь, а я отвечу: "Время ожидания специалиста - 10 минут". Ты бросишь трубку, так и не узнав, что Ваш звонок очень важен для нас!
PM MAIL WWW Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Oбщие вопросы"
nickless
Imple
nerezus

В тему здесь вопросы общие - не привязанные к определенному ПО или дистрибутиву BSD/Linux/UNIX.
Например вопросы о выборе ОС для определенных задач (но если Вы просто хотите узнать "Какой дистрибутив лучше", то для этого есть Клуб юнуксоидов).
Общие вопросы по shell-программированию тоже лучше задавать здесь.


  • Вопросы мобильной разработки тут
  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | *NIX системы: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.