|
|
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
добрый день! Необходимо выполнить команду линукс из PL/SQL процедуры (11g) Пытаюсь при помощи dbms_pipe.send_message, но не пойму как получить ответ команды который является текстом (строкой)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 09:14 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
DBMS_PIPE -- это не каналы OS, это внутренняя кухня оракла А у тебя богатый выбор -- от DBMS_SCHEDULER, external tables, Java и до написания внешних процедур ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 09:19 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Выбор настолько богатый что не могу выбрать никак Что лучше использовать для простого действия - отправка команды, получение ответа в Varchar? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 09:20 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Ну, смотря что за команда В самом простом случае -- команда не ждет и не обрабатывает аргументов Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. С аргументами, через создание shell-файлика тут , там же и определены TMP_DIR, BIN_DIR ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 09:48 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Спасибо за помощь! Мне нужно узнать IP сервера Оракл из хранимой процедуры ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 10:50 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
А зачем внешняя процедура? Код: plsql 1. 2. 3. 4. 5. В 11 надо будет еще дать право 'resolve' через dbms_network_acl_admin ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 11:12 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров Код: plsql 1. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 11:19 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, Дело в том, что возвращается неверное значение. Мне нужно чтоб вернулся тот IP который указан в tnsnames, для подключения, а возвращается IP standby сервера, почему-то ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 11:45 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Это как-то странно А как подсказывает Elic (конспиратор, блин), без аргумента тоже фигню выдает? https://docs.oracle.com/cd/E11882_01/appdev.112/e40758/u_inaddr.htm#ARPLS71181 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 11:52 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Mr_MuscleМне нужно чтоб вернулся тот IP который указан в tnsnames, для подключенияВ общем случае на стороне сервера узнать адрес, использованный клиентом для tcp/ip подключения, затруднительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:18 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Делаю DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_NAME); Получаю 'pluton' Делаю DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_ADDRESS('pluton')); или DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_ADDRESS); Получаю 22 IP, хотя в tns стоит 21 Не могу понять как так получается Elic, да, и поэтому возникла идея может можно команду оси запустить из процедуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:26 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
А со стороны сервера БД тот-же ping pluton про какой адрес говорит? Я легко могу на сервере в /etc/hosts прописать любой другой адрес, а не тот, который резолвится, например, через DNS А так, да -- сервер может иметь несколько адресов В RAK-е могут быть еще и виртуальные адреса Тут в общем-то надо скакать от твоей задачи, а не решать часть ее -- получение какого-то адреса (тем более, если ты знаешь имя) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:34 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
В принципе, можно еще парсить вывод V$LISTENER_NETWORK, но он тоже не дает информации о всех слушающих адресах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:39 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Mr_MuscleElic, да, и поэтому возникла идея может можно команду оси запустить из процедуры.Ты не понял. Между клиентом и сервером может быть куча NAT-ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:40 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, на стороне сервера возвращается 21 Задача в целом такая, в хранимых процедурах находится довольно много почтовых рассылок. Нужно сделать так, чтобы в случае создания клона базы или если будет происходить синхронизация баз, в эти почтовые рассылки добавлялась строка которая бы позволила понять, с какого сервера почта приходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 12:40 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Почему именно адрес, а не имя? Или даже имя БД (если, конечно, на клонах другие имена) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:24 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Потому что все знают только IP, имена то одинаковые..некоторые на 1 букву отличаются. Менять их никто не станет. Не информативно получится. А так 4 копии БД, боевая, 2 тестовых и резервная. Вот недавно подняли админы клон - потестировать что-то себе. Так мы, разработчики, головы сломали откуда же к нам уведомления на почту сыпятся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:36 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
В заголовках писем, если почтарь не занимается анонимизацией, прекрасно видны IP-адрес и имя хоста-отправителя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:40 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Клиент - обычный Outlook, получатели - не только разработчики но и обычные юзеры, которым тоже важно знать уведомления с боевого сервера, резервного или тестовго.... к сожалению не вижу как мне могут помочь заголовки письма? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:43 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Mr_MuscleДелаю DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_NAME); Получаю 'pluton' Делаю DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_ADDRESS('pluton')); или DBMS_OUTPUT.PUT_LINE(UTL_INADDR.GET_HOST_ADDRESS); Получаю 22 IP, хотя в tns стоит 21Я бы все-таки попытался разобраться в ситуации Возможно, с привлечением сисадмина ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:49 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Вячеслав Любомудров, т.е. это ненормально? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:50 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Задача: "Вставить пистон админам, которые подняли стенд, не поменяв настройки системы уведомления". Решение: увидев уведомление, "которого не должно быть" включить отображение служебных заголовков, найти IP-адрес отправителя и подойти для раздачи люлей. Проблема: Никто в компании разработчиков никогда не видел служебных заголовков писем и не знает как их отобразить. Решение проблемы: пригласить (нанять) сисадмина или даже толкового хелпдескера. P.S. Уж простите мой сарказм, но даже аутглюке можно посмотреть заголовки писем. Не так удобно, как нормальном почтовом клиенте, но тоже можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 13:52 |
|
||
|
Выполнить команду ОС из процедуры
|
|||
|---|---|---|---|
|
#18+
Mr_MuscleВячеслав Любомудров, т.е. это ненормально?Если у тебя там standalone-база, не RAC, т.е. у тебя один узел, то это, естественно, не нормально Собственно, даже в случае с RAC-ом резолвинг по имени хоста не должен быть неправильным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.03.2017, 14:03 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39422132&tid=1886263]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 541ms |

| 0 / 0 |
