Oracle数据文件迁移到裸设备

Posted Beng Dou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle数据文件迁移到裸设备相关的知识,希望对你有一定的参考价值。

  本文主要描述如何将Oracle表空间的文件系统形式的数据文件迁移到LV裸设备上。

前提条件

  1、oracle运行正常。

  2、已使用LVM命令规划好LV文件。如/dev/vgoracle/lvdatatbs。

  3、停止oracle监听。

操作步骤

1、查看当前待操作表空间DATATBS对应的数据文件的路径、状态。

SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name=DATATBS; 

2、关闭数据库并启动数据库到mount状态

SQL> shutdown immediate;
SQL> startup mount;

3、使用rman命令将文件系统的数据文件赋值到裸设备上

方法一:

$ rman target / nocatalog
RMAN> copy datafile /home/oracle/oradata/ora11g/datatbs.dbf to /dev/vgoracle/lvdatatbs

方法二:

$ rman target / nocatalog cmdfile=copy_datafile.cmd

copy_datafile.cmd内容如下:

run {
  allocate channel t1 type disk;
  copy datafile /home/oracle/oradata/ora11g/datatbs.dbf to /dev/vgoracle/lvdatatbs;
}

说明:如果操作多个数据文件,可以采用这种方式。只需新增copy datafile命令即可。

4、切换表空间对应的数据文件为裸设备。

SQL> alter database rename file /home/oracle/oradata/ora11g/datatbs.dbf to /dev/vgoracle/lvdatatbs;

5、打开数据库

SQL> alter database open;

6、删除被替换的datatbs.dbf数据文件。

以上是关于Oracle数据文件迁移到裸设备的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 12C 新特性之在线重命名迁移活跃的数据文件

Oracle 使用RMAN COPY 移动 整个数据库 位置 示例

如何将正在运行的 Oracle 数据库迁移到另一个系统

Oracle 数据库 - 使用UEStudio修改dmp文件版本号,解决imp命令恢复的数据库与dmp本地文件版本号不匹配导致的导入失败问题,“ORACLE error 12547”问题处理(代码片段

Expo / React Native:弹出到裸工作流后找不到图像文件

如何将Oracle数据库数据文件迁移到其它目录