#database #oracle #shell #automation
#База данных #Oracle #оболочка #автоматизация
Вопрос:
Я пытался автоматизировать этот процесс в сценарии оболочки в окне unix. Я новичок в сценариях оболочки. Я не смог выяснить, как определить, когда запуск для него завершен. Кроме того, как создать новый терминал и проверить domain.log на наличие нового терминала. Я был бы признателен, если кто-нибудь сможет мне помочь в этом.
cd $/home/oracle/12/bin
./lsnrctl start
Войдите в систему, sqlplus
используя имя пользователя sys as sysdba
и пароль: oracle3211
и запустите команду запуска базы данных startup
После запуска введите exit
—теперь запустите dbconsole
cd $/home/oracle/12/bin
./emctl start dbconsole
—откройте новый терминал и выполните это
$/home/oracle/startWeblogic.sh
—дождитесь ключевого слова domain.log в файле журнала, чтобы подтвердить запуск сервера
—если сервер запущен, перейдите к следующему в новом терминале
$/home/oracle/startManagedWeblogic.sh
—после этого перейдите по следующим URL-адресам
https://178:198:29:28:1167/em (username=system1, password=oracle123)
https://178:198:29:28:1176/em (username=system2, password=oracle132)
Комментарии:
1. Если вы ищете способ автоматизировать процессы, а также отправлять нажатия клавиш (например, «exit»). Найдите инструмент командной строки под названием
expect
. Есть несколько хороших примеров, если вы искали это в Google.2. Вы пробовали искать здесь по S.O.? Я знаю, что видел многочисленные сообщения об автоматизации доступа к Oracle. Удачи.
3. @Har Vu: Это должен быть ответ.
Ответ №1:
Похоже, вам также нужно узнать о команде GNU screen
. Возможно, он уже установлен. Попробуйте screen -R -D
Если он выдает вам приглашение командной строки в верхней части экрана, то это работает. Теперь, если вы отключите свой сеанс ssh или закроете окно терминала (нажмите на крестик), при следующем входе в систему и выполнении точно такой же экранной команды вы будете повторно подключены к тому же запущенному сеансу терминала.
Это позволяет запускать сценарии и т.д. которые не останавливаются при отключении. И при повторном подключении вы можете увидеть их текущий результат.
Кроме того, у вас может быть много сеансов терминала. Ctrl-A c
создает еще один. Ctrl-A [space]
и Ctrl-A [backspace]
переключение между сеансами в списке. Ctrl-A ?
предоставляет вам все другие команды Ctrl-A, которые вы можете использовать. Например, один сеанс может быть tail logfile
, в то время как другой запускает программу, ожидающую ввода.