ORA-39936: Token manager for the CSX tablespace string not fully contained in the transportable set.

文档解释

ORA-39936: Token manager for the CSX tablespace string not fully contained in the transportable set.

Cause: Informational message to describe a failure during transportable containment checking.

Action: Include the specified tablespace into the transportable set.

ORA-39936: 在移植表空间所使用的token管理器没有完整包含在移植集合中。

官方解释

当尝试使用DBMS_TTS.TRANSPORT_SET_CHECK(),或者使用CREATE TABLE null AS SELECT * FROM TRANSPORT_SET TABLESPACE时,ORA-39936会出现,这种错误表示token管理器,没有完整包含在移植底层表示的表空间中。

常见案例

发生该错误的案例很常见,当用户尝试用DBMS_TTS,来从一个数据库(A)移植数据到另一个数据库(B)时,特别是当他想将一个表空间移植到另一个数据库上操作时,而使用的完整的transport_set时,就可能出现ORA-39936移植错误。

一般处理方法及步骤

1、 首先,检查一下表空间的字典表是否被移植,一般情况下,表空间的字典表是存储在源数据库的,如果也被移植,就可能出现ORA-39936错误。

2、 如果表空间的字典表存在,检查一下其中的TOKEN_MANAGER是否正确。

3、 对比目标系统是否存在对应的表空间,此时,比较表空间中所含有的所有token,来确定一个正确的token管理器。

4、 最后,为了防止ORA-39936移植错误的再次出现,可以为每个token管理器指定一个用户及相应的权限,存放在非共享表空间中。

你可能感兴趣的