Merhaba Arkadaşlar,
Bu yazımda Oracle Automatic Storage Management ı anlatmaya devam edeceğim. Bu yazıyı okumadan önce bir önceki yazıyı okumanızı tavsiye ederim.
Oracle ASM kullanıldığı zaman Disk group kavramı hayatımıza girer adındanda anlaşıldığı üzere artık tek bir disk yokta disk grup dediğimiz bir yada birden fazla disklerin bir araya geldiği disk gruplarında verilerimizi tutarız.
Önceki yazıdada belirttiğimiz gibi ASM instance sı Oracle Database instancesından ayrı bir instancedır. bunun için aşağıdaki gibi smon process ini sorguladığımızda database ile beraber +ASM Instancesınında geldiğini görüyoruz.
oracle:deveci01:/home/users/oracle:>ps -ef |grep smon root 11731186 1 18 10:05:48 - 0:00 /u01/app/oracle/product/12.1.0/grid/bin/osysmond.bin oracle 12058826 1 0 10:06:56 - 0:00 ora_smon_DEVECI oracle 12976246 1 0 10:06:24 - 0:00 asm_smon_+ASM oracle 38338572 28049424 1 10:07:02 pts/0 0:00 grep smon
ASM Instancesına bağlanmak için ASM Instance profile ı oluşturuyoruz.
oracle:deveci01:/home/users/oracle:> vi profile.12g.asm export ORACLE_HOME=/u01/app/oracle/product/12.1.0/grid export ORACLE_BASE=/u01/app/oracle export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH export ORACLE_SID=+ASM bash
Yukardaki gibi oluşturduktan sonra aşağıdaki gibi profile ı set edebilir ve artık ASM e bağlanabiliriz.
oracle:deveci01:/home/users/oracle:>. profile.12c.asm
asmcmd bizim bir çok disk operasyonlarını yaptığımız ve monitor ettiğimiz bir tooldur. aşağıdaki gibi bağlanıp lsdg ile disk gruplarını ve büyüklük,doluluklarını görebiliriz.
oracle:deveci:/home/users/oracle:>asmcmd ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 512000 510551 0 510551 0 N DATA/ MOUNTED EXTERN N 512 4096 4194304 204800 203272 0 203272 0 Y RECO/ ASMCMD> ASMCMD> cd DATA ASMCMD> ls -l Type Redund Striped Time Sys Name Y DEVECI/
asmcmd dışında ASM Instancesına sqlplus / as sysasm ilede bağlanıp benzer işlemleri sorgularla yapabiliriz.
ASM Disk gruplarına aşağıdaki gibi disk eklenip çıkarılabilir.
Önce Önce ASM profile set edilir.
oracle:deveci01:/home/users/oracle:>. profile.12c.asm
Sonra “sqlplus / as sysasm” ile ASM Instance sına bağlanır.
Disk gruplarını burda görmek için aşağıdaki sorgu çalıştırılır.
SQL> SELECT GROUP_NUMBER, NAME,SECTOR_SIZE,BLOCK_SIZE,ALLOCATION_UNIT_SIZE,STATE,TYPE TOTAL_MB,FREE_MB FROM V$ASM_DISKGROUP; GROUP_NUMBER NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TOTAL_ FREE_MB ------------ ------------------------------ ----------- ---------- -------------------- ----------- ------ ---------- 1 DATA 512 4096 1048576 CONNECTED EXTERN 355915 2 RECO 512 4096 1048576 CONNECTED EXTERN 721067
İşletim sistemine ASM Diski tanıtılılmışsa aşağıdaki sorguda bunlar görünür. HEADER_STATUS= CANDIDATE olanlar eklenememiş disklerdir.
SQL> SELECT MOUNT_STATUS, HEADER_STATUS, MODE_STATUS, STATE, TOTAL_MB, FREE_MB, NAME, PATH, LABEL FROM V$ASM_DISK; MOUNT_S HEADER_STATU MODE_ST STATE TOTAL_MB FREE_MB NAME PATH LABEL ------- ------------ ------- -------- ---------- ---------- ------------------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------- CLOSED CANDIDATE ONLINE NORMAL 0 0 /dev/rhdisk38 CLOSED CANDIDATE ONLINE NORMAL 0 0 /dev/rhdisk39 CLOSED CANDIDATE ONLINE NORMAL 0 0 /dev/rhdisk40 CACHED MEMBER ONLINE NORMAL 102399 17756 DATA_0000 /dev/rhdisk10 CACHED MEMBER ONLINE NORMAL 102399 17795 DATA_0001 /dev/rhdisk11 CACHED MEMBER ONLINE NORMAL 102399 17787 DATA_0002 /dev/rhdisk12 CACHED MEMBER ONLINE NORMAL 102399 17795 DATA_0003 /dev/rhdisk13 CACHED MEMBER ONLINE NORMAL 102399 17795 DATA_0004 /dev/rhdisk14 CACHED MEMBER ONLINE NORMAL 102399 17800 DATA_0005 /dev/rhdisk15 CACHED MEMBER ONLINE NORMAL 102399 17803 DATA_0006 /dev/rhdisk16 CACHED MEMBER ONLINE NORMAL 102399 17798 DATA_0007 /dev/rhdisk17 MOUNT_S HEADER_STATU MODE_ST STATE TOTAL_MB FREE_MB NAME PATH LABEL ------- ------------ ------- -------- ---------- ---------- ------------------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------- CACHED MEMBER ONLINE NORMAL 102399 28180 RECO_0001 /dev/rhdisk29 CACHED MEMBER ONLINE NORMAL 102399 28164 RECO_0002 /dev/rhdisk30 CACHED MEMBER ONLINE NORMAL 102399 28172 RECO_0003 /dev/rhdisk31 CACHED MEMBER ONLINE NORMAL 102399 28129 RECO_0004 /dev/rhdisk32 CACHED MEMBER ONLINE NORMAL 102399 28201 RECO_0005 /dev/rhdisk33 CACHED MEMBER ONLINE NORMAL 102399 28144 RECO_0006 /dev/rhdisk34 CACHED MEMBER ONLINE NORMAL 102399 28156 RECO_0007 /dev/rhdisk35 CACHED MEMBER ONLINE NORMAL 102399 17795 DATA_0018 /dev/rhdisk8 CACHED MEMBER ONLINE NORMAL 102399 17797 DATA_0019 /dev/rhdisk9 CACHED MEMBER ONLINE NORMAL 102399 94239 RECO_0008 /dev/rhdisk36 CACHED MEMBER ONLINE NORMAL 102399 94342 RECO_0009 /dev/rhdisk37
eğer yeniden bir diskgroup oluşturulacaksa aşağıdaki komutlar kullanılır.
- CREATE DISKGROUP RECO EXTERNAL REDUNDANCY DISK ‘/dev/mapper/asmtsk1’ NAME RECO_0001 SIZE 102399 M;
- ALTER DISKGROUP RECO REBALANCE POWER 10;
- ALTER DISKGROUP RECO ADD DISK ‘/dev/mapper/asmtsk2’ NAME RECO_0002 SIZE 102399 M REBALANCE POWER 10;
ALTER DISKGROUP RECO ADD DISK '/dev/mapper/asmtsk3' NAME RECO_0003 SIZE 102399 M REBALANCE POWER 10; ALTER DISKGROUP RECO ADD DISK '/dev/mapper/asmtsk4' NAME RECO_0004 SIZE 102399 M REBALANCE POWER 10; ALTER DISKGROUP RECO ADD DISK '/dev/mapper/asmtsk5' NAME RECO_0005 SIZE 102399 M REBALANCE POWER 10;
Eğer 2 nodlu bir RAC sistemde yeni bir diskgroup oluşturmuşsak 2.node a diskgroup mount etmeyi unutmamalıyız.
SQL> select INST_ID,GROUP_NUMBER,NAME,STATE from GV$ASM_DISKGROUP; INST_ID GROUP_NUMBER NAME STATE ---------- ------------ ------------------------------ ----------- 1 1 DATA MOUNTED 1 2 RECO MOUNTED 2 1 DATA MOUNTED 2 0 RECO DISMOUNTED SQL> alter diskgroup RECO mount; Diskgroup altered. SQL> select INST_ID,GROUP_NUMBER,NAME,STATE from GV$ASM_DISKGROUP; INST_ID GROUP_NUMBER NAME STATE ---------- ------------ ------------------------------ ----------- 1 1 DATA MOUNTED 1 2 RECO MOUNTED 2 1 DATA MOUNTED 2 2 RECO MOUNTED
RECO disk gurubuna /dev/rhdisk12 diskini ekleyelim. Ekleme komutunu vermeden önce yukardaki sql lerden disk “path”ine, disk “boyut”una,eklenecek “diskgroup”a, v$ASM_DISK viewında NAME alanında vereceğimiz ismin sıralı ilerliyor olmasına dikkat etmeliyiz.
SQL> ALTER DISKGROUP RECO ADD DISK '/dev/rhdisk38' NAME RECO_0010 SIZE 102399 M REBALANCE POWER 10; Diskgroup altered.
REBALANCE POWER 10 parametresiyle eklediğimiz diski manuel balance ediyoruz. Bu parametre verilmezse default olarak ASM_POWER_LIMIT parametresinin değerini alır. POWER parametresiyle rebalance işleminin paralelizm değerini vermiş oluruz. Eğer 0 olursa yeni bir rebalance işlemine kadar rebalance işlemi durdurulmuş olur. ASM_POWER_LIMIT 0-11 arasında değerler alabilir. V$ASM_OPERATION viewından rebalance durumu gözlemlenebilir.
SQL> show parameter ASM_POWER_LIMIT NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ asm_power_limit integer 1 SQL> select * from v$asm_operation;
ASMCMD ve sqlplus dışında asmca ile de disk gruplarını görebilir ve disk ekleyip çıkartabilirsiniz. Exadata üstünde asmca ya bağlanıp Disk ekleme aşağıdaki gibidir.
ASM disk grubunda bulunan bir disk aşağıdaki gibi drop edilebilir.
SQL> SELECT name, header_status, path FROM V$ASM_DISK; NAME HEADER_STATU PATH ------------------------------ ------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- FORMER /dev/rhdisk18 FORMER /dev/rhdisk15 FORMER /dev/rhdisk16 FORMER /dev/rhdisk17 DATA_0000 MEMBER /dev/rhdisk10 DATA_0001 MEMBER /dev/rhdisk11 DATA_0002 MEMBER /dev/rhdisk12 DATA_0003 MEMBER /dev/rhdisk13 DATA_0004 MEMBER /dev/rhdisk14 RECO_0000 MEMBER /dev/rhdisk19 RECO_0001 MEMBER /dev/rhdisk20 OCRVOTE_0000 MEMBER /dev/rhdisk21 DATA_0009 MEMBER /dev/rhdisk3 DATA_0010 MEMBER /dev/rhdisk4 DATA_0011 MEMBER /dev/rhdisk5 DATA_0012 MEMBER /dev/rhdisk6 DATA_0013 MEMBER /dev/rhdisk7 DATA_0014 MEMBER /dev/rhdisk8 DATA_0015 MEMBER /dev/rhdisk9 19 rows selected. SQL> alter diskgroup DATA drop disk DATA_0004; Diskgroup altered. Drop edilen disk header_status u former olur. SQL> SELECT name, header_status, path FROM V$ASM_DISK; NAME HEADER_STATU PATH ------------------------------ ------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- FORMER /dev/rhdisk18 FORMER /dev/rhdisk14 FORMER /dev/rhdisk15 FORMER /dev/rhdisk16 FORMER /dev/rhdisk17 DATA_0000 MEMBER /dev/rhdisk10 DATA_0001 MEMBER /dev/rhdisk11 DATA_0002 MEMBER /dev/rhdisk12 DATA_0003 MEMBER /dev/rhdisk13 RECO_0000 MEMBER /dev/rhdisk19 RECO_0001 MEMBER /dev/rhdisk20 OCRVOTE_0000 MEMBER /dev/rhdisk21 DATA_0009 MEMBER /dev/rhdisk3 DATA_0010 MEMBER /dev/rhdisk4 DATA_0011 MEMBER /dev/rhdisk5 DATA_0012 MEMBER /dev/rhdisk6 DATA_0013 MEMBER /dev/rhdisk7 DATA_0014 MEMBER /dev/rhdisk8 DATA_0015 MEMBER /dev/rhdisk9 19 rows selected.
RAC bir veritabanı ise bütün nodelar kontrol edilmeli aynı status diğer nodelarda da görülmeli.
ASMCMD ve sqlplus dışında asmca ile de disk gruplarını görebilir ve disk ekleyip çıkartabilirsiniz dedik Exadata üstünde asmca ya bağlanıp Disk drop etme aşağıdaki gibidir.
Böylece bu yazınında sonuna gelmiş bulunmaktayım bir sonraki yazıda görüşmek dileğiyle esen kalın.
Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi İhtiyacınız var [email protected] adresine mail atarak Bizimle iletişime geçebilirsiniz.
– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri
What’s up to all, the contents present at this web page are genuinely amazing for people experience, well, keep up the good work fellows.|
Have you ever considered writing an e-book or guest authoring on other websites? I have a blog based upon on the same information you discuss and would love to have you share some stories/information. I know my subscribers would enjoy your work. If you are even remotely interested, feel free to send me an e-mail.|
I’ve been surfing online greater than three hours these days, yet I by no means found any attention-grabbing article like yours. It is pretty worth enough for me. In my view, if all site owners and bloggers made good content material as you probably did, the net shall be a lot more useful than ever before.|
I take pleasure in, result in I discovered exactly what I used to be looking for. You have ended my 4 day lengthy hunt! God Bless you man. Have a great day. Bye|