DBA 目录中的动态实例

Dynamic Instance in DBA Directories

免责声明:我不是 DBA,只是想成为 DBA 的人。

我已经在我们的生产环境中创建了一个目录:

CREATE DIRECTORY PAY_FOLDER AS '/u01/EBSPROD/apps/apps_st/appl/cust/12.0.0/per/1.0';
GRANT READ ON DIRECTORY PAY_FOLDER TO PUBLIC;

但是,当我们的生产环境被克隆到非生产实例(例如 EBSDEV)时, 实例名称没有改变,仍然是 EBSPROD。 我希望它是: /u01/EBSDEV/apps/apps_st/appl/cust/12.0.0/per/1.0 克隆到 DEV 时 /u01/EBSDEV/apps/apps_st/appl/cust/12.0.0/per/1.0 克隆到测试时 /u01/EBSUAT/apps/apps_st/appl/cust/12.0.0/per/1.0 克隆到 UAT 时

克隆实例时是否需要单独的脚本来重新创建这些目录?

是的。目录名只是一个字符串;它不知道您已经嵌入了实例名称。

使用

CREATE OR REPLACE DIRECTORY directory_name AS'path_name';

而不是 DROP-Statement 后跟 CREATE-Statement。这将保留此目录上的所有授权。

创建一个参数化脚本应该不会太难,该脚本将采用数据库名称或实例名称(以适当者为准)并构建正确的目录名称。