|
SHELL цикл
|
|||
---|---|---|---|
#18+
Добрый день! Подстажите пожалуйста, как можно выйти из ситуации. Нужно запросить статус экземпляров Oracle. Написал нехитрый скрипт, но он выдаёт a*b вариантов. А нужно чтобы только один раз по ORACLE_SID с соответствующим ORACLE_HOME Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 12:33 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
6ATON Добрый день! Подстажите пожалуйста, как можно выйти из ситуации. Нужно запросить статус экземпляров Oracle. Написал нехитрый скрипт, но он выдаёт a*b вариантов. А нужно чтобы только один раз по ORACLE_SID с соответствующим ORACLE_HOME Получил ORACLE_HOME - преврати его в ORACLE_SID. Как это сделать думай сам - только ты знаешь какие варианты комбинаций ORACLE_HOME-ORACLE_SID у тебя бывают. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 16:18 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
Кажется задача выходит за рамки shell-скрипта. Я-бы предложил брать Python и обходить файловую систему и искать все конфиги и прочее. Для списка из нескольких ORACLE_HOME выполнить скрипт короче. Модератор: Тема перенесена из форума "Программирование". ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 16:46 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
6ATON Код: plsql 1.
Clusterware: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Standalone: Код: plsql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 19:42 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
SeaGate 6ATON Код: plsql 1.
Clusterware: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Standalone: Код: plsql 1. 2. 3. 4. 5.
нене, мне нужно проверить баз is running или is not running. ну и для кучи чтобы ловить ещё ошибки, типа ресурс не найден ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 19:53 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
Elic /etc/oratab не? В общем случае, нет, т.к.: 12.2 Real Application Cluster DBCA Do Not Update Oratab (Doc ID 2278584.1) crsctl применим, т.к. был указан srvctl. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2022, 20:24 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
SeaGate Elic /etc/oratab не? В общем случае, нет, т.к.: 12.2 Real Application Cluster DBCA Do Not Update Oratab (Doc ID 2278584.1) Нота 2278584.1 интересная, заставляет задуматься. Она ведь of type "Нота" а не "Bug", суть они считают такое поведение нормальным, суть это фича, а не баг. У нас уже несколько лет назад были всякие странности из-за записей в oratab с комментарием "#line added by agent" - тоже из той же серии, ноги оттуда же растут. Первая же ссылка релевантна проблеме - в блоге Mike Dietrich все тоже самое, и та же Нота 2278584.1 упоминается, и решения нет, но хотя бы люди оказывается знают о ситуации: https://mikedietrichde.com/2017/12/20/dbca-12-2-not-update-etc-oratab-gi/ Причём, и блог и комменты - аж от 2017 года. Ладно, автору топика, чтоб не расценивать уход от темы - вот наш подход:
... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2022, 18:42 |
|
SHELL цикл
|
|||
---|---|---|---|
#18+
oratab работает в ограниченном кол-ве случаев. Смысла нет его использовать, когда обсуждается srvctl. О чем и говорилось в приведенной выше ссылке: https://mikedietrichde.com/2017/12/20/dbca-12-2-not-update-etc-oratab-gi/ What should you do instead if you would like to find out if a database is present or not? Use crsctl stat res to get the database name and then use srvctl status -d <dbname>: Проблемы, возникающие с oratab: 1. convenience alias для ORACLE_HOME. Т.е. строка для установки окружения соответствующего ORACLE_HOME без наличия БД: Код: plsql 1.
2. использование ORACLE_SID вместо DB_UNIQUE_NAME: Код: plsql 1.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
shane54 идёшь скриптом по записям в /etc/oratab для каждой записи вызываешь (с правильным OH) srvctl Пример БД указан выше, с которой это не будет работать. Понятно, что можно добавить вручную запись с DB_UNIQUE_NAME, а потом в скриптах игнорировать все, что добавил агент. Однако будет возникать неудобство с oraenv, который смотрит на ORACLE_SID. Требовать DB_UNIQUE_NAME=ORACLE_SID нельзя в общем случае. 3. игнорирование oratab в RAC, начиная с некоторых версий Если нужно, чтобы работало без доп ограничений в любой среде с GI, то используется cluster registry. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2022, 21:20 |
|
|
start [/forum/topic.php?desktop=1&fid=52&tid=1879598]: |
0ms |
get settings: |
18ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
35ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
229ms |
get tp. blocked users: |
2ms |
others: | 368ms |
total: | 667ms |
0 / 0 |