@Talik0507
Работаю, Живу

По какой причине падает фоновый процесс SMCO при создании БД в оракле 12.1.0.2?

ситуация такая. Использую образ Docker (оф Oracla).
Т.к. бд специфичная переписал докерфайл под себя, где бд создается скриптами, используя init.ora файл.
Ранее в нем была настройка MEMORY_TARGET=2200m и все работало. Теперь потребовалось увеличить память. Увеличил до 5120m.

Кусок алертлога


Thu Jul 05 09:59:28 2018
Dump of system resources acquired for SHARED GLOBAL AREA (SGA)

Thu Jul 05 09:59:28 2018
Domain name: docker/3e0110e09b2f4fef6669bdecccb3030ef284f03aba7d59b79ce7e2895838ac9d
Thu Jul 05 09:59:28 2018
Per process system memlock (soft) limit = 64K
Thu Jul 05 09:59:28 2018
Expected per process system memlock (soft) limit to lock
SHARED GLOBAL AREA (SGA) into memory: 5120M
Thu Jul 05 09:59:28 2018
Available system pagesizes:
4K, 2048K
Thu Jul 05 09:59:28 2018
Supported system pagesize(s):
Thu Jul 05 09:59:28 2018
PAGESIZE AVAILABLE_PAGES EXPECTED_PAGES ALLOCATED_PAGES ERROR(s)
Thu Jul 05 09:59:28 2018
4K Configured 1310727 1310727 NONE
Thu Jul 05 09:59:28 2018
Reason for not supporting certain system pagesizes:
Thu Jul 05 09:59:28 2018
2048K - Dynamic allocate and free memory regions
Thu Jul 05 09:59:28 2018
RECOMMENDATION:
Thu Jul 05 09:59:28 2018
1. Increase per process memlock (soft) limit to at least 5120MB
to lock 100% of SHARED GLOBAL AREA (SGA) pages into physical memory
Thu Jul 05 09:59:28 2018


не понятно почему
Per process system memlock (soft) limit = 64K

Ведь оракловый преинстал устанавливает свои значения в /etc/security/limits.d/oracle-rdbms-server-12cR1-preinstall.conf
oracle soft memlock 134217728


а ulimit -l выдает под пользователем oracle

# ulimit -l
64

Ну да ладно, ранее то работало все равно.

При создании БД ловлю ошибку:


SMON: enabling tx recovery
Starting background process SMCO
Process SMCO died, see its trace file
Thu Jul 05 10:00:38 2018
Errors in file /u01/oracle/diag/rdbms/testdb/TESTDB/trace/TESTDB_smon_3038.trc:
ORA-00443: background process "SMCO" did not start
Starting background process SMCO
Process SMCO died, see its trace file
Thu Jul 05 10:00:39 2018
Errors in file /u01/oracle/diag/rdbms/testdb/TESTDB/trace/TESTDB_smon_3038.trc:
ORA-00443: background process "SMCO" did not start
Thu Jul 05 10:00:41 2018
Successfully created internal service SYS$BACKGROUND at open
Successfully created internal service SYS$USERS at open
Starting background process SMCO
Process SMCO died, see its trace file
Thu Jul 05 10:00:42 2018
Errors in file /u01/oracle/diag/rdbms/testdb/TESTDB/trace/TESTDB_ora_3053.trc:
ORA-00443: background process "SMCO" did not start
replication_dependency_tracking turned off (no async multimaster replication found)
Process m000 died, see its trace file
Starting background process AQPC
Process AQPC died, see its trace file
Thu Jul 05 10:00:44 2018
Errors in file /u01/oracle/diag/rdbms/testdb/TESTDB/trace/TESTDB_ora_3053.trc:
ORA-00443: background process "AQPC" did not start
Thu Jul 05 10:00:44 2018
Errors in file /u01/oracle/diag/rdbms/testdb/TESTDB/trace/TESTDB_ora_3053.trc:
ORA-01501: CREATE DATABASE failed
ORA-00450: background process 'AQPC' did not start
ORA-00443: background process "AQPC" did not start
Error 450 happened during database creation, shutting down database
USER (ospid: 3053): terminating the instance due to error 450


в трейсе smco следующее

-------------------------------------------------------------------------------
Trace Bucket Dump Begin: default bucket for process 17 (osid: 3038, SMON)
TIME(*=approx):SEQ:COMPONENT:FILE@LINE:FUNCTION:SECT/DUMP: [EVENT#:PID:SID] DATA
-------------------------------------------------------------------------------
2018-07-05 10:00:37.187675 :8000C3FF:db_trace:ksb.c@3752:ksbs1p_real(): [10254:17:395] KSBS1P: process SMON trying to start background SMCO
2018-07-05 10:00:37.187689 :8000C400:db_trace:ksb.c@4310:ksb_spawn_cleanup(): [10254:17:395] KSB_SPAWN_CLEANUP: Process (SMCO) prior PSO cleaned up
2018-07-05 10:00:38.184729 :8000C467:db_trace:ksb.c@4071:ksbs1p_real(): [10254:17:395] KSBS1P: out of loop: process did not start
-------------------------------------------------------------------------------
Trace Bucket Dump End: default bucket for process 17 (osid: 3038, SMON)
ORA-00443: background process "SMCO" did not start

*** 2018-07-05 10:00:39.214
-------------------------------------------------------------------------------
Trace Bucket Dump Begin: default bucket for process 17 (osid: 3038, SMON)
TIME(*=approx):SEQ:COMPONENT:FILE@LINE:FUNCTION:SECT/DUMP: [EVENT#:PID:SID] DATA
-------------------------------------------------------------------------------
2018-07-05 10:00:37.187675 :8000C3FF:db_trace:ksb.c@3752:ksbs1p_real(): [10254:17:395] KSBS1P: process SMON trying to start background SMCO
2018-07-05 10:00:37.187689 :8000C400:db_trace:ksb.c@4310:ksb_spawn_cleanup(): [10254:17:395] KSB_SPAWN_CLEANUP: Process (SMCO) prior PSO cleaned up
2018-07-05 10:00:38.184729 :8000C467:db_trace:ksb.c@4071:ksbs1p_real(): [10254:17:395] KSBS1P: out of loop: process did not start
2018-07-05 10:00:38.215303 :8000C469:db_trace:ksb.c@3752:ksbs1p_real(): [10254:17:395] KSBS1P: process SMON trying to start background SMCO
2018-07-05 10:00:38.215306 :8000C46A:db_trace:ksb.c@4310:ksb_spawn_cleanup(): [10254:17:395] KSB_SPAWN_CLEANUP: Process (SMCO) prior PSO cleaned up
2018-07-05 10:00:39.214635 :8000C4D3:db_trace:ksb.c@4071:ksbs1p_real(): [10254:17:395] KSBS1P: out of loop: process did not start
-------------------------------------------------------------------------------
Trace Bucket Dump End: default bucket for process 17 (osid: 3038, SMON)
ORA-00443: background process "SMCO" did not start


Далее, ради интереса, поменля значение в init.ora на значение с одной из наших тестовых сред, хотя есть и рабочие среды, где параметры мемтаргета и sga гораздо больше 5Гб
###########################################
# Miscellaneous
###########################################
compatible=12.1.0.2.0
diagnostic_dest=/u01/oracle
#memory_target=5296m
sga_target=3360m
pga_aggregate_target=1120m


ВНИМАНИЕ!!!!! все ок, Бд создается без ошибок. По сему вопрос, может кто знает, с чем связано такое поведение? Может, где-то есть настройка, которая меньше установленного мной значения memory_target?

За ранее, спасибо.
  • Вопрос задан
  • 343 просмотра
Пригласить эксперта
Ответы на вопрос 1
Lorien_Elf
@Lorien_Elf
Keep calm and drop database
Интересно, решился в итоге вопрос?

Обычно не рекомендуется в бою использовать memory_target. В том числе и из-за таких вот приколов.

Что говорит df -h | grep shm? В него должно влезть memory_max_target
https://oracle-base.com/articles/11g/automatic-mem...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы