Lab – ASM Operations

01 jul

Lab – ASM Operations

Design sem nome (2)

Server Control e Clusterware Control

$ crsctl add database -d WINT -o /u01/app/oracle/12	2	0/db_1  		
$ srvctl modify database -d WINT -y MANUAL -s MOUNT  				
  				
-- Starting / Stopping Database and Diskgroup  				
  				
$ srvctl status database -d WINT  				
$ srvctl stpo database -d WINT  				
$ srvctl stop diskgroup -g DATA  				
$ srvctl stop diskgroup -g FRA  				
$ srvctl stop listener  				
  				
$ crsctl stop resource -all  				
$ crsctl stop has

Manutenção Listener com Clusterware Control

$ crsctl add listener  				
$ cd $ORACLE_HOME/network/admin  				
  				
$ vim listener	ora  			
  				
LISTENER =  				
  (DESCRIPTION=  				
    (ADDRESS_LIST =  				
      (ADDRESS = (PROTOCOL = TCP)(HOST = srv-asm1)(PORT = 1521))  				
    )  				
  )  				
  				
$ crsctl stop listener  				
$ crsctl start listener

Manutenção SPFILE

ASMCMD> spget   				
  				
SQL> create pfile='init+ASM	ora' from memory;  			
SQL> create spfile='+DATA' from pfile='init+ASM	ora';

Alterando Atributos de Inicialização utilizando Grid Control

$ crsctl status res -t  				
$ crsctl status resource ora	orcl	db  		
  				
-- Localizar atributo AUTO_START  			
$ crsctl status resource ora	orcl	db -p

Always: reinicia o recurso quando o servidor é reiniciado, independentemente do estado do recurso quando o servidor foi interrompido.

Restore: restaura o recurso para o mesmo estado em que estava quando o servidor foi interrompido. O Oracle Clusterware tenta reiniciar o recurso se o valor de TARGET estava ONLINE antes do servidor ser parado.

Never: o Oracle Clusterware nunca reinicia o recurso, independentemente do estado do recurso quando o servidor foi interrompido.

$ crsctl modify resource ora.orcl.db -attr AUTO_START=always

ASM Views

V$ASM_ALIAS: Exibe uma linha para cada alias presente em cada disk group montado na instancia do ASM   				
V$ASM_CLIENT: Exibe uma linha para instancia utilizando um disk group gerenciado pelo ASM	  			
V$ASM_DISK: Exibe uma linha para cada disco descoberto pela instancia do ASM, incluindo discos que não ão parte de nenhum Disk Group				
V$ASM_DISKGROUP: Exibe uma linha para cada Disk Group descoberto pela Instancia do ASM	  			
V$ASM_FILE: Exibe uma linha para cada arquivo de cada Disk Group montado pela Instancia do ASM	  			
V$ASM_OPERATION: Exibe uma linha para cada arquivo de operações longas executando na instancia do ASM	  			
V$ASM_TEMPLATE: Exibe uma linha para cada template presente em cada disk group montado pela Instancia do ASM	  			

Criando Diskgroup

# parted /dev/sdd						
(parted) mklabel gpt						
(parted) mkpart FRA04 ext4 0% -1						
# oracleasm createdisk FRA01 /dev/sdd1						
# oracleasm createdisk FRA02 /dev/sde1						
						
--- Select Discos asm  						
  						
SQL> SELECT MOUNT_STATUS, HEADER_STATUS, MODE_STATUS, STATE, TOTAL_MB, FREE_MB, NAME, PATH, LABEL FROM V$ASM_DISK;  						
						
--- Identificar discos candidatos  					
  						
SQL> SELECT NVL(A	NAME, '[CANDIDATE]')  DISK_GROUP_NAME  					
  	, B	PATH          DISK_FILE_PATH  				
  	, B	NAME          DISK_FILE_NAME  				
  	, B	FAILGROUP       DISK_FILE_FAIL_GROUP  				
 	FROM V$ASM_DISKGROUP A RIGHT OUTER JOIN V$ASM_DISK B USING (GROUP_NUMBER)  					
 	ORDER BY A	NAME;  				
						
--- criar diskgroup  (mannualy)  						
  						
SQL> create diskgroup FRA normal redundancy DISK 'ORCL:FRA01','ORCL:FRA02' ATTRIBUTE 'compatible	rdbms' = '11	2','compatible	asm' ='11	2','au_size' = '4M';		
  						
--- criar diskgroup silent (asmca)  					
						
$ asmca -silent -createDiskGroup \  						
  -diskGroupName DATA \  						
  -diskList 'ORCL:DATA1,ORCL:DATA2,ORCL:DATA3,ORCL:DATA4' \  						
  -redundancy external \  						
  -au_size 4 -compatible	asm 12	1 \  				
  -compatible	rdbms 12	1 \  				
  -sysAsmPassword oracle123  						
						
--- Drop disks and undrop disks from a Disk Group  						
  						
ALTER DISKGROUP testdb_data1 DROP  DISK testdb_data1_0004, testdb_data1_0005  REBALANCE POWER 11;  						
  						
DROP DISKGROUP FRA INCLUDING CONTENTS;  						
  						
ALTER DISKGROUP disk_group_1 UNDROP DISKS;  						

Adicionando Discos

--- Add disco  					
  						
ALTER DISKGROUP DATA ADD DISK 'ORA:FRA01' NAME DATA_02 REBALANCE POWER 11;  						
  						
ALTER DISKGROUP DATA ADD  						
FAILGROUP controller1 DISK 'FRA02'  						
FAILGROUP controller2 DISK 'FRA03' REBALANCE POWER 11;  						
  						
alter diskgroup nxdat add disk 'ORCL:DSK012' name DSK012;  						
  						
--- Acompanhar operações  						
  						
SELECT GROUP_NUMBER, OPERATION, STATE, POWER, EST_MINUTES FROM V$ASM_OPERATION;  						

Redimensionar Discos

-- Resize a specific disk.  

ALTER DISKGROUP disk_group_1  
RESIZE DISK diska1 SIZE 100G;  

-- Resize all disks in a failure group.  
ALTER DISKGROUP disk_group_1  
RESIZE DISKS IN FAILGROUP failure_group_1 SIZE 100G;  

-- Resize all disks in a disk group.  
ALTER DISKGROUP disk_group_1  
RESIZE ALL SIZE 100G;

Alterando Rebalance Power e Atributos

--- Alterar manualmente o rebalance dos discos  

ALTER DISKGROUP disk_group_1 REBALANCE POWER 5;  

--- Alterar atributos dos discos  

ALTER DISKGROUP FRA SET ATTRIBUTE 'compatible.asm' = '11.2.0.4.0';  
ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.rdbms' = '11.2.0.4.0';  
ATTRIBUTE 'au_size'='4M';

Montar e Desmontar Disk Groups

--- Mount and umount disk groups  

ALTER DISKGROUP ALL DISMOUNT;  
ALTER DISKGROUP ALL MOUNT;  
ALTER DISKGROUP disk_group_1 DISMOUNT [force];  
ALTER DISKGROUP disk_group_1 MOUNT;