Virtual box üzerinde kurulu olan database sunucuma 3 adet yeni virtual disk attach ederek işleme başlıyorum..
Sunucumuzu başlatıyoruz ve root kullanıcısı ile login olduktan sonra ilk yapmamız gereken şey fdisk komutu ile disklerimiz üzerinde partition oluşturup,yeni eklediğimiz diskleri ASM diski olarak işaretlemek olacak..
[root@test ~]# ls -l /dev/sd*
brw-rw----. 1 root disk 8, 0 Oct 9 08:51 /dev/sda
brw-rw----. 1 root disk 8, 1 Oct 9 08:52 /dev/sda1
brw-rw----. 1 root disk 8, 2 Oct 9 08:51 /dev/sda2
brw-rw----. 1 root disk 8, 16 Oct 9 08:53 /dev/sdb
brw-rw----. 1 root disk 8, 17 Oct 9 08:53 /dev/sdb1
brw-rw----. 1 root disk 8, 32 Oct 9 08:53 /dev/sdc
brw-rw----. 1 root disk 8, 33 Oct 9 08:53 /dev/sdc1
brw-rw----. 1 root disk 8, 48 Oct 9 08:53 /dev/sdd
brw-rw----. 1 root disk 8, 49 Oct 9 08:53 /dev/sdd1
brw-rw----. 1 root disk 8, 64 Oct 9 08:51 /dev/sde
brw-rw----. 1 root disk 8, 80 Oct 9 08:51 /dev/sdf
brw-rw----. 1 root disk 8, 96 Oct 9 08:51 /dev/sdg
Yukarıdaki komutla sunucu üzerinde tanımlı disklerimize baktığımız zaman yeni eklenen disklerimizin sde,sdf ve sdg olarak harflendirildiğini görüyoruz. Bu diskleri aşağıdaki gi yeni partitionlara ayırıyoruz.Her 3 disk için de ayrı ayrı bu işlemi yapıyoruz.
[root@test ~]# fdisk /dev/sde
bu komutunu girdikten sonra sırasıyla aşağıdaki parametreleri veriyoruz
n (new)
p (partition)
1 (partition number)
[enter]
[enter]
w (write)
Sonraki adımda bu diskleri asm disk olarak işaretliyoruz.
[root@test ~]# /etc/init.d/oracleasm createdisk DATANEW1 /dev/sde1
Marking disk "DATANEW1" as an ASM disk: [ OK ]
[root@test ~]# /etc/init.d/oracleasm createdisk DATANEW2 /dev/sdf1
Marking disk "DATANEW2" as an ASM disk: [ OK ]
[root@test ~]# /etc/init.d/oracleasm createdisk DATANEW3 /dev/sdg1
Marking disk "DATANEW3" as an ASM disk: [ OK ]
[root@test ~]# oracleasm listdisks
DATA1
DATA2
DATA3
DATANEW1
DATANEW2
DATANEW3
[root@test ~]#
Şimdi ASM ile yeni bir disk grubu nasıl oluşturacağımıza bakalım; Öncelikle aşağıdaki komutla ASM instance ve database instance'ımızın ayakta olup olmadığını kontrol edebiliriz.
[root@test ~]# ps -ef | grep pmon
oracle 3171 1 0 08:57 ? 00:00:02 asm_pmon_+ASM
oracle 3255 1 0 08:58 ? 00:00:01 ora_pmon_orcl
root 3688 3085 1 09:13 pts/0 00:00:00 grep pmon
Diskgrupların durumunu ve bilgilerini aşağıdaki sorguyla öğrenebiliriz.
SQL> SELECT GROUP_NUMBER NAME,SECTOR_SIZE,BLOCK_SIZE,ALLOCATION_UNIT_SIZE,STATE ,TYPE TOTAL_MB,FREE_MB FROM V$ASM_DISKGROUP;
NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TOTAL_
---------- ----------- ---------- -------------------- ----------- ------
FREE_MB
----------
1 512 4096 2097152 CONNECTED EXTERN
38620
2 512 4096 1048576 CONNECTED EXTERN
19540
Komut satırından asmca komutuyla bu aracı çalıştırıyoruz.Aşağıdaki gibi iki diskimizi seçip external failure groups seçeneğiyle devam ediyoruz (Production ortamda disklerin nasıl yedeklendiğine raid yapısına göre failure groups seçeneği değerlendirilmelidir.) OK dediğimizde artık DATANEW adıyla yeni disk grubumuz da oluşturulmuş oldu.
Şimdi disk gruplarımızı tekrar kontrol edelim.
SQL> SELECT GROUP_NUMBER NAME,SECTOR_SIZE,BLOCK_SIZE,ALLOCATION_UNIT_SIZE,STATE,TYPE TOTAL_MB,FREE_MB FROM V$ASM_DISKGROUP;
NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TOTAL_
---------- ----------- ---------- -------------------- ----------- ------
FREE_MB
----------
1 512 4096 2097152 CONNECTED EXTERN
38610
2 512 4096 1048576 CONNECTED EXTERN
19540
3 512 4096 1048576 MOUNTED EXTERN
65476
şimdi Bikaçtane datafile'ımızı bu diskgrup üzerine taşımak için gerekli işlemlere bakalıp.
SQL> select tablespace_name,file_name,bytes from dba_data_files;
TABLESPACE_NAME FILE_NAME BYTES
---------------- ------------------------------------ ----------
USERS +DATA/orcl/datafile/users.259.857729 5242880
995
UNDOTBS1 +DATA/orcl/datafile/undotbs1.258.857 94371840
729995
SYSAUX +DATA/orcl/datafile/sysaux.257.85772 702545920
9995
SYSTEM +DATA/orcl/datafile/system.256.85772 796917760
9995
TABLESPACE_NAME FILE_NAME BYTES
---------------- ------------------------------------ ----------
EXAMPLE +DATA/orcl/datafile/example.269.8577 363069440
30305
Bu bilgileri aldıktan sonra users tablespace'ine ait olan datafile'ı taşımak için gerekli olan işlemleri yapıyoruz.Önce datafile'ı offline 'a alıyoruz. Daha sonra rman ile yeni ASM diskgruba taşıyoruz. Alter database rename komutu ile eski ve yeni database'leri rename ederek controlfile'a bu bilginin yazılmasını sağlıyoruz. Daha sonra yine rmanle bağlanıp switch datafile yaparak eski datafile'ı siliyoruz ve datafile'ı online moda alıyoruz.
SQL> alter database datafile '+DATA/orcl/datafile/users.259.857729995' offline;
Database altered.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
[oracle@test ~]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Thu Oct 9 09:44:18 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1385510950)
RMAN> copy datafile '+DATA/orcl/datafile/users.259.857729995' to '+DATANEW';
Starting backup at 09-OCT-14
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=48 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=+DATA/orcl/datafile/users.259.857729995
output file name=+DATANEW/orcl/datafile/users.256.860492781 tag=TAG20141009T094609 RECID=2 STAMP=860492785
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:16
Finished backup at 09-OCT-14
RMAN> exit
Recovery Manager complete.
[oracle@test ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Thu Oct 9 09:47:34 2014
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, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
SQL> alter database rename file
2 '+DATA/orcl/datafile/users.259.857729995'
3 to
4 '+DATANEW/orcl/datafile/users.256.860492781';
Database altered.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
[oracle@test ~]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Thu Oct 9 09:49:50 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1385510950)
RMAN> switch datafile '+DATANEW/orcl/datafile/users.256.860492781' to copy;
using target database control file instead of recovery catalog
datafile 4 switched to datafile copy "+DATANEW/orcl/datafile/users.256.860492781"
RMAN> recover datafile '+DATANEW/orcl/datafile/users.256.860492781';
Starting recover at 09-OCT-14
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=46 device type=DISK
starting media recovery
media recovery complete, elapsed time: 00:00:04
Finished recover at 09-OCT-14
SQL> alter database datafile '+DATANEW/orcl/datafile/users.256.860492781' online;
Database altered.
Datafile'ımızı yeni disk gruba taşıdık, şimdi dba_data_files'dan kontrol edelim.
SQL> col tablespace_name format a16;
SQL> col file_name format a36;
SQL> select tablespace_name,file_name,bytes from dba_data_files;
TABLESPACE_NAME FILE_NAME BYTES
---------------- ------------------------------------ ----------
USERS +DATANEW/orcl/datafile/users.256.860 5242880
492781
UNDOTBS1 +DATA/orcl/datafile/undotbs1.258.857 94371840
729995
SYSAUX +DATA/orcl/datafile/sysaux.257.85772 702545920
9995
SYSTEM +DATA/orcl/datafile/system.256.85772 796917760
9995
TABLESPACE_NAME FILE_NAME BYTES
---------------- ------------------------------------ ----------
EXAMPLE +DATA/orcl/datafile/example.269.8577 363069440
30305
İşlem bu şekilde tamamlanmıştır.
İyi Çalışmalar.i
İyi Çalışmalar.i
0 yorum:
Yorum Gönder