Pages

24 Aralık 2010 Cuma

ASM olmayan Oracle veritabanından duplike bir ASM veritabanı oluşturma

ASM olmayan dosya sistemine sahip bir Oracle veritabanından ASM dosya sistemli veritabanı klonlama yapmak veya duplike bir ASM dosya sistemli veritabanı oluşturmak için izlenecek basit adımlar altta yer almaktadır.

  1. Hedef makinede statik bir listener.ora dosyası oluşturun.
(SID_DESC =
     (GLOBAL_DBNAME = DUBDB)
     (ORACLE_HOME = /u01/oracle/product/ORCL)
     (SID_NAME = DUBDB)
    )
  1. Kaynak makinede tns alias oluşturun.Bu auxiliary veritabanı için kullanılacak.
DUPDBAUX =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = linux1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = DUBDB)
    )
  )
  1. init.ora ve password dosyasını kaynak makineden hedef makinedeki $ORACLE_HOME/dbs dizinine kopyalayın.
  2. Alttaki parametreleri init.ora dosyası içine kopyalayın. Bu senaryoda veritabanı ismi değişmeyeceğinden dolayı db_name kısmı değişmediğinden dolayı es geçiyorum.
*.control_files=’+DATA’,'+DATA’
*.db_create_file_dest=’+DATA’
*.db_create_online_log_dest_1=’+DATA’
*.db_create_online_log_dest_2=’+DATA’

            db_file_name_convert ve log_file_name_convert parametrelerinin
            ayarlanmadığından emin olun.
  1. Bu senaryoda kaynak ve hedef makinelerde dizin yapısı farklı olduğundan dolayı bdump,cdump,adump ve udump lokasyonları için gerekli dizinleri oluşturup buna bağlı olarak init.ora dosyasında gerekli değişiklikler yapılmalıdır.
*.audit_file_dest=’/u01/oracle/admin/dupdb/adump’
*.user_dump_dest=’/u01/oracle/admin/dupdb/udump’
*.background_dump_dest=’/u01/oracle/admin/dupdb/bdump’
*.core_dump_dest=’/u01/oracle/admin/dupdb/cdump’
  1. Hedefte pfile dosyasından spfile dosyası oluşturulmalıdır (CREATE PFILE FROM SPFILE)
  2. Kaynak makineden hedef makineye yedek dosyalarını kopyalayın.
  3. Hedef makineyi STARTUP NOMOUNT ile çalıştırın.
  4. Kaynak makinede alttaki komutu uygulayın.
rman target / auxiliary sys/xxx@dupdbaux
  1. ASM dosya sisteminde duplike veritabanını oluşturun.
run {
allocate channel c1 type disk;
allocate auxiliary channel c2 type disk;
duplicate target database to dupdb;
}

  1. Online redo log ve data dosyalarının lokasyonunu kontrol edin. Onlar artık +DATA ASM disk grubunda yer alıyorlar.
SQL> select name from v$datafile;

NAME
------------------------------------------------------------
+DATA/dupdb/datafile/system.487.717585195
+DATA/dupdb/datafile/undotbs1.493.717585195

SQL> select member from v$logfile;

MEMBER
-------------------------------------------------------------
+DATA/dupdb/onlinelog/group_3.500.717585859
+DATA/dupdb/onlinelog/group_3.501.717585859
+DATA/dupdb/onlinelog/group_2.498.717585859
+DATA/dupdb/onlinelog/group_2.499.717585859
+DATA/dupdb/onlinelog/group_1.496.717585857
+DATA/dupdb/onlinelog/group_1.497.717585857

SQL> show parameter control_files

NAME                                 TYPE        VALUE
--------------------------------- ----------- ------------
control_files                        string      +DATA/dupdb/controlfile/current.494.717585221, +DATA/dupdb/controlfile/current.495.717585221

0 yorum:

Yorum Gönder