温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在Oracle 10g中如何使用ALTER TABLESPACE命令的RENAME功能实现表空间快速重命名

发布时间:2021-11-08 14:05:24 来源:亿速云 阅读:242 作者:小新 栏目:建站服务器

这篇文章主要介绍了在Oracle 10g中如何使用ALTER TABLESPACE命令的RENAME功能实现表空间快速重命名,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

  在Oracle 10g环境中使用“ALTER TABLESPACE”命令的“RENAME TO”可以实现表空间快速重命名的功能,我们体验一下这种方便快捷的方法。

1.查询数据库版本信息
sys@ora10g> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

2.创建表空间TBS_SECOOLER
sys@ora10g> create tablespace tbs_secooler datafile '/oracle/ora10gR2/oradata/ora10g/tbs_secooler_01.dbf' size 10m;

Tablespace created.

3.查询表空间与数据文件的对应关系
sys@ora10g> col tablespace_name for a20
sys@ora10g> col file_name for a51
sys@ora10g> select tablespace_name,file_name from dba_data_files where file_name like '%secooler%';

TABLESPACE_NAME      FILE_NAME
-------------------- ---------------------------------------------------
TBS_SECOOLER         /oracle/ora10gR2/oradata/ora10g/tbs_secooler_01.dbf

此处信息用作后面的比较。

4.在TBS_SECOOLER表空间上创建用户SECOOLER并授权
sys@ora10g> create user secooler identified by secooler default tablespace tbs_secooler;

User created.

sys@ora10g> grant connect,resource to secooler;

Grant succeeded.

5.查询用户与表空间的对应关系
sys@ora10g> select username,default_tablespace from dba_users where username = 'SECOOLER';

USERNAME                       DEFAULT_TABLESPACE
------------------------------ ------------------------------
SECOOLER                       TBS_SECOOLER

此处信息用作后续比较。

6.在SECOOLER用户中创建测试表
sys@ora10g> conn secooler/secooler
Connected.
secooler@ora10g> create table t_secooler as select * from all_objects;

Table created.

7.查询表与表空间的对应关系
secooler@ora10g> conn / as sysdba
Connected.

sys@ora10g> select segment_name,tablespace_name from dba_segments where segment_name='T_SECOOLER';

SEGMENT_NAME                   TABLESPACE_NAME
------------------------------ --------------------
T_SECOOLER                     TBS_SECOOLER

此处信息用作后续比较。

8.调整表空间名字
我们将表空间TBS_SECOOLER更名为TBS_ANDY。
sys@ora10g> alter tablespace TBS_SECOOLER rename to TBS_ANDY;

Tablespace altered.

9.表空间调整后的查询确认
1)查询表空间与数据文件的对应关系
sys@ora10g> select tablespace_name,file_name from dba_data_files where file_name like '%secooler%';

TABLESPACE_NAME      FILE_NAME
-------------------- ---------------------------------------------------
TBS_ANDY             /oracle/ora10gR2/oradata/ora10g/tbs_secooler_01.dbf

可见,表空间的名字发生的变化,但对应的数据文件并没有改变。

2)查询SECOOLER用户与表空间的对应关系
sys@ora10g> select username,default_tablespace from dba_users where username = 'SECOOLER';

USERNAME                       DEFAULT_TABLESPACE
------------------------------ ------------------------------
SECOOLER                       TBS_ANDY

SECOOLER用户的默认表空间已经有原来的TBS_SECOOLER调整为现在的TBS_ANDY。

3)查询表与表空间的对应关系
sys@ora10g> select segment_name,tablespace_name from dba_segments where segment_name='T_SECOOLER';

SEGMENT_NAME                   TABLESPACE_NAME
------------------------------ --------------------
T_SECOOLER                     TBS_ANDY

表T_SECOOLER的存储表空间已经由原来的TBS_SECOOLER调整为现在的TBS_ANDY。

通过以上测试,可见使用“ALTER TABLESPACE”命令的“RENAME TO”功能可以完美的实现表空间快速重命名的目标。

感谢你能够认真阅读完这篇文章,希望小编分享的“在Oracle 10g中如何使用ALTER TABLESPACE命令的RENAME功能实现表空间快速重命名”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI