重庆思庄Oracle、Redhat认证学习论坛

标题: oracle12c在线修改数据文件名字 [打印本页]

作者: 郑全    时间: 2019-8-1 15:29
标题: oracle12c在线修改数据文件名字
我们知道,在oracle 12c之前,要在数据库打开的情况下,修改数据文件的名字,或者移动到其他位置,相对来说,比较繁琐,先要做文件的拷贝,再使用rman的 switch to copy方式移动数据字典,还要再recover,这还是普通的文件,如果是system,undo表空间,必须再mount状态下做这个操作,非常不变。

在 oracle 12c ,这个问题,就得到了极大的简化,system表空间都可以直接在线移动即可,下面是一个操作过程:

SQL> select banner from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
PL/SQL Release 12.1.0.2.0 - Production
CORE    12.1.0.2.0      Production
TNS for Linux: Version 12.1.0.2.0 - Production
NLSRTL Version 12.1.0.2.0 - Production

SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE
SQL> select name from v$datafile where file#=1;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/sztech/system01b.dbf



1 rows selected.
SQL> alter database move datafile '/u01/app/oracle/oradata/sztech/system01b.dbf' to '/u01/app/oracle/oradata/sztech/system01.dbf';
Database altered.
SQL> select name from v$datafile file#=1;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/sztech/system01.dbf




SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE
SQL>


连system表空间都可以在线修改,其他文件,就更不用说。

能否移动到其他地方去呢,
答案是肯定的,可以从文件系统移动到asm,也可以从asm移动到文件系统;
alter database move datafile 1 to '+data' ;








欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2