在多住户数据库中,所有pdb共享undo tablespace,在某个pdb中创建undo ,命令会成功,但找不到创建的undo tablespace.
以下为12.1.0.2.0中测试结果:
[oracle@dbserver ~]$ sqlplus /nolog
SQL*Plus: Release 12.1.0.2.0 Production on Mon Jul 25 17:28:38 2016
Copyright (c) 1982, 2014, Oracle. All rights reserved.
SQL> conn sys/oracle@192.168.0.110:1521/pdborcl as sysdba
Connected.
我们登陆到 pdborcl中
SQL> select * from v$tablespace;
TS# NAME INC BIG FLA ENC CON_ID
---------- ------------------------------ --- --- --- --- ----------
2 UNDOTBS1 YES NO YES 0
0 SYSTEM YES NO YES 3
1 SYSAUX YES NO YES 3
2 TEMP NO NO YES 3
3 USERS YES NO YES 3
4 EXAMPLE YES NO YES 3
6 rows selected.
SQL> create undo tablespace undotbs2 datafile '/home/oracle/undotbs2.dbf' size 10m;
Tablespace created.
我们看到这个命令成功了
SQL> select * from v$tablespace;
TS# NAME INC BIG FLA ENC CON_ID
---------- ------------------------------ --- --- --- --- ----------
2 UNDOTBS1 YES NO YES 0
0 SYSTEM YES NO YES 3
1 SYSAUX YES NO YES 3
2 TEMP NO NO YES 3
3 USERS YES NO YES 3
4 EXAMPLE YES NO YES 3
6 rows selected.
但我们并没有发现undotbs2.
以上表明,在pdb中创建undo 表空间,就像丢到黑洞中去了,不返回错误,但就是看不到。
|