概述
昨天在生产上出现了一个问题,客户的dba发现,使用临时用户导出了一个dump之后,无法导入测试环境,报错是常见的
IMP-00013: only a DBA can import a file exported by another DBA
这个问题一般碰到的处理方法就是在给目标环境的用户赋予dba权限,或者细粒度一些,赋予imp_full_database的权限,就能解决。
我检查了一下目标环境,是11g的库
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 – 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Export file created by EXPORT:V11.02.00 via conventional path
IMP-00013: only a DBA can import a file exported by another DBA
IMP-00000: Import terminated unsuccessfully
SQL> show parameter insta
NAME TYPE VALUE
———————————— ———– ——————————
active_instance_count integer
cluster_database_instances integer 1
instance_groups string
instance_name string TEST02
instance_number integer 0
instance_type string RDBMS
open_links_per_instance integer 4
parallel_instance_group string
parallel_server_instances integer 1
SQL> select * from dba_sys_privs where grantee = 'TESTAPP';
GRANTEE PRIVILEGE ADM
—————————— —————————————- —
TESTAPP ON COMMIT REFRESH NO
TESTAPP CREATE TABLE NO
TESTAPP CREATE TYPE NO
TESTAPP GLOBAL QUERY REWRITE NO
TESTAPP QUERY REWRITE NO
TESTAPP CREATE ANY SYNONYM NO
TESTAPP UNLIMITED TABLESPACE NO
7 rows selected.
–查看用户的role,已经有dba了。
SQL> select * from dba_role_privs where grantee ='TESTAPP';
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
TESTAPP TIGER_ROLE NO YES
TESTAPP TESTAPP_SEL YES NO
TESTAPP TESTAPP_ALL YES NO
TESTAPP DBA NO NO
dba权限已经存在,为了尽快解决,尝试revoke,再赋予一次dba权限(需要注意,revoke dba权限可能导致quota unlimited on tablespace的权限丢失)
再次尝试导入,竟然还是同样的错误。
查看其它的dba用户,发现default字段是YES,查看metalinkID 949279.1,里面也给出了类似问题的解决方法。
SQL> select * from dba_role_privs where grantee ='N1';
GRANTEE GRANTED_ROLE ADM DEF
—————————— —————————— — —
N1 DBA NO YES
最后
以上就是难过银耳汤为你收集整理的oracle的序列虚标,IMP-00013 问题及解决方法的全部内容,希望文章能够帮你解决oracle的序列虚标,IMP-00013 问题及解决方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复