RAC本地数据文件迁移至ASM的方法

WBOY
发布: 2016-06-07 15:54:59
原创
1014 人浏览过

目前在各个行业业务中存在大量的Oracle RAC环境,尤其对于中小型企业及一些管理不规范的环境中,对数据库的操作也就显得杂乱无章

一、        概述
  目前在各个行业业务中存在大量的Oracle RAC环境,尤其对于中小型企业及一些管理不规范的环境中,对数据库的操作也就显得杂乱无章了,它不是核心系统,但有问题也够运维人员喝一壶的。下面说一个常见的问题,就是在RAC环境中,往往会遇到本地数据文件,也就是只能在一个节点访问,出现这样的状况,主要有两个原因,命名不规范,造成Oracle自动创建到DBS目录下,再个对RAC系统不了解,按照之前方式创建。那么在出现这个问题时怎么解决呢,下面我们简单学习一下。

二、操作过程
    本次操作对象为非系统表空间,环境rhel6.3_x64+Oracle RAC11g
 1、 RAC为归档模式,不停库,通过Oracle11g asmcmd 中cp命令,操作。
    首先模拟环境:

SQL> create tablespace firsoul datafile 'firsoul01.dbf' size 10m;

Tablespace created.

SQL> select file_name from dba_data_files;

FILE_NAME

--------------------------------------------------------------------------------

+DATA/racdb/datafile/system.293.859438573

………………………………
/oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf
 

节点1,查看数据文件状态、信息

SQL> set lines 150                                                                       

SQL> col file_name for a55                                                               

SQL> select file_name,file_id,ONLINE_STATUS,tablespace_name from dba_data_files;       

                                                                                         

FILE_NAME                                              FILE_ID ONLINE_ TABLESPACE_NAME   

-------------------------------------------------------------- ------- ---------------- 

+DATA/racdb/datafile/system.293.859438573                    1 SYSTEM  SYSTEM           

+DATA/racdb/datafile/sysaux.288.859438589                    2 ONLINE  SYSAUX           

+DATA/racdb/datafile/undotbs1.287.859438601                  3 ONLINE  UNDOTBS1         

+DATA/racdb/datafile/undotbs2.285.859438615                  4 ONLINE  UNDOTBS2         

+DATA/racdb/datafile/users.278.859438619                    5 ONLINE  USERS             

+DATA/racdb/datafile/test1.261.859451689                    6 ONLINE  TEST1             

/oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf        11 ONLINE  FIRSOUL           
 


节点2,查看数据文件状态,信息

SQL> set lines 200

SQL> col file_name for a50

SQL> col tablespace_name for a10

SQL> select file_name,file_id,ONLINE_STATUS,tablespace_name from dba_data_files;

ERROR:

ORA-01157: cannot identify/lock data file 11 - see DBWR trace file

ORA-01110: data file 11: '/oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf '
 


将本地数据文件OFFLINE,或可以将整个表空间OFFLINE

SQL> alter database datafile 11 offline;

Database altered.
 


通过ASMCMD CP命令拷贝数据文件

ASMCMD> cp /oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf .

copying /oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf -> +data/racdb/datafile/firsoul01.dbf

ASMCMD> ls -lrt

WARNING:option 'r' is deprecated for 'ls'

please use 'reverse'

Type      Redund  Striped  Time            Sys  Name

                                            N    firsoul01.dbf => +DATA/ASM/DATAFILE/firsoul01.dbf.260.882071123

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    SYSAUX.288.859438589

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    SYSTEM.293.859438573

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    TEST1.261.859451689

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    UNDOTBS1.287.859438601

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    UNDOTBS2.285.859438615

DATAFILE  UNPROT  COARSE  JUN 11 09:00:00  Y    USERS.278.859438619
 


rename数据文件,并查看信息

SQL> alter database rename file '/oracle/app/oracle/product/11.2.0/dbs/firsoul01.dbf' to '+data/racdb/datafile/firsoul01.dbf'; 

Database altered.
 SQL> select file_name,file_id,ONLINE_STATUS,tablespace_name from dba_data_files

  2  ;

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!