Banco de Dados · 1 de julho de 2019 · 4 min de leitura
Lab – ASM Operations
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 hasManutençã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 listenerManutençã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 -pAlways: 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=alwaysASM 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;Atualizado em 1 de julho de 2019.