文档解释
ORA-31158: schema “string” currently being referenced
Cause: The specified schema URL is currently being referenced by the same session. This could happen because of PLSQL XMLType variables still in scope.
Action: Ensure all references to this schema in this session are released and try the operation again.
ORA-31158: schema “string” currently being referenced
这是由于实例尝试访问到正被另一个实例修改的模式引起的一个Oracle数据库错误。
官方解释
当某个实例正在访问某个模式时,将会抛出ORA-31158: schema “string” currently beingReference错误。信息中的“string”指的是模式的名称,说明在另一个实例中正在引用此模式。
常见案例
这个错误的常见发生场景是在Oracle的RAC环境中,多个实例在同一个库中把同一个模式做不同操作,比如实例A正在操作模式X,而实例B也在操作模式X,就会抛出ORA-31158: schema “string” currently being referenced 错误。
一般处理方法及步骤
1、把正在访问模式的实例进行停止,让其他实例可以得到模式访问权限;
2、检查模式访问情况,看是否有多个实例在同时访问模式;
3、修改模式表,以便单个实例可以访问模式,并且不会被其他实例访问;
4、确保多个实例不同时访问模式,以免造成冲突;
5、排查其它可能造成冲突的问题,包括但不限于模式本身,模式表等。