Oracle 12.1新特性:在线rename或relocate数据文件
admin
2023-04-26 15:03:19
0

在Oracle12.1之前的版本中要重命名数据文件或移动数据文件需要关闭数据库或把表空间/数据文件置为offline状态才可以,参考之前总结的Oracle修改数据文件名/移动数据文件。但到了12.1版本,可以直接在数据文件online状态下把数据文件重命名或移动数据文件。

要实现这一功能需要使用ALTER DATABASE MOVE DATAFILE 语句,语法如下

ALTER DATABASE MOVE DATAFILE ( 'filename' | 'ASM_filename' | file_number )
 [ TO ( 'filename' | 'ASM_filename' ) ]
 [ REUSE ] [ KEEP ]

下面在12.2版本测试这一功能

zx@ORA12C>select * from v$version;

BANNER										     CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production		  0
PL/SQL Release 12.2.0.1.0 - Production							  0
CORE	12.2.0.1.0	Production								  0
TNS for Linux: Version 12.2.0.1.0 - Production						  0
NLSRTL Version 12.2.0.1.0 - Production							  0

1、创建测试表空间及数据文件:

sys@ORA12C>create tablespace t_move datafile '/home/oracle/t_move.dbf' size 50m ;

Tablespace created.

sys@ORA12C>col name for a50
sys@ORA12C>select d.name,d.status from v$datafile d,v$tablespace t where t.ts#=d.ts# and t.name='T_MOVE';

NAME						   STATUS
-------------------------------------------------- -------
/home/oracle/t_move.dbf 			   ONLINE

现在数据文件'/home/oracle/t_move.dbf'为ONLINE状态

2、执行重命名操作

sys@ORA12C>alter database move datafile '/home/oracle/t_move.dbf' to '/home/oracle/t_move01.dbf';

Database altered.

sys@ORA12C>select d.name,d.status from v$datafile d,v$tablespace t where t.ts#=d.ts# and t.name='T_MOVE';

NAME						   STATUS
-------------------------------------------------- -------
/home/oracle/t_move01.dbf			   ONLINE

sys@ORA12C>!ls -l /home/oracle/t_move01.dbf
-rw-r----- 1 oracle oinstall 52436992 Jul 11 16:07 /home/oracle/t_move01.dbf

sys@ORA12C>!ls -l /home/oracle/t_move.dbf
ls: cannot access /home/oracle/t_move.dbf: No such file or directory

可以看到文件名从t_move.dbf改为了t_move01.dbf,原文件已经不存在了。

3、执行移动目录操作

sys@ORA12C>alter database move datafile '/home/oracle/t_move01.dbf' to '/u01/app/oracle/oradata/ora12c/t_move01.dbf';

Database altered.

sys@ORA12C>!ls -l /u01/app/oracle/oradata/ora12c/t_move01.dbf
-rw-r----- 1 oracle oinstall 52436992 Jul 11 16:10 /u01/app/oracle/oradata/ora12c/t_move01.dbf

sys@ORA12C>!ls -l /home/oracle/t_move01.dbf
ls: cannot access /home/oracle/t_move01.dbf: No such file or directory

sys@ORA12C>select d.name,d.status from v$datafile d,v$tablespace t where t.ts#=d.ts# and t.name='T_MOVE';

NAME						   STATUS
-------------------------------------------------- -------
/u01/app/oracle/oradata/ora12c/t_move01.dbf	   ONLINE

从上面的结果可以看到数据文件从'/home/oracle'目录移动到了'/u01/app/oracle/oradata/ora12c'目录下了。

4、copy数据文件到目标目录,保留原文件

sys@ORA12C>alter database move datafile  '/u01/app/oracle/oradata/ora12c/t_move01.dbf' to '/home/oracle/t_move01.dbf' keep;

Database altered.

sys@ORA12C>select d.name,d.status from v$datafile d,v$tablespace t where t.ts#=d.ts# and t.name='T_MOVE';

NAME						   STATUS
-------------------------------------------------- -------
/home/oracle/t_move01.dbf			   ONLINE

sys@ORA12C>!ls -l /home/oracle/t_move01.dbf
-rw-r----- 1 oracle oinstall 52436992 Jul 11 16:15 /home/oracle/t_move01.dbf

sys@ORA12C>!ls -l /u01/app/oracle/oradata/ora12c/t_move01.dbf
-rw-r----- 1 oracle oinstall 52436992 Jul 11 16:15 /u01/app/oracle/oradata/ora12c/t_move01.dbf

从上面的结果可以看到数据文件改为了/home/oracle/t_move01.dbf,但原来的数据文件仍然被保留。

5、移动数据文件到ASM存储

--文件系统到ASM
ALTER DATABASE MOVE DATAFILE '/u01/oracle/rbdb1/user1.dbf' 
  TO '+dgroup_01/data/orcl/datafile/user1.dbf';
--ASM到ASM
ALTER DATABASE MOVE DATAFILE '+dgroup_01/data/orcl/datafile/user1.dbf' 
  TO '+dgroup_02/data/orcl/datafile/user1.dbf';

参考:http://docs.oracle.com/database/121/ADMIN/dfiles.htm#ADMIN13837

相关内容

热门资讯

烈焰熊熊,堪比“原子弹”,欧洲... 据美国有线电视新闻网(CNN)7月29日报道,席卷法国西南部的大片野火燃烧得如此猛烈,以至于形成了一...
外交部:对日本熊本县地震遇难者... 据凤凰卫视报道,针对日本熊本县发生强震造成人员伤亡,中国外交部发言人毛宁7月29日在例行记者会上表示...
高铁喧哗被劝阻后叫嚣全家体制内... “女子高铁喧哗被劝阻后叫嚣全家体制内”一事迎来官方通报。据新京报报道,7月29日,辽宁北票市公安局发...
广东专业蓝牙耳机定制厂家推荐,... 在珠三角腹地,广东早已成为全球蓝牙耳机产业链的“心脏地带”。从深圳华强北的声学元件批发,到东莞、惠州...
格雷厄姆葬礼变地缘竞价场!两大... 有些葬礼,送别的是逝者;有些葬礼,演的却是活人最现实的政治博弈。当地时间7月28日,美国老牌鹰派参议...
一道小学数学题难住3名医学博士... 3名不同学校的博士同做一道数学题,谁最厉害?近日,一陕西网友发布的视频引发热议。29日,视频发布者“...
华为全新“小艺任务”亮相:整合... 7月29日,在华为鸿蒙电脑新品技术沟通会上,终端云服务小艺业务部总裁贾永利宣布,小艺将迎来“从对话到...
广西日报特稿《王的猜想》火了,... 澎湃新闻记者 蒋子文 实习生 汤煜炜为应对外界购买纸质版特稿《王的猜想》的热情,《广西日报》宣布紧急...
月租20元内!2026年平价云... 不少手游玩家、账号运营从业者挑选云手机时,首要诉求就是低价够用,想要控制每月支出在20元以内,同时兼...
诺奖得主如何看待王虹境遇?“我... 中村修二(2014年诺贝尔物理学奖得主)【导读】近日王虹与邓煜双双获得2026年菲尔兹奖,成为了首批...