Oradim for Oracle 18c不在Windows Server 2016上工作



我在Windows Server 2016 VM上安装了Oracle 18C,其中包括以下选项:仅软件,单个实例数据库,标准版2,使用虚拟帐户。

当我尝试运行Oradim命令创建数据库时,该命令永远不会返回到提示符,我必须坚持下面的关闭。

Oradim日志文件中没有任何错误消息,已经创建了实例以及所有相关的Oracle Services。

我在Windows Event Viewer中找到的唯一错误与Oracle VSS Writer服务有关:

"音量阴影复制服务错误:用名称Oracle VSS Writer主持作者的过程-XXXX和ID {YYY}在具有足够访问权限的用户下不运行。考虑在本地帐户下运行此过程,该过程是本地系统,管理员,网络服务或本地服务。"

我的理解是,由于VSS服务启动失败,Oradim命令没有返回,有人可以确认情况吗?Oradim命令是否与虚拟用户安装兼容,我需要做什么才能使其正常工作?

如果这是测试数据库,则:

  • 为此Oracle实例创建本地或域用户,例如ORA
  • 将此用户添加到本地Windows组和用户中的ORA_DBA组
  • 更改Oracle数据库和VSS Writer服务在此帐户下运行的帐户(如果它们存在于安装的此阶段(
  • 再次使用此帐户运行Oradim

我能够确认Oradim命令由于Oracle VSS服务启动失败而冻结:我启动了Oradim命令,一旦创建了Oracle VSS Writer服务,我就修改了关联的日志在用户到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 AUTHORITYLocalService" password= ""
net start %ORACLEVSS_NAME%

最新更新