暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

源库pdb中可能存在目标库cdb中没有的c##用户,需要进行删除操作,怎么做?

原创 墨天轮问答平台 2021-07-30
1301

问题描述

源库pdb中可能存在目标库cdb中没有的c##用户,需要进行删除操作,怎么做?

专家解答

注意:一定要当即处理,如果留到后续处理需要变更窗口停库影响业务连续性。

处理方法:
(1)在目标库cdb和refresh pdb中找出多余的c##用户(有多少要处理多少)

(2)alter session set container=enmo_newdb;
drop user c##user1;
如果顺利,这里就直接删掉了,如果失败执行后续步骤(3)

(3)删除pdb上下文组件(context component)

cd $ORACLE_HOME/rdbms/admin
$ORACLE_HOME/perl/bin/perl catcon.pl -n 1 -c 'enmo_newdb' -e -b catnoctx_pdbs -d $ORACLE_HOME/ctx/admin catnoctx.sql

然后再drop user c##user1;
如果顺序,c##user1则被删除。如果失败遇到以下错误:

ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-65047: Object SYS.OJDS_CONTEXT is invalid or compiled with errors in root.

执行后续步骤(4)

(4)在CDB中创建OJDS对象(如果存在则需要清理后重建),OJDS全称是Oracle Java Directory Service组件
(4.1)清理步骤:

        alter session set "_ORACLE_SCRIPT"=true;
        drop user OJVMSYS cascade;
        drop synonym ojds$node_number$;
        drop synonym ojds$bindings$;
        drop synonym ojds$inode$;
        drop synonym ojds$attributes$;
        drop synonym ojds$refaddr$;
        drop synonym ojds$permissions$;
        drop synonym ojds$shared$obj$seq$;
        drop synonym ojds$shared$obj$;
        drop public synonym ojds_namespace;
        drop package ojds_namespace;
        drop trigger OJDS$ROLE_TRIGGER$;
        delete from duc$ where OWNER = 'SYS' and PACK = 'OJDS_CONTEXT' and PROC = 'USER_DROPPED';
        drop package ojds_context;
        commit;
        alter session set "_ORACLE_SCRIPT"=false;

(4.2)创建步骤:

        alter session set "_ORACLE_SCRIPT"=true;
        grant resource,unlimited tablespace to OJVMSYS identified by XXXX;
        alter user OJVMSYS account lock password expire default tablespace sysaux;
        alter session set "_ORACLE_SCRIPT"=false;
        @?/javavm/install/jvm_ojds.sql

(5)重启一个节点的pdb(主备模式的话,可以重启没有业务的那个节点pdb)

alter pluggable database enmo_newdb close immediate;
alter pluggable database enmo_newdb open;

(6)删除c##user1用户

      alter session set container=enmo_newdb;
      drop user c##user1;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论