Oradim для Oracle 18c не работает на Windows Server 2016 - PullRequest
0 голосов
/ 22 мая 2019

Я установил Oracle 18c на виртуальной машине Windows Server 2016 со следующими параметрами: только программное обеспечение, база данных с одним экземпляром, стандартное издание 2, использование виртуальной учетной записи.

Когда я пытаюсь запустить команду ORADIM для создания базы данных, команда никогда не возвращает управление приглашению, и мне приходится принудительно закрывать его.

В файле журнала oradim отсутствуют сообщения об ошибках, создан экземпляр и все связанные службы Oracle.

Единственная ошибка, которую мне удалось найти в средстве просмотра событий Windows, связана со службой Oracle VSS Writer:

"Ошибка службы теневого копирования тома: процесс, в котором размещен модуль записи с именем Oracle Vss Writer - XXXX и идентификатором {yyy}, не запускается под пользователем с достаточными правами доступа. Попробуйте запустить этот процесс под локальной учетной записью, которая либо Локальная система, администратор, сетевая служба или локальная служба. "

Насколько я понимаю, команда ORADIM не возвращается из-за сбоя запуска службы Vss. Может ли кто-нибудь подтвердить, что это может быть именно так? Совместима ли команда ORADIM с установкой виртуального пользователя и что мне нужно сделать, чтобы она работала?

Ответы [ 2 ]

1 голос
/ 22 мая 2019

Если это тестовая база данных, то:

  • Создание локального или доменного пользователя для этого экземпляра Oracle, такого как Ora
  • Добавьте этого пользователя в группу ora_dba в локальных группах окон и пользователей
  • Изменить учетную запись, под которой работает база данных Oracle и служба записи VSS (если они существуют на данном этапе установки), на эту учетную запись
  • Запустите OraDim снова, используя эту учетную запись
0 голосов
/ 23 мая 2019

Мне удалось подтвердить, что команда oradim зависает из-за сбоя запуска Oracle Vss Service: я запустил команду oradim, как только была создана служба Oracle Vss Writer, я изменил связанного пользователя Log On на LocalService и запустил службуКоманда oradim немедленно вернула управление в командное окно.

Таким образом, я нашел этот обходной путь в моем сценарии установки, который, кажется, работает, хотя я полагаю, что может быть лучшее решение:

start oradim -new -sid %ORACLE_SID% -startmode manual

SET ORACLEVSS_NAME=OracleVssWriter%ORACLE_SID%

:VSSSRVCLOOP
SC QUERY %ORACLEVSS_NAME% > NUL
IF NOT ERRORLEVEL 1060 GOTO SVCCREATED
TIMEOUT 5 > NUL
GOTO VSSSRVCLOOP

:SVCCREATED
net stop %ORACLEVSS_NAME%
SC CONFIG %ORACLEVSS_NAME% obj= "NT AUTHORITY\LocalService" password= ""
net start %ORACLEVSS_NAME%
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...