必须运行create subdirs,因ogg 19c启动依赖dirprm、dirrpt、dirdat等固定子目录,图形安装常因权限/selinux/nfs挂载失败导致缺失,静默安装则完全不创建,跳过将致start extract报ogg-01154错误。
直接结论:oracle 19c 上安装 ogg,解压后必须运行 create subdirs(除非用 12c+ 图形安装且确认自动创建成功),否则后续所有进程启动都会报错找不到目录。
为什么 CREATE SUBDIRS 不可跳过
OGG 启动时依赖固定结构的子目录(dirprm、dirrpt、dirdat 等),这些目录在 19c 图形安装中虽“声称”自动创建,但实测常因权限、挂载点或 SELinux 干预而缺失;静默安装则完全不创建。不执行该命令就配置抽取进程,START EXTRACT 会直接失败并报 ERROR OGG-01154: Failed to open parameter file 或类似路径错误。
ggsci 中执行 CREATE SUBDIRS 的前提条件
- 确保
OGG_HOME已正确设为 OGG 安装路径(如/u02/ogg_work),且$PATH包含$OGG_HOME - 当前用户(通常是
oracle)对$OGG_HOME具有读写执行权限:chmod -R 755 $OGG_HOME,chown -R oracle:oinstall $OGG_HOME - 已进入
ggsci命令行:cd $OGG_HOME && ./ggsci,再输入命令 - 若提示
Failed to create subdirectories,大概率是$OGG_HOME下已有残留文件或挂载点只读(如/ggs挂在/dev/mapper/backvg-backuplv但未mount -o remount,rw)
不同安装方式下 CREATE SUBDIRS 的执行时机
图形安装后:立即进 ggsci 执行,不要假设“已经建好”。尤其当安装路径是软链接或 NFS 挂载时,自动创建极易失败。
静默安装后:必须执行,这是标准步骤之一,不能省略。补丁升级(如从 19.1.0.0.4 升到 19.1.0.0.5)后也建议重跑一次,避免新版本新增目录结构未同步。
远程部署模式(独立 OGG 服务器):同样要执行,且需确保该服务器能通过 TNS 连通源库和目标库,否则后续测试连接会卡在 DBLOGIN 步骤。
验证是否真的建好了目录
执行完 CREATE SUBDIRS 后,手动检查关键子目录是否存在:
ls -l $OGG_HOME/dir* # 应看到 dirprm/ dirrpt/ dirdat/ dirchk/ dirsql/ 等至少 6 个目录 # 若缺 <code>dirprm</code>,<code>ADD EXTRACT</code> 会直接报错;若缺 <code>dirdat</code>,传输进程无法写 trail 文件
特别注意:dirpcs 和 dirver 在部分 19c 补丁版本中可能不会自动生成,需手动 mkdir,否则校验进程(VERIFIER)无法启动。











