05.02.2025 12:32
Доброго всем дня.

Есть сервер Oracle 19, на сервере установлен Oracle Linux. База данных открыта.
На сервере Супермага ОС Windows 10.
При попытке инициализировать БД через Модуль Генерации Супермага получаю следующую ошибку:

DABA01 ( новая база )
Ошибка на шаге "DABA01 ( новая база ) InstanceInit.sql"

PL/SQL procedure successfully completed.

create role SUPERMAG_USER
*
ERROR at line 1:
ORA-65096: invalid common user or role name



2025.02.05 (среда) 11:24:11 1.51.0.0 sp0 Sm.DbInit

----- Прерывание работы программы -----

сообщение: "Работа программы «C:\ora190\bin\SQLPLUS.EXE» завершилась ошибкой «1»"

исключение: Sm.Core.BaseException

источник: Sm.DbInit

метод: Void Run(System.String ByRef)

at Sm.DbInit.ScriptFile.Run(String& output)

at Sm.DbInit.WizardPages.DbInitPageRun.RunScripts(TaskWorkEventArgs e)

at Sm.DbInit.WizardPages.DbInitPageRun.Init_DoWork(Object sender, TaskWorkEventArgs e)

at Sm.Core.TaskWorker.OnDoWork(DoWorkEventArgs e)

at Sm.Core.TaskWorkerBase.InternalBackgroundWorker.OnDoWork(DoWorkEventArgs e)

at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

Погуглил, насколько я понял, при запуске скриптов Супермага появляется "препятствие" в виде того, что база находится в CDB, так и оказалось, при команде show con-name отображается cdb$root.

Поэтому я переключил через команду ALTER SESSION SET CONTAINER=PDB и включил ALTER SESSION SET "_ORACLE_SCRIPT"=TRUE. Но ошибка сохранилась. Плюс, если выйти из sqlplus и зайти снова, то при команде show con-name снова отображается cdb$root.

Кому-то знакома такая проблема? Инфы по ней довольно мало.
06.02.2025 06:52
обрати внимание, что ты меняешь параметры сессии и ждёшь изменений в другой, непонятно, куда подключаешься, почему не в контейнер... попробуй с другой машины.. и в целом вообще непонятно, зачем ты контейнерную создал...
07.02.2025 14:13
Цитата:
OlegON обрати внимание, что ты меняешь параметры сессии и ждёшь изменений в другой, непонятно, куда подключаешься, почему не в контейнер... попробуй с другой машины.. и в целом вообще непонятно, зачем ты контейнерную создал...
Да, но с контейнерной оказалось все не так просто. Мало снять галочки при создании базы - нужно еще покопаться в All Initialization Parameters и отключить совместимость с CDB.
08.02.2025 07:22
Рассказывай, пожалуйста, подробнее.
Удалось проинициализировать? После чего? В чем ошибка была?
08.02.2025 17:43
Цитата:
OlegON Рассказывай, пожалуйста, подробнее.
Удалось проинициализировать? После чего? В чем ошибка была?
При создании БД на шаге 4 я снял галочку Create a Container database и все галочки из подменю, но это не помогло - вероятно, какая-то настройка по умолчанию все же присутствует.

Так методом проб и ошибок нашел в меню All Initialization Parameters строку cdb_compatibility. Сменил TRUE на FALSE, после этого ошибки при инициализации уже не было.
08.02.2025 17:45
Цитата:
Давид При создании БД на шаге 4 я снял галочку Create a Container database и все галочки из подменю, но это не помогло - вероятно, какая-то настройка по умолчанию все же присутствует.

Так методом проб и ошибок нашел в меню All Initialization Parameters строку cdb_compatibility. Сменил TRUE на FALSE, после этого ошибки при инициализации уже не было.
Прочитал, что с версии 12 контейнерная база задана по умолчанию, не знаю, так ли это. С Oracle 12 дел не имел. Может кто из знающих скажет, так ли это.
Oracle 19 я поставил на сервер с ОС OracleLinux.
Часовой пояс GMT +3, время: 18:25.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.