Datafile’ları Farklı Bir Disk Gruba Taşıma

Selamlar, bu yazımda ASM disklerimizde ki datafile’larımızı farklı bir ASM diskgroup üzerine taşımayı ele aldım.

Öncelikle asmca aracı ile bir diskgroup oluşturalım, manuel olarak sql ifadesi ile de oluşturabilirsiniz. Terminalden ASM enviroment’ına girelim.

. oraenv

+ASM

asmca

Halihazır da DATA isimli bir diskgroup’umuz mevcut ve içinde bir ASM disk mevcut. Yeni bir disk oluşturalım ve bunu yeni diskgroup’umuza atayalım.

oracleasm createdisk NEW_ASM /dev/sdd1

oracleasm scandisks


Diskgroup’umuzun ismi NEW ve yeni ASM diskimizi bu grubun içine ekledik. Artık taşıma için hazırız.
Öncelikle veri dosyalarımızın nerede olduğuna bakalım

Örnek olarak user.259 ile başlayan datafile’ımızı NEW isimli asmgroup üzerine taşıyalım. Taşıyacağımız tablespace’i offline moda almalıyız.

SQL>ALTER DATABASE DATAFILE '+DATA/testdb/datafile/users.259.1004572059' OFFLINE;

Şimdi veri dosyamızı kopyalama işlemine başlayalım.Bu işlemi iki şekilde gerçekleştirebiliriz;

  • RMAN üzerinden
  • DBMS_FILE_TRANSFER paketini kullanarak.

Ben rman üzerinden örneği gerçekleyeceğim, RMAN’ e bağlanalım.

rman target/

COPY DATAFILE '+DATA/testdb/datafile/users.259.1004572059' TO '+NEW';

Yeni veridosyamız için yeniden adlandırma yapmalıyız.

run {set newname for datafile '+DATA/testdb/datafile/users.259.1004572059' to '+NEW/testdb/datafile/users.256.1005683335'; switch datafile all;}

veridosyamızı kurtarma işlemini gerçekleştirelim

SQL> RECOVER DATAFILE '+NEW/testdb/datafile/users.256.1005683335';

Artık veridosyamızı online duruma alabiliriz.

SQL> ALTER DATABASE DATAFILE '+NEW/testdb/datafile/users.256.1005683335' ONLINE;

Tekrardan veri dosyalarımızın yerini sorgulayalım.

SELECT FILE_NAME FROM DBA_DATA_FILES;


users.256 ile başlayan dosyamız yeni asmgroup’a taşındı, eski yerindeki dosyayı silebiliriz. ASMCMD ile bağlanıp dosyayı silelim.

ASMCMD> rm -rf USERS.259.1004572059

Taşıma işlemlerimiz bitti, hoşçakalın..

 

 

Deniz Parlak

Hi, I'm a Computer Engineering student in Dumlupınar University.I will graduate next year. I did an internship TurkNet Telecominication Company in 2018 June- 2018 September. I had experience Linux/Unix system, SQL Server Management , SSRS, Mysql Database Management,Troubleshooting performance issues in Linux. I also interested Oracle database and technologies. I want to work as Oracle DBA after my University. I am practicing Unix, Exadata, Orace Cloud, Oracle RAC, Dataguard, EBS, Oracle BI and etc and i hope the articles will be helpful. Any questions, or support please write email deniz.parlak@yahoo.com

Leave a Reply

Your email address will not be published. Required fields are marked *