Vous êtes sur la page 1sur 10

Utilitario ASMCMD para Oracle 11gr1

(sólo nuevas características)


Documento generado por

Para el sitio

Índice

1. Introducción.................................................................................................................. 2
2. Comandos utilizados dentro de ASMCMD.................................................................. 3
2.1. COMANDO LSDSK ................................................................................................................................ 4
2.2. COMANDO CP ...................................................................................................................................... 4
2.2.1. Copiando un datafile dentro del ASM ........................................................................................ 4
2.2.2. Copiando un datafile a una ruta local........................................................................................ 5
2.2.3. Copiando un datafile a una ruta remota .................................................................................... 5
2.3. COMANDO MD_BACKUP ...................................................................................................................... 5
2.4. COMANDO MD_RESTORE ..................................................................................................................... 7
2.4.1. Restauración full mode............................................................................................................... 7
2.4.2. Restauración nodg mode ............................................................................................................ 8
2.4.3. Restauración newdg mode.......................................................................................................... 8
3. Referencias ................................................................................................................. 10
1. Introducción

ASMCMD es un utilitario (command-line) que se usa para manipular de forma fácil y casi didáctica
los directorios y archivos dentro de una instancia ASM.
Se puede mostrar la información de un diskgroup, crear directorios, crear alias, mostrar el espacio
utilizado por los diskgroups , etc.

Este documento esta orientado a las nuevas características de ASMCMD para Oracle11gr1 , esto
se puede complementar con el manual existente en www.oracleyyo.com que habla del ASMCMD
para Oracle10g.

Cabe mencionar que los comandos se ejecutaron en un ambiente con Oracle11gr2 , por lo cual
pueden cambiar un poco las sintaxis, pero la idea es exactamente la misma

Utilitario ASMCMD en 11gr1 Página 2 de 10


2. Comandos utilizados dentro de ASMCMD
Para utilizar ASMCMD, se debe setear el medio ambiente para trabajar con la instancia ASM

Ejemplo :

$ export ORACLE_HOME=$ORA_HOME_ASM
$ echo $ORACLE_HOME
/u01/app/oracle/product/11.1.0/asm
$export ORACLE_SID=+ASM1

Para tener un listado de todos los comandos existentes en el utilitario ASMCMD, ejecutamos help

ASMCMD> help
asmcmd [-vV] [-a <sysasm|sysdba>] [-p] [command]

The environment variables ORACLE_HOME and ORACLE_SID determine the


instance to which the program connects, and ASMCMD establishes a
bequeath connection to it, in the same manner as a SQLPLUS / AS
SYSASM. The user must be a member of the OSASM group.

Specifying the -V option prints the asmcmd version number and


exits immediately.

Specifying the -v option prints extra information that can help


advanced users diagnose problems.

Specify the -a option to choose the type of connection. There are


only two possibilities: connecting as SYSASM or as SYSDBA.
The default value if this option is unspecified is SYSASM.

Specifying the -p option allows the current directory to be displayed


in the command prompt, like so:

ASMCMD [+DATA/ORCL/CONTROLFILE] >

[command] specifies one of the following commands, along with its


parameters.

Type "help [command]" to get help on a specific ASMCMD command.

commands:
--------

md_backup, md_restore

lsattr, setattr

cd, cp, du, find, help, ls, lsct, lsdg, lsof, mkalias
mkdir, pwd, rm, rmalias

chdg, chkdg, dropdg, iostat, lsdsk, lsod, mkdg, mount


offline, online, rebal, remap, umount

dsget, dsset, lsop, shutdown, spbackup, spcopy, spget


spmove, spset, startup

chtmpl, lstmpl, mktmpl, rmtmpl

chgrp, chmod, chown, groups, grpmod, lsgrp, lspwusr, lsusr


mkgrp, mkusr, orapwusr, passwd, rmgrp, rmusr

Utilitario ASMCMD en 11gr1 Página 3 de 10


volcreate, voldelete, voldisable, volenable, volinfo
volresize, volset, volstat

ASMCMD>

2.1. Comando lsdsk

El comando lsdsk muestra la información de los discos de la instancia ASM (de los diskgroups),
este comando se ejecuta de dos formas
• En modo conectado, asmcmd usa la información de las vistas V$ y GV$
• En modo no conectado, asmcmd registra la cabecera de los discos buscando información

Ejemplo :
ASMCMD> lsdsk
Path
/dev/raw/raw1
/dev/raw/raw2
/dev/raw/raw3
/dev/raw/raw4
/dev/raw/raw5

Cuando se habla de modo no conectado, es el comando lanzado desde fuera de asmcmd

Ejemplo :
[oracle@oracle11g ~]$ asmcmd lsdsk
Path
/dev/raw/raw1
/dev/raw/raw2
/dev/raw/raw3
/dev/raw/raw4
/dev/raw/raw5

2.2. Comando cp
Este comando permite la copia de los discos de ASM entre instancias locales e instancias remotas
(cuando utilizan entradas de tnsnames), además tiene la potencia de poder escribir desde la
instancia de ASM hacía sistema operativo y viceversa.

Acá se presentan sólo comandos asociados a datafiles,pero en realidad puede ser cualquier objeto
que se ubique dentro de la instancia ASM.

2.2.1. Copiando un datafile dentro del ASM

ASMCMD> cp +DATA/ORCL11G2/DATAFILE/TURBO_B.256.716555117 +DATA/ORCL11G2/Resp_TURBO_B.dbf


copying +DATA/ORCL11G2/DATAFILE/TURBO_B.256.716555117 -> +DATA/ORCL11G2/Resp_TURBO_B.dbf

Buscando el archivo lo encontramos en la siguiente ruta


ASMCMD> pwd
+DATA/ORCL11G2
ASMCMD> ls -l
Type Redund Striped Time Sys Name
Y DATAFILE/
N Resp_TURBO_B.dbf => +DATA/ASM/DATAFILE/Resp_TURBO_B.dbf.257.716555317
ASMCMD>

Utilitario ASMCMD en 11gr1 Página 4 de 10


Esta copia también utiliza espacio, eso lo podemos verificar si ejecutamos el comando lsdg sobre
ese DiskGroup

2.2.2. Copiando un datafile a una ruta local


Para copiar un datafile a una ruta local , se ocupa el comando cp de la siguiente forma

ASMCMD> cp +DATA/ORCL11G2/DATAFILE/TURBO_B.256.716555117 /home/oracle/Resp_TURBO_B.dbf


copying +DATA/ORCL11G2/DATAFILE/TURBO_B.256.716555117 -> /home/oracle/Resp_TURBO_B.dbf
ASMCMD>

Validando el archivo

[oracle@oracle11g ~]$ ls -ltr Resp_TURBO_B.dbf


-rw-r----- 1 oracle oinstall 104865792 Apr 17 11:42 Resp_TURBO_B.dbf
[oracle@oracle11g ~]$ pwd
/home/oracle
[oracle@oracle11g ~]$

Esto puede ser realizado viceversa también y con cualquier objeto que se ubique dentro del ASM ,
incluso los archives

2.2.3. Copiando un datafile a una ruta remota


De hecho , mediante el comando cp , se puede realizar una copia de forma remota de un datafile
desde nuestra instancia de ASM Local

Para ello se debe seguir una pequeña nomenclatura

cp +DISKGROUP/directorios/Nombre_datafile user@host[.port number].SID instancia


ASM:+NuevoDiskgroup/directorios/ruta_datafile

Esto lo podemos comprobar mediante el siguiente ejemplo

ASMCMD> cp +DATA/ORCL11G2/DATAFILE/TURBO_B.256.716555117
sys@oracle11g.1521.+ASM:/+DATA/ORCL11G2/DATAFILE/copia_TURBO_B.dbf
Enter password: ******

Y se debe recordar que pide la password de ingreso para el usuario que estemos colocando

Otro punto a tener en cuenta es que la copia de estos datos es independiente a los Endian que
ocupen los sistemas operativos, por ejemplo se podría copiar desde un Big-Endian a un Little-
Endian.

2.3. Comando md_backup


El comando md_backup lleva a cabo una importante tarea, la de respaldar la Metadata de nuestra
instancia ASM, ¿recuerdan que sucedía en 10g si se perdía la instancia ASM? ☺

Pues bien en 11gr1 , viene lo que todo el mundo deseaba, poder respaldar está información , no es
un respaldo de base de datos, es un respaldo de la metadata que lleva a cabo la asociación con

Utilitario ASMCMD en 11gr1 Página 5 de 10


sus clientes, que en el fondo son las bases de datos, esta información queda respaldada en un
archivo físico.

Tal cual lo dice la ayuda , se pueden respaldar todos los DiskGroups de nuestra instancia ASM o
indicarle alguno en particular.

Ejemplo :
ASMCMD> md_backup /home/oracle/Respaldo_DiskGroup.txt
Disk group metadata to be backed up: DATA
Current alias directory path: ASM/DATAFILE
Current alias directory path: ORCL11G2/DATAFILE
Current alias directory path: ORCL11G2
Current alias directory path: ASM

Y el archivo generado , queda en la ruta

[oracle@oracle11g ~]$ ls -ltr Respaldo_DiskGroup.txt


-rw-r--r-- 1 oracle oinstall 21534 Apr 17 13:28 Respaldo_DiskGroup.txt
[oracle@oracle11g ~]$ pwd
/home/oracle
[oracle@oracle11g ~]$

Lo agradable del tema es que este archivo, contiene instrucciones para recrear toda la Metadata

[oracle@oracle11g ~]$ tail -20 Respaldo_DiskGroup.txt


'REDUNDANCY' => 'UNPROT',
'SYSTEM' => 'Y'
},
'10' => {
'DGNAME' => 'DATA',
'STRIPE' => 'COARSE',
'TEMPNAME' => 'BACKUPSET',
'REDUNDANCY' => 'UNPROT',
'SYSTEM' => 'Y'
},
'5' => {
'DGNAME' => 'DATA',
'STRIPE' => 'COARSE',
'TEMPNAME' => 'FLASHFILE',
'REDUNDANCY' => 'UNPROT',
'SYSTEM' => 'Y'
}
}
}
);
[oracle@oracle11g ~]$

O se le puede indicar el DiskGroup a este comando de respaldo

ASMCMD> md_backup /home/oracle/respaldo_DATA.txt -G DATA


Disk group metadata to be backed up: DATA
Current alias directory path: ASM/DATAFILE
Current alias directory path: ORCL11G2/DATAFILE
Current alias directory path: ORCL11G2
Current alias directory path: ASM

NOTA : SÓLO SE RESPALDAN LOS DISKGROUPS MONTADOS

Utilitario ASMCMD en 11gr1 Página 6 de 10


2.4. Comando md_restore
Si con el comando md_backup se puede llevar a cabo un respaldo de la metadata de un diskgroup
, el comando para realizar esa restauración es el comando md_restore.

He acá los ejemplos de cómo llevar a cabo la restauración

2.4.1. Restauración full mode


Este modo de restauración lleva a cabo una restauración completa del diskgroup, tal cual se
encontraba a la fecha del respaldo.

Por ejemplo vamos a restaurar un diskgroup existente, como va a dar un error porque el Diskgroup
existe, se procede a borrar y a restaurar.

Ejemplo :
ASMCMD> md_restore –b /home/oracle/Respaldo_DiskGroup.txt –t full -g DATA
Current Diskgroup metadata being restored: DATA
ASMCMD-09352: CREATE DISKGROUP failed
ORA-15018: diskgroup cannot be created
ORA-15030: diskgroup name "DATA" is in use by another diskgroup (DBD ERROR: OCIStmtExecute)
ASMCMD>

Se procede a borrar , teniendo en cuenta que esto puede suceder de forma fortuita, y se restaurará

Ejemplo :
ASMCMD> md_restore –b /home/oracle/Respaldo_DiskGroup.txt –t full -g DATA
Current Diskgroup metadata being restored: DATA
Diskgroup DATA created!
System template AUTOBACKUP modified!
System template ONLINELOG modified!
System template OCRBACKUP modified!
System template ASMPARAMETERBAKFILE modified!
System template ASM_STALE modified!
System template ASMPARAMETERFILE modified!
System template PARAMETERFILE modified!
System template OCRFILE modified!
System template CHANGETRACKING modified!
System template ARCHIVELOG modified!
System template DUMPSET modified!
System template TEMPFILE modified!
System template XTRANSPORT modified!
System template FLASHBACK modified!
System template DATAGUARDCONFIG modified!
System template DATAFILE modified!
System template CONTROLFILE modified!
System template BACKUPSET modified!
System template FLASHFILE modified!
Directory +DATA/ORCL11G2 re-created!
Directory +DATA/ASM re-created!
Directory +DATA/ASM/DATAFILE re-created!
Directory +DATA/ORCL11G2/DATAFILE re-created!

Con lo anterior ya tenemos de vuelta nuestro Diskgroup

SQL> select group_number, name , type from v$asm_diskgroup;

GROUP_NUMBER NAME TYPE


------------ ------------------------------ ------
1 DATA EXTERN

Utilitario ASMCMD en 11gr1 Página 7 de 10


2.4.2. Restauración nodg mode
Este modo restaura los atributos , templates y los alias de los directorios desde el respaldo , en un
diskgroup existente.

Ejemplo :
ASMCMD> md_restore /home/oracle/Respaldo_DiskGroup.txt --nodg -G DATA
Current Diskgroup metadata being restored: DATA
System template AUTOBACKUP modified!
System template ONLINELOG modified!
System template OCRBACKUP modified!
System template ASMPARAMETERBAKFILE modified!
System template ASM_STALE modified!
System template ASMPARAMETERFILE modified!
System template PARAMETERFILE modified!
System template OCRFILE modified!
System template CHANGETRACKING modified!
System template ARCHIVELOG modified!
System template DUMPSET modified!
System template TEMPFILE modified!
System template XTRANSPORT modified!
System template FLASHBACK modified!
System template DATAGUARDCONFIG modified!
System template DATAFILE modified!
System template CONTROLFILE modified!
System template BACKUPSET modified!
System template FLASHFILE modified!

2.4.3. Restauración newdg mode


Este modo de restauración permite sobreescribir un nombre de diskgroup, disco y todos sus grupos
de falla, pero , mantiene todos los atributos, templates y alias de los directorios desde el backup.

Esto no quiere decir que mientras exista un Diskgroup nosotros carguemos uno nuevo con el
mismo comando , esto sólo se hace si el original no existe y queremos cargar desde un respaldo y
recrearlo con otro nombre

ASMCMD> md_restore /home/oracle/respaldo_DATA.txt --newdg -o 'DATA:OTRODG' -G DATA


Current Diskgroup metadata being restored: DATA
Current Diskgroup name replace by: OTRODG
Diskgroup OTRODG created!
System template AUTOBACKUP modified!
System template ONLINELOG modified!
System template OCRBACKUP modified!
System template ASMPARAMETERBAKFILE modified!
System template ASM_STALE modified!
System template ASMPARAMETERFILE modified!
System template PARAMETERFILE modified!
System template OCRFILE modified!
System template CHANGETRACKING modified!
System template ARCHIVELOG modified!
System template DUMPSET modified!
System template TEMPFILE modified!
System template XTRANSPORT modified!

Utilitario ASMCMD en 11gr1 Página 8 de 10


System template DATAGUARDCONFIG modified!
System template FLASHBACK modified!
System template DATAFILE modified!
System template CONTROLFILE modified!
System template BACKUPSET modified!
System template FLASHFILE modified!
Directory +OTRODG/ORCL11G2 re-created!
Directory +OTRODG/ASM re-created!
Directory +OTRODG/ASM/DATAFILE re-created!
Directory +OTRODG/ORCL11G2/DATAFILE re-created!

Utilitario ASMCMD en 11gr1 Página 9 de 10


3. Referencias
http://download.oracle.com/docs/cd/B19306_01/server.102/b14215/asm_util.htm#SUTIL016

ASMCMD - ASM command line utility Doc ID: 332180.1

ASMCMD – New commands in 11gR1 [ID 451900.1]

ASMCMD – Utilitario para trabajar con instancias ASM

Utilitario ASMCMD en 11gr1 Página 10 de 10

Vous aimerez peut-être aussi