febrero, 21, 2011
Como mover datafiles de Filesystem a ASM
Reciban estimados lectores una vez más un cordial saludo y adentrémonos en un tip que nos ayudará trasladar datafiles de filesystems a ASM.
La tecnología de almacenamiento ASM ( Automatic Storage Management ) emergió en Oracle Database Server 10g cautivando a los DBAs y clientes por sus diversas versatilidades de acuerdo a ciertas necesidades.
Las probidades y ventajas que ofrece ASM son muchas. En este articulo solo haremos referencia a una en un escenario para Oracle RAC ( Real Application Clusters ) 10g/11g.
Me recuerdo hace algunos cuantos años cuando la idea de tener un cluster de base de datos en Oracle era todo un desafío no solo por la configuración y recursos de hardware sino también por la complejidad de administración de la solución. El producto Oracle RAC tuvo su aparición en el mercado en la versión 9i del Oracle Database Server. Para ese entonces el storage compartido generalmente se llevaba a cabo en Raw Devices. Cabe destacar que los Raw Devices son complejos para administrar teniendo como motivo alguna de las siguientes razones:
- las particiones no puede ser redimensionadas una vez establecidas
- Las mismas se visualizan de modo “unsed” space y pudieran ser inadvertidamente ser sobreescritas o utilizadas por un algún administrador que no este consciente del contenido de estas causando perdida de datos
- Los archive logs de la base de datos ( BBDD ) no pueden estar alojados en Raw Devices por lo poco flexible de su constitución, etc, etc….
Uno de tantos nuevos features con los cuales se mostro Oracle Database Server 10g al mercado era posibilidad de guardar el storage de un RAC en ASM. Esto facilitó enormemente las complejidades de establecimiento, visualización y en general de la administración del storage para la mencionada solución.
Hoy en día con las versiones de Oracle Database Server 10g y Oracle Database Server 11g es frecuente ver implementadas las BBDD en ASM para estar en línea con la escabilidad del producto y tomar partido de las ventajas que ofrece estar en dicha capa de storage. Uno de los tantos escenarios por los cual se desearía utilizar ASM podría ser para trasladar una BBDD de modo Single Instance a RAC con storage en ASM.
A continuación detallamos el procedimiento para llevar a cabo esta operación.
- Aplicar shutdown a la BBDD ( shutdown immediate ) y luego colocarla en modo “mount” (startup mount )
- Crear un Disk Group en ASM en cual se tenga destinado alojar los respectivos datafiles a trasladar ( Ej.: +DiskGroup1_DATA )
- Los datafiles poseen números únicos dentro del diccionario de la BBDD (select FILE_ID, FILE_NAME from dba_data_files ). Determine el número del o de los datafiles a trasladar
- Realice el traslado de la siguiente forma ( $ rman target=/
RMAN> copy datafile 7 to ‘+DiskGroup1_DATA′; ) - Actualice el controlfile con la nueva locación ( RMAN> switch datafile 7 to copy; )
- Verifique los traslados con la siguiente consulta:
- (SQL> select name from v$datafile )
- Aperture la BBDD:
- SQL> Alter database open;
Realice los pasos 4 y 5 con cada uno de los datafiles a trasladar y a través de este procedimiento usted podrá reubicar datafiles a la internalidad de una capa de storage en ASM.
Si la BBDD esta online, el tablespace a reubicar deberá colocarse “offline” ( Ej.: SQL> alter tablespace users offline ) y se procederá a realizar los pasos 4 y 5 para sus respectivos datafiles. Posterior a la operación el tablespace deberá colocarse en estado “online” ( Ej.: SQL> alter tablespace users online )
Estimados lectores no queda más que despedirme hasta la próxima ocasión… So long…
Joel Pérez
Senior DBA Oracle
OTN Expert & Oracle ACE

RSS a los comentarios de esta entrada.

