Oracle Live

03/07/2016

ASM – ASMCMD Command Line

Filed under: ASM — mogukiller @ 12:19 am

Os dejo un pequeño manual de los comandos mas utilizados en la interfaz de comandos de ASM (ASMCMD)

0.- Inicio
1.- Movimientos por ficheros
2.- Trabajamos con diskgroups
3.- Interaccion con la instancia

----------------------------------------------------------
0.- Inicio
----------------------------------------------------------
-- Variables de entorno
	export ORACLE_SID=+ASM
	export ORACLE_HOME=/export/oracle/app/product/11.2.0/grid
	export PATH=$ORACLE_HOME/bin:$PATH
	
	sqlplus / as sysasm
	
	asmcmd -p			-- Inicia ASMCMD indicando el path
	/*ASMCMD [+] >*/
	
-- Ubicacion alert asmcmd
	$ORACLE_HOME/log/diag/asmcmd/user_username/hostname/alert/
	$ORACLE_HOME/log/diag/asmcmd/user_username/hostname/trace/
	
----------------------------------------------------------
1.- Movimientos por ficheros
----------------------------------------------------------

ls	-ls				-- Muestra el contenido del directorio actual dando informacion extra y tamaño

cd	<directorio>	-- Nos ubicamos en el directorio indicado
	cd ASMCMD [+data/ASM] > cd ASM*				-- Podemos utilizar caracteres comodin
	ASMCMD [+data/ASM/ASMPARAMETERFILE] > 

lsdsk				-- Muestra los discos que tenemos montados
mkdir <directorio>	-- Creamos un nuevo directorio
mkalias fichero alias	-- Creamos nombres mas amigables
cp					-- Permite copiar ficheros
du					-- Espacio ocupado en los discos
iostat -t			-- Estadisticas de escritura en disco
lsof				-- Lista la lista de ficheros abiertos
pwd					-- Indica donde estamos
rm	-rf				-- Borra de forma recursiva
rmalias				-- Borra un determinado alias

dsget				-- Indica el patron donde esta buscando los ficheros
/*parameter:/dev/asmdisk*/
lspwusr				-- Lista los privilegios de los usuarios
/*Username sysdba sysoper sysasm 
     SYS   TRUE    TRUE  FALSE 
*/

orapwusr 			-- Modifica los permisos de un usuario

/*Sintaxis
orapwusr { { { --add | --modify [--password] } [--privilege {sysasm|sysdba|sysoper} ] } | --delete } user*/

orapwusr --modify --privilege sysasm sys	-- Añade al usuario sysasm

spbackup <source> <destination>			-- Hace un backup del spfile
spcopy <source> <destination>			-- Hace una copia del spfile
	/*Ejemplo:
		spcopy REGISTRY.253.816091059 /tmp/spfile+ASM.ora*/
spget									-- Devuelve la localizacion del spfile
	/*+DATA/asm/asmparameterfile/registry.253.816091059*/

----------------------------------------------------------
2.- Trabajamos con diskgroups
----------------------------------------------------------
-- CHDG
Nota: Añade, borra un disco dentro de un diskgroup
Sintaxis:
	ASMCMD> chdg {fichero_xml | 'contenido_xml'}

	Plantilla xml:
	
	<chdg> update disk clause (add/delete disks/failure groups)
		  name         disk group to change
		  power        power to perform rebalance
		<add>  
		  items to add are placed here
		</add>
		<drop> 
		  items to drop are placed here
		</drop>
		<fg>  failure group
		  name         failure group name
		</fg>
		<dsk> disk
		  name         disk name
		  string       disk path
		  size         size of the disk to add
		  force        true specifies to use the force option
		</dsk>
	</chdg>
	
	Ejemplo:
	cat drop_disk.xml
		<chdg name="data" power="3">
			<drop>
				<dsk name="data_0009"/>
			</drop>
		</chdg>
	ASMCMD>asmcmd drop_disk.xml
	Diskgroup altered.

-- DROPDG
NOTA: Elimina un diskgroup
Sintaxis:
	ASMCMD> dropdg [-r -f] [-r] <disk_group>

-- LSDG
NOTA: Lista los diskgroup montados

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  NORMAL  N         512   4096  1048576     12288    12103             2048            5027              0             N  DATA/

-- LSDSK
NOTA: Lista los discos

ASMCMD> lsdsk -k
Total_MB  Free_MB  OS_MB  Name       Failgroup  Failgroup_Type  Library  Label  UDID  Product  Redund   Path
    2048     2015   2048  DATA_0000  DATA_0000  REGULAR         System                         UNKNOWN  /dev/asmdisk01
    2048     2014   2048  DATA_0001  DATA_0001  REGULAR         System                         UNKNOWN  /dev/asmdisk02
    2048     2018   2048  DATA_0002  DATA_0002  REGULAR         System                         UNKNOWN  /dev/asmdisk03
    2048     2019   2048  DATA_0003  DATA_0003  REGULAR         System                         UNKNOWN  /dev/asmdisk04
    2048     2018   2048  DATA_0004  DATA_0004  REGULAR         System                         UNKNOWN  /dev/asmdisk05
    2048     2019   2048  DATA_0005  DATA_0005  REGULAR         System                         UNKNOWN  /dev/asmdisk06
-- LSATTR
NOTA: Lista las propiedades de los discos

ASMCMD> lsattr -lm 
ASMCMD> lsattr -lm -G DATA
ASMCMD> lsattr -lm -G DATA %compa%   <<< -- saca los parametros que tienen ese patron
/*
ASMCMD> lsattr -lm
Group_Name  Name                     Value       RO  Sys  <<<< -- RO es read only, solo se pueden definir en tiempo de creacion del DG.
DATA        access_control.enabled   FALSE       N   Y    
DATA        access_control.umask     066         N   Y    
DATA        au_size                  1048576     Y   Y    
DATA        cell.smart_scan_capable  FALSE       N   N    
DATA        compatible.asm           11.2.0.0.0  N   Y    
DATA        compatible.rdbms         10.1.0.0.0  N   Y    
DATA        disk_repair_time         3.6h        N   Y    
DATA        sector_size              512         Y   Y    
RECO        access_control.enabled   FALSE       N   Y    
RECO        access_control.umask     066         N   Y    
RECO        au_size                  1048576     Y   Y    
RECO        cell.smart_scan_capable  FALSE       N   N    
RECO        compatible.asm           11.2.0.0.0  N   Y    
RECO        compatible.rdbms         10.1.0.0.0  N   Y    
RECO        disk_repair_time         3.6h        N   Y    
RECO        sector_size              512         Y   Y 
*/
-- MKDG
Nota: Crea un nuevo diskgroup
Sintaxis:
	ASMCMD> mkdg {fichero_xml | 'contenido_xml'}

Plantilla XML:
	<dg> disk group
		name disk group name
		redundancy normal, external, high
		<fg> failure group
			name failure group name
		</fg>
		<dsk> disk
			name disk name
			string disk path
			size size of the disk to add
			force true specifies to use the force option
		</dsk>
		<a> attribute
			name attribute name
			value attribute value
		</a>
	</dg>

Ejemplo:
	<dg name="datos" redundancy="normal">
		<fg name="fg1">
			<dsk string="/dev/asmdisk07"/>
			<dsk string="/dev/asmdisk08"/>
		</fg>
		<fg name="fg2">
			<dsk string="/dev/asmdisk09"/>
			<dsk string="/dev/asmdisk010"/>
		</fg>
	<a name="compatible.asm" value="11.2"/>
	<a name="compatible.rdbms" value="11.2"/>
	<a name="compatible.advm" value="11.2"/>
	</dg>
	ASMCMD> mkdg add_diskgroup.xml                 

-- MD_BACKUP
'md_backup hace un backup de los metadatos de un disco en el caso que tengamos que reconstruir el diskgroup'

	ASMCMD> md_backup /tmp/DATA -G DATA
	/*
		Disk group metadata to be backed up: DATA
		Current alias directory path: scan1/OCRFILE
		Current alias directory path: scan1
		Current alias directory path: moguland
		Current alias directory path: scan1/ASMPARAMETERFILE
		Current alias directory path: moguland/datafile
	*/

-- ALTER DISKGROUP
NOTA: Modifica los atributos de un diskgroup

SQL> ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.rdbms'='11.2';
	
----------------------------------------------------------
3.- Interaccion con la instancia
----------------------------------------------------------
ASMCMD> startup [--nomout] [--pfile <path>]
	/*
	ASM instance started

	Total System Global Area  283930624 bytes
	Fixed Size                  2227664 bytes
	Variable Size             256537136 bytes
	ASM Cache                  25165824 bytes
	ASM diskgroups mounted*/

ASMCMD> shutdown
	/*ASM diskgroups dismounted
	ASM instance shutdown
	Connected to an idle instance.*/

Dejar un comentario »

Aún no hay comentarios.

RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Blog de WordPress.com.

A %d blogueros les gusta esto: