Oracle 19c 在 VMware 虚拟机中可安装,但需严格满足条件:Linux 系统更稳妥,Windows 仅支持单实例;内存不低于 8GB(建议 12GB+),磁盘须用 SCSI(LSI Logic)控制器,且必须在 .vmx 文件中设置 disk.locking = "FALSE"。

Oracle 19c 在 VMware 虚拟机中能装,但不是“装上就跑”,关键看操作系统类型、资源分配和前置配置是否踩准点。Linux(如 Oracle Linux 7.9 / CentOS 7)比 Windows Server 更稳妥;Windows 环境下装单实例虽可行,但 RAC 几乎不可行,且官方支持弱、报错多、调试成本高。
VMware 虚拟机硬件配置必须绕开的几个硬伤
很多失败直接源于虚拟机规格“看着够、实际崩”:
-
内存低于 8G:Grid Infrastructure 安装阶段就会报INS-30011或静默退出,Oracle 19c GI 最低要求 8G,建议 12G+; -
磁盘类型不是 SCSI(LSI Logic):尤其在 RAC 场景下,IDE 或 SATA 控制器无法支持 ASM 共享磁盘锁机制,asmcmd lsdg会卡住或显示磁盘 offline; -
未禁用 disk.locking:VMware 默认启用磁盘锁,导致多节点同时访问同一块共享磁盘时触发ORA-15032 / ORA-15040,必须在 .vmx 文件里加一行:disk.locking = "FALSE"; CPU 核心数 :安装程序校验通不过,<code>setup.sh启动即报INS-30131(初始端口检查失败,本质是 CPU 不足)。
Linux 虚拟机上安装 Oracle 19c 的最小可信路径
跳过图形界面、跳过交互式安装,用预检 + 静默方式最稳:
- 先装
oracle-database-preinstall-19c包(Oracle 官方提供),它自动配好内核参数、用户 limits、组和目录权限,比手改/etc/sysctl.conf和/etc/security/limits.conf少踩 80% 的坑; -
swap必须 ≥ 物理内存 1 倍,否则runInstaller在最后阶段会因内存检测失败退出; -
/etc/hosts必须包含所有 IP + 主机名映射(public、private、vip、scan),缺任意一项都会卡在gridSetup.sh的集群发现环节; - 解压安装包后,务必
chown -R grid:oinstall(GI)或oracle:oinstall(DB),否则runInstaller读取响应文件时权限拒绝,报错信息却是模糊的PRVF-7606。
Windows Server 虚拟机装 Oracle 19c 的现实约束
能跑单实例,但每一步都带“妥协感”:
- 必须关闭 Windows Defender 实时防护 + 关闭防火墙三区(域、专用、公用),否则监听器启动后立刻被拦截,
lsnrctl status显示no listener; -
ORACLE_HOME路径不能含空格或中文,否则sqlplus启动失败,报SP2-1503: Unable to initialize Oracle call interface; - Windows 上没有
asm支持,所以 RAC、ASM 存储、OCR 等全都不适用,仅限单机文件系统存储(FILESYSTEM); - 安装完成后,首次启动需手动运行
%ORACLE_HOME%\bin\oradim.exe -new -sid ORCL创建服务,否则 Windows 服务列表里没有 OracleServiceORCL,数据库根本启不来。
网络配置最容易被忽略的细节
不是配通了就能连,而是配对了才能通:
- VMware 网络模式选
NAT时,宿主机无法直连虚拟机 Oracle 监听器,必须改用桥接模式并确保物理网段无冲突; - Linux 下若用
NetworkManager(如 OL7.9 默认),nmcli配完 IP 后要nmcli connection down && up,否则ifconfig显示 IP 但ping不通; - Windows Server 中,
netsh interface ipv4 set address设置静态 IP 后,必须删掉自动生成的 IPv6 地址(netsh interface ipv4 delete address),否则 Oracle 监听器绑定失败,日志里反复出现TNS-12545; - 所有节点的
/etc/hosts(Linux)或C:\Windows\System32\drivers\etc\hosts(Windows)必须完全一致,哪怕一行顺序不同,cluvfy都会报CRS-4000。
runInstaller 启动前——不是软件问题,是虚拟机底座没调平。装之前花 15 分钟验证 free -h、lscpu、ip a、cat /etc/hosts 四条命令的输出,比装到一半再重来省三天。


















