【发布时间】:2022-01-20 18:54:12
【问题描述】:
目前我这样做是为了将 cwallet.sso(即“正常”文件,而不是导出等)上传到 Oracle 自治数据库......
BEGIN
DBMS_CLOUD.GET_OBJECT(
object_uri => 'https://objectstorage.us-ashburn-1.oraclecloud.com/p/Uasdfadsfasdf7Icmer6HMkv/n/sadf/b/paul/o/cwallet.sso',
directory_name => 'DATA_PUMP_DIR');
END;
/
我宁愿不依赖对象存储,因为我在本地拥有 cwallet.sso,所以这似乎是一个不必要的额外步骤。是否有一个简单的 PL/SQL 命令可以将文件从本地位置上传到 DATA_PUMP_DIR(或任何目录)?我无法从文档中完全分辨出来。
【问题讨论】:
-
OCI 中的自治数据库无法访问底层操作系统。您可以访问没有个目录对象。
-
感谢@pmdba 我看到 DBMS_CLOUD(正如我在问题中提到的)和 DBMS_CLOUD_ADMIN 操作具有 directory_name => 'DATA_PUMP_DIR' 建议 'DATA_PUMP_DIR' 和其他目录可以写入和读取。您是否知道这些目录存在的位置,更重要的是是否可以使用 UTL_FILE 或其他任何东西来写入它们(我的问题中的 DBMS_CLOUD.GET_OBJECT 方式)?谢谢阿甘。
标签: oracle jdbc plsql sqlplus sqlcl