出错信息:ORA-1031 signalled during: create tablespace 表空间名 datafile '+DATA' size 10M autoextend on next 5M maxsize unlimited...
问题描述
新部署的oracle环境,有一个需求在designer用户下每天凌晨1点job调用存储过程创建表空间。该用户已经有connect,resource,dba权限。
第二天发现表空间没有创建,找到alert_<sid>.log日志看到ORA-1031 signalled during: create tablespace 表空间名 datafile '+DATA' size 10M autoextend on next 5M maxsize 100M...这样的提示信息。
把相应的创建表空间语句拷贝到designer用户执行,是没有问题的。接着手动运行job还是出现同样的提示信息,且表空间没有创建成功。而后单独去调用存储过程时,因为忘记设置set serveroutput 选项,直接报执行成功,并没有看到相应的提示信息。最后设置set serveroutput on 发现ora-01031:insufficient privileges这样的提示信息。最终给此用户赋与以下权限
grant create tablespace to designer;
经过测试不再报错。
不过心中有一个疑问就是designer用户是有DBA权限的,其中DBA权限又包含了create tablespace权限,job、存储过程也是在designer下面建立的,为什么还要单独给designer赋与创建表空间的权限才能成功创建表空间?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。