【TABLESPACE】“ALTER TABLESPACE”命令的“RENAME”功能在重命名表空间能力上的测试

  在文章《【TABLESPACE】使用“ALTER TABLESPACE”命令的“RENAME”功能实现表空间快速重命名》(http://space.itpub.net/519536/viewspace-701776)中介绍了关于重命名表空间的一般方法。
  由于系统表空间(SYSTEM表空间和SYSAUX表空间)的特殊地位,我们无法使用这种rename的特性对其进行重命名。这里我们对rename方法的能力范围做一个全面的验证。

1.尝试对系统中所有类型表空间进行重命名
1)对普通用户表空间进行重命名
在文章《【TABLESPACE】使用“ALTER TABLESPACE”命令的“RENAME”功能实现表空间快速重命名》中已经得到验证。

2)尝试对UNDO表空间进行重命名
sys@ora10g> alter tablespace UNDOTBS1 rename to UNDOTBS1_new;

Tablespace altered.

成功。

3)尝试对临时表空间进行重命名
sys@ora10g> alter tablespace TEMP rename to TEMP_new;

Tablespace altered.

成功。

4)尝试对系统表空间进行重命名
sys@ora10g> alter tablespace SYSTEM rename to SYSTEM_new;
alter tablespace SYSTEM rename to SYSTEM_new
*
ERROR at line 1:
ORA-00712: cannot rename system tablespace


sys@ora10g> alter tablespace SYSAUX rename to SYSAUX_new;
alter tablespace SYSAUX rename to SYSAUX_new
*
ERROR at line 1:
ORA-13502: Cannot rename SYSAUX tablespace

这里提示,SYSTEM表空间和SYSAUX是无法简单地重命名。

2.尝试在数据库mount状态下对系统表空间进行重命名
sys@ora10g> alter tablespace SYSTEM rename to SYSTEM_new;
alter tablespace SYSTEM rename to SYSTEM_new
*
ERROR at line 1:
ORA-01109: database not open


sys@ora10g> alter tablespace SYSAUX rename to SYSAUX_new;
alter tablespace SYSAUX rename to SYSAUX_new
*
ERROR at line 1:
ORA-01109: database not open

使用这种rename方法依然无法对系统表空间进行重命名。

3.小结
  在使用新特性的过程中,建议对新特性的能力范围有一个全面的测试,这样可以对新特性有一个更加全面的认识。

Good luck.

secooler
11.07.10

-- The End --

请使用浏览器的分享功能分享到微信等