Dosya sisteminde yer alan bir datafile’ın ASM disk grubuna taşınması
ASM kullanılan bir veritabanında kazara yada bilinçli şekilde dosya sisteminde oluşturulan dosyalar , çoğu zaman sorun yaratmaktadır.
Özellikle RAC veritabanlarında bir node üzerindeki dosya sisteminde oluşturulan bir dosya diğer node tarafından görülmeyeceğinden , bu datafile ile ilgili işlemlerde sorun yaşanacaktır.
Bu durumda aşağıdaki adımları takip ederek dosya sistemindeki bir dosya ASM disk grubu içine taşınabilir.
İşlemler :
Öncelikle ilgili tablo alanının offline yapılması gerekmektedir.
SQL> ALTER TABLESPACE TEST OFFLINE; Tablespace altered.
Dosya sistemindeki datafile’ın tam yolunu bulalım.
SQL> SELECT FILE_NAME FROM DBA_DATA_FILES; FILE_NAME -------------------------------------------------------------------------------- +DATA/racdb/datafile/users.259.623629857 +DATA/racdb/datafile/sysaux.257.623629849 +DATA/racdb/datafile/undotbs1.258.623629855 +DATA/racdb/datafile/system.256.623629845 +DATA/racdb/datafile/undotbs2.261.623630209 /u01/oradata/racdb/test01.dbf
Rman ile ilgili dosyayı ASM disk grubu (+DATA) içerisine kopyalıyoruz.
[oracle@rac1 racdb]$ rman target / nocatalog Recovery Manager: Release 11.2.0.4.0 - Production on Wed Dec 14 17:58:18 2016 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. connected to target database: RACDB (DBID=2708277737) using target database control file instead of recovery catalog RMAN> copy datafile '/u01/oradata/racdb/test01.dbf' to '+DATA'; Starting backup at 14-DEC-16 using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile copy input datafile fno=00006 name=/u01/oradata/racdb/test01.dbf output filename=+DATA/racdb/datafile/test.263.625644857 tag=TAG20161214T061416 recid=1 stamp=625644858 channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:04 Finished backup at 14-DEC-16 RMAN> exit Recovery Manager complete.
Sqlplus ile ilgili dosyanın ismini değiştiriyoruz.
[oracle@rac1 racdb]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Wed Dec 14 18:01:43 2016 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options SQL> alter database rename file '/u01/oradata/racdb/test01.dbf' to '+DATA/racdb/datafile/test.263.625644857'; Database altered.
İlgili tablo alanını online duruma getiriyoruz.
SQL> alter tablespace test online; Tablespace altered.
Son olarak dosya sistemindeki dosyayı siliyoruz.
[oracle@rac1 racdb]$ rm /u01/oradata/racdb/test01.dbf
Tekrar tüm datafile’ları kontrol ettiğimizde, dosya sisteminde herhangi bir datafile olmaması gerekmektedir.
SQL> SELECT FILE_NAME FROM DBA_DATA_FILES; FILE_NAME -------------------------------------------------------------------------------- +DATA/racdb/datafile/users.259.623629857 +DATA/racdb/datafile/sysaux.257.623629849 +DATA/racdb/datafile/undotbs1.258.623629855 +DATA/racdb/datafile/system.256.623629845 +DATA/racdb/datafile/undotbs2.261.623630209 +DATA/racdb/datafile/test.263.625644857