今天在做数据库升级 迁移表空间的时候偶然遇到这个错误,网上的结论千篇一律都是权限有问题需要修改权限,直到在stack上找到了解决方案,记录一下。

错误的解决方案:
权限有问题,修改directory指定的路径为oracle:oinstall
例如:
oracle数据库中执行:
CREATE OR REPLACE DIRECTORY dump_file AS '/path'; ---创建directory目录
grant read, write on directory dump_file to system; ---给system用户读写权限
如题,修改/path目录权限为 oracle:oinstall 前提是现有这个目录,没有先创建
root用户下执行
chown -R oracle:oinstall /path
但实际上是有问题的,在数据库中创建directory路径需要写全
比如
CREATE OR REPLACE DIRECTORY dump_file AS '/path/';
注意 /path/ 后面的 / 不写会报 ORA-06512: at "SYS.UTL_FILE", line 536
文章讲述了作者在进行数据库升级迁移时遇到关于SYS.UTL_FILE错误的解决过程,指出问题并非仅仅是权限问题,而是需要确保在创建directory时路径写全,包括末尾的斜杠。解决方案是在Oracle中正确设置directory权限和路径,以及在Windows7环境下操作的注意事项。

1658

被折叠的 条评论
为什么被折叠?



