Professional Documents
Culture Documents
ASM: Autamatic Storage Managment. Los grupos de discos (disk groups) son usados para guardar los datafile.
Oracle disk groups es una coleccin de discos que ASM administra como una unidad. Los datafiles se distribuyen entre los discos que componen el disk Group. Si necesitamos eliminar o agregar un disco, ASM distribuye los datafiles sin necesitar bajar la base (No hay downtime). ACFS : Automatic Storage Management Cluster File System. Es una tecnologa de file system que extiende a ASM para el uso de de RAC ADVM: The Oracle ASM Dynamic Volume Manager. Provee el servicio de administracin de disco y acceso a los cliente. ASM se puede administrar con : SQL-PLUS, ASMCMD, EM y ASM Configuration Assistant
-Los nombres de los archivos de un grupo de discos -La ubicacin de extensiones del disco del grupo de archivos de datos -Un redo log que graba automticamente los cambios en los bloques de discos.
Oracle ASM puede ser puesta en cluster utilizando Oracle Clusterware. El cluster ASM es similar al RAC, en cada nodo va a existir una instancia ASM. Una instancia ASM puede albergar varias instancias de bases de datos ASM Disk Groups: Un Disk Group contiene un conjunto de discos y es el objeto fundamental de ASM. Cada grupo de discos contiene los metadatos que se requiere para la gestin de espacio en el grupo de discos. Los componentes del grupo de discos pueden ser discos, archivos, y la asignacin de unidades. Mirroring and Failure Groups ASM soporta los siguientes tipos redundancia: Normal for 2-way mirroring High for 3-way mirroring External RAID de disco por hardware ( NO no es implementado por ASM) La redundancia de ASM se puede especificar por archivo y NO por disco como con RAID. Por ejemplo podemos tener 2 archivos en un grupo de discos y uno sea redundante y el otro no. Para lograr esto Oracle crea una copia del archivo espejado en otro grupo de discos y si falla el grupo de discos principal no perdemos los datos gracias a que el archivo est almacenado en un grupo de disco diferente. Cuando se define un grupo de discos se define el grupo de discos redundante, Una vez que se creo el grupo de discos y su redundancia ya no se puede alterar. Si a la hora de crear un grupo de discos omitimos definir del grupo de discos de falla ASM automticamente nos asigna el un grupo un grupo de discos de falla. Requerimientos de redundancia: -Normal redundancy disk groups requiere al menos 2 grupos de discos de fallas - High redundancy disk groups requiere al menos 2 grupos de discos de fallas - External redundancy NO requiere grupos de discos de fallas Oracle ASM Disks: ASM Disk son: los dispositivos de almacenamiento o discos que componene a un disk Group. Ejemplos de discos ASM de Oracle incluyen: -Particiones o disco de un RAID.
-Particiones de un disco u disco -Un volumen lgico - Network-attached files NFS Cuando se agrega un disco a un grupo de discos se le puede asignar un nombre al disco o no. Si no le asignamos un nombre Oracle automticamente le agrega uno. El nombre que ASM le asigna no tiene nada que ver con el que utiliza el SO. Cuando tenemos una instancia ASM en cluster y agregamos un disco hay que verificar que todos los nodos puedan acceder a ese disco. ASM distribuye los archivos de forma proporcional entre los discos que componen el Group disk manteniendo el I/O y el uso balanceado, Por este motivo se recomienda que todos los ASM Disk pertenezcan a discos fsicos diferentes. Oracle ASM Files: Cada ASM file es guardado en un disk Group. Los tipos de archivos que se pueden guardar son: - Control files - Data files, temporary data files, and data file copies - SPFILEs - Online redo logs, archive logs, and Flashback logs - RMAN backups - Disaster recovery configurations - Change tracking bitmaps - Data Pump dumpsets
Capitulo 3
Administering Oracle ASM Instances
Oracle ASM 11g es instalado con Oracle grid infrastructure . Slo puede haber una instancia ASM por host y debe estar en diferente home que la BD. Operating With Different Releases of Oracle ASM and Database Instances
Oracle ASM 11g R2 soporta desde Oracle database 10 g a Oracle database 11gr2. Por compatibilidad entre ASM y clusterware la version de clusterware debe ser mayor o igual a la de ASM. Cuando se usan diferentes tipo de versiones entre ASM y la DB , ASM solo soporta la versin ms antigua. Por ejemplo si tenemos ASM 11g2 e instalamos Oracle db 10.1 la nica versin de DB que va a soportar ASM va a ser la 10.1 La vista que se utiliza para ver que versin de DB soporta ASM es V$ASM_CLIENT.
Configuring Initialization Parameters for Oracle ASM Instances Para ver como se instala ASM leer Oracle Grid Infrastructure Installation Guide Los archivos de control (spfile) pueden ser compartidos para todo los nodos o pueden ser creaos para cada nodo. Para que sea un solo spfile para todos los nodos deben poder acceder al spfile . Para poder acceder el spfile debe estar en un disk Group o un shared raw device o un cluster file system. La recomendacin de Oracle es que se ponga en un disk Group.
La secuencia de arranque de ASM es: 1) La ubicacin del archivo de parmetros de inicializacin especificado en la red Plug and Play (GPnP) perfil. 2) Si la ubicacin no se especific en GPnP profile, entonces el orden es: a) SPFILE in the Oracle ASM instance home For example, the SPFILE for Oracle ASM has the following default path in the Oracle grid infrastructure home in a Linux environment: $ORACLE_HOME/dbs/spfile+ASM.ora b. PFILE in the Oracle ASM instance home
Las herramientas que se tiene para administrar ASM son: - SQL*Plus, - Oracle Enterprise Manager - ASMCA - ASMCMD commands. Backing Up, Copying, and Moving an Oracle ASM Initialization Parameter File Con ASMCMD se puede copiar, mover y backupear el spfile Los comandos utilizados son: spbackup, spcopy y spmove Otra alternativa para copiar el spfile es utilizar los comandos de S.O. Despus de mover el spfile se debe inicializar la instancia con la nueva ubicacin del spfile. Cuando se mueve un spfile despus de un upgrade a undisk Group debes considerar la compatibilidad que el disk Group.
Para crear el SPFILE en un disk group, hay que seguir los siguientes pasos: 1. Connect to the Oracle ASM instance. For example: $ sqlplus / as sysasm 2. Crear el SPFILE en un disk group que tenga COMPATIBLE.ASM set to 11.2 con el comando SQL CREATE SPFILE . SQL> CREATE SPFILE = '+DATA/asmspfile.ora' FROM PFILE = '$ORACLE_HOME/dbs/asmspfile.ora'; The CREATE SPFILE statement also updates the Grid Plug and Play (GPnP) profile. Para ver la ubicacin del archivo (GPnP) se utiliza el comando spget de ASMCMD 3. Reiniciar la instancia ASM para que lea de la nueva ubicacin del SPFILE. Setting Oracle ASM Initialization Parameters Para setear los parmetros de inicializacin se utilizan las siguientes herramientas: - ASMCA - EM - SQL PLUS El parmetro MEMORY_TARGET es utilizado para que Oracle administre automticamente la SGA . El parmetro MEMORY_MAX_TARGET es el mximo que puede alcanzar el parmetros MEMORY_TARGET . MEMORY_MAX_TARGET y MEMORY_TARGET son anlogos a los parmetros de la DB SGA_MAX_SIZE y SGA_MAX_TARGET. Si el MEMORY_TARGET es seteado en 0 (ALTER SYSTEM SET MEMORY_TARGET=0) la SGA de ASM es administrada manualmente. Esto no es recomendado por Oracle. El valor mnimo para MEMORY_TARGET es 256 M
Oracle ASM Parameter Setting Recommendations ASM_DISKGROUPS: Especifica la lista de grupos de discos que ASM monta al iniciar. ASM_DISKSTRING: Se utiliza para buscar los discos en dertermindado directorio. Por ejemplo si queremos que ASM descubra todos los disco que estan en /dev/rdsk/mydisks/ debemos esterar el parmetro as /dev/rdsk/mydisks/* Este parmetro puede utilizar comodines como * o ? Por defecto este parametro est puesto en NULL y busca todos los discos candidatos a montar. ASM_POWER_LIMIT: Este parmetro puede tener un valor de 0 a 11. Con el valor 0 especificamos que no se haga el rebalanceo. Cuanto mas alto sea el valor la operaron de rebalanceo va a ser ms prapuida , funciona parecido al comando nice de linux. ASM_PREFERRED_READ_FAILURE_GROUPS: Este parmetro solo se utiliza en cluster . Cada nodo puede tener un grupo de disco de falla preferido . DIAGNOSTIC_DEST Este parmerto indica donde se va a guardar los logs de diagnostico . Por defecto es $ORACLE_BASE/diag/asm/+asm/+ASM pero lo podemos cambiar a
piachere.
INSTANCE_TYPE Nos dice que tipo de instancia es . Como estamos en una instancia ASM debe estar seteado con ASM PROCESSES Este paremtro especifica la cantidad de procesos que puede abrir la instancia ASM. Para calcular el valor correcto se utiliza la siguiente formula 50 + 50 *n donde n es la cantidad de instancias conectadas.
Managing Oracle ASM Instances Administering Oracle ASM Instances with Server Control Utility: Ac se refiere al comando srvctl y su funciona es cuando la instancia ASM est en RAC. Sirve para bajar , subir , habilitar , deshabilitar, mostrar status, crear y eliminar servicios. Starting Up an Oracle ASM Instance La inicializacin de la instancia ASM es similar la inicializacin de una base de datos normal con algunas diferencias. Si es una instancia ASM simple el ORACLE_SID es +ASM pero si es en rac es +ASMnode_numeber. Para acceder a la instancia hay que setear el $ORACLE_HOME apuntando al grid infrastructure y el ORACLE_SID que corresponda. Para verificar que efectivamente estas conectado a la instancia ASM se consulta el parmetro INSTANCE_TYPE que debe tener el valor ASM Para iniciar la instancia hay que conectarse por SQL/PLUS y utilizar el comando startup. Los parmetros que se pueden utilizar son: FORCE, MOUNT, NOMOUNT, RESTRICT Ejemplo: SQLPLUS /NOLOG SQL> CONNECT SYS AS SYSASM Enter password: sys_password Connected to an idle instance. SQL> STARTUP ASM instance started Total System Global Area 71303168 bytes Fixed Size 1069292 bytes Variable Size 45068052 bytes ASM Cache 25165824 bytes ASM disk groups mounted RESTRICT modo sirve para hacer mantenimiento. Cuando queremos hacer un rebalanceo de los disck Group y no queremos que nuevas conexiones interfieran en el proceso se utiliza esta opcin. Si nuestro ambiente es en cluster y utilizamos esta opcin la instrancia ASM se va a iniciar solo en el nodo que ejecutamos la operacin No permitiendo que se incie en el resto de los nodos del cluster. Shutting Down an Oracle ASM Instance Normal: Oracle espera a que todos los sql que se estan ejecutando terminen y que las sesiones se desconecten. IMMEDIATE or TRANSACTIONAL: Oracle solo espera a que los SQL que esten en progreso y luego baja la instancia. ABORT: Oracle baja directamente la instancia sin esperar nada. Nota: todas estas opciones abortan si hay alguna base de datos conectada.
La clusula name habilita a asignarle un nuevo nombre al disco diferente al que tiene el SO. AU_SIZE : especifica el tamao bloque de disco ( parecido al blocksize del tablespace ) Para ver el AU_SIZE se utiliza la vista V$ASM_DISKGROUP Ejemplo de creacin de disco con redundancia externa: CREATE DISKGROUP dgroup_01 EXTERNAL REDUNDANCY DISK '$ORACLE_HOME/disks/c*';
Specifying the Allocation Unit Size Oracle recomienda que AU_SIZE se setee en 4MB. Los beneficios de setarlo asi son: -Reduce el esfuerzo de administracin de la SGA -reduce los tiempos de startup. Entre otros. El AU_SIZE se especifica al momento de crear el disco y luego ya no se puede volver a cambiar. Oracle ASM no permite agregar o tener discos en un mismo disk Group con diferentes tamaos de sector. El SECTOR_SIZE es seteado al momento de crear el disk Group. Para ver los atributos de los disk groups utilizan las vistas V$ASM_ATTRIBUTE , V$ASM_DISKGROUP o el comando lsattr Ejemplo:
SQL> SELECT name, value FROM V$ASM_ATTRIBUTE WHERE name = 'sector_size' AND group_number = 1; NAME VALUE --------------------------- ----------------------sector_size 512 SQL> SELECT group_number, sector_size FROM V$ASM_DISKGROUP WHERE group_number = 1; GROUP_NUMBER SECTOR_SIZE ------------ ----------1 512
Nombre
V$ASM_ALIAS
Descipcin
Contiene los nombre de los alias de cada disk group
Muestra una fila para cada atributo definido. Adems de los atributos especificados por diskGroup CREATE y ALTER diskGroup, la vista puede mostrar otros atributos que se crean de forma automtica. Los atributos se muestra solamente para los grupos de discos donde COMPATIBLE.ASM se ajusta a 11,1 o superior ..
V$ASM_ATTRIBUTE En oracle ASM instance muestra las bases que estan conectadad. En Oracle database musetra si la instancia ASM esta abierta o no
Contiene informacion de los disk groups Muestra informacin estadistica de I/O de cada cliente ASM Muestra la misma informacin que la vista V$ASM_DISK pero no ejecuta oracle ASM Discovery V$ASM_DISK_STAT V$ASM_DISKGROUP Describe los disk group (nombre, numero, entre otras) Da la misma informacin que V$ASM_DISKGROUP pero nno se ejecuta oracle ASM discovery V$ASM_DISKGROUP_STAT V$ASM_FILE Muestra cada archivo que esta guardado en cada disk group Muestra las operaciones que se estan ejecutando sobre los disk group V$ASM_OPERATION Contains one row for every template present in every disk group V$ASM_TEMPLATE mounted by the Oracle ASM instance. Contiene la informacion de los usuarios conectados y sus V$ASM_USER operaciones. Contains the creator for each Oracle ASM File Access Control V$ASM_USERGROUP group. Contains the members for each Oracle ASM File Access Control V$ASM_USERGROUP_MEMBER group
Ejemplos:
SQL> SELECT dg.name AS diskgroup, SUBSTR(a.name,1,18) AS name, SUBSTR(a.value,1,24) AS value, read_only FROM V$ASM_DISKGROUP dg, V$ASM_ATTRIBUTE a WHERE dg.name = 'DATA' AND dg.group_number = a.group_number; DISKGROUP NAME VALUE READ_ONLY ------------------------ ------------------------ ----------------------------DATA disk_repair_time 3.6h N DATA au_size 4194304 Y DATA sector_size 512 Y DATA compatible.asm 11.2.0.0.0 N DATA compatible.rdbms 11.2.0.0.0 N DATA compatible.advm 11.2.0.0.0 N DATA cell.smart_scan_capable FALSE N DATA access_control.enabled TRUE N DATA access_control.umask 002 N ...
database_compatibility AS db_compat FROM V$ASM_DISKGROUP; DISKGROUP ASM_COMPAT DB_COMPAT ----------------- ------------ ---------DATA 11.2.0.0.0 11.2.0.0.0 FRA 10.1.0.0.0 10.1.0.0.0 SQL> SELECT SUBSTR(d.name,1,16) AS asmdisk, d.mount_status, d.state, dg.name AS diskgroup FROM V$ASM_DISKGROUP dg, V$ASM_DISK d WHERE dg.group_number = d.group_number; ASMDISK MOUNT_S STATE DISKGROUP ----------------------------------------DATA_0001 CACHED NORMAL DATA DATA_0007 CACHED NORMAL DATA DATA_0000 CACHED NORMAL DATA DATA_0008 CACHED NORMAL DATA DATA_0005 CACHED NORMAL DATA DATA_0002 CACHED NORMAL DATA DATA_0004 CACHED NORMAL DATA DATA_0006 CACHED NORMAL DATA DATA_0003 CACHED NORMAL DATA FRA_0005 CACHED NORMAL FRA FRA_0004 CACHED NORMAL FRA FRA_0000 CACHED NORMAL FRA FRA_0009 CACHED NORMAL FRA FRA_0011 CACHED NORMAL FRA
Capitulo 12
About ASMCMD
Es el comand-line que administra la instancia ASM. Directory: El comnad-line ASMCMD para trabajar en los directorios es muy similar al de Linux. Por ejemplo: si queremos movernos de un directorio a otro utlizamos cd, si queremos listar los archivos y directorios utilizamos ls. Ej: ASMCMD> cd +data/orcl/CONTROLFILE ASMCMD> ls Current.256.541956473 Current.257.541956475 Crear una carpeta: ASMCMD> mkdir +data/orcl/mydir Si iniciamos ASMCMD con el parmetro p nos muestra en que ubicacin estamos parados Ej: ASMCMD p ASMCMD [+] > cd data/orcl ASMCMD [+data/orcl] >
Comodines:
ASMCMD tambin utiliza los mismos comodines que utiliza Linux. EJ:
ASMCMD [+] > cd +data/orcl/*FILE ASMCMD-08005: +data/orcl/*FILE: ambiguous ASMCMD [+] > cd +data/orcl/C* ASMCMD [+data/orcl/CONTROLFILE] > ASMCMD [+] > ls +fra/orcl/A% 2009_07_13/ 2009_07_14/ ASMCMD [+] > ls +fra/orcl/ARCHIVELOG/2009% +fra/orcl/ARCHIVELOG/2009_07_13/: thread_1_seq_3.260.692103543 thread_1_seq_4.261.692108897 thread_1_seq_5.262.692125993 thread_1_seq_6.263.692140729 thread_1_seq_7.264.692143333 +fra/orcl/ARCHIVELOG/2009_07_14/: thread_1_seq_8.271.692158265 thread_1_seq_9.272.692174597 ASMCMD [+] > ls data/orcl/* +data/orcl/CONTROLFILE/: Current.260.692103157 +data/orcl/DATAFILE/: EXAMPLE.265.692103187 SYSAUX.257.692103045 SYSTEM.256.692103045 UNDOTBS1.258.692103045 USERS.259.692103045 +data/orcl/ONLINELOG/: group_1.261.692103161 group_2.262.692103165 group_3.263.692103169 +data/orcl/PARAMETERFILE/: spfile.266.692103315 +data/orcl/TEMPFILE/: TEMP.264.692103181 spfileorcl.ora
asmcmd [-v] [ -a connection_type ] [-p] -V -v -a -p despliega la versin del asmcmd despliega informacin adicional para ayudar a los usuarios a diagnosticar problemas. es para conectarse con determinados privilegios. Puede ser SYSASM o SYSDBA. Por defecto es SYSASM. Muestra el directorio donde estamos parados en el prompt.
Ejemplos : asmcmd -a sysasm $ asmcmd -V asmcmd version 11.2.0.1.0 $ Running ASMCMD in Noninteractive Mode Para ejecutar asmcmd en forma no interactiva simplemente basta con escribir asmcmd comando yu opecion. Un ejemplo:
$ asmcmd ls -l State Type Rebal Name MOUNTED NORMAL N DATA/ MOUNTED NORMAL N FRA/
Getting Help Es similar al man. Una vez quer accedimos al prompt escribimos help y el nombre del comando que queremos consultar. Ejemplo:
ASMCMD [+] > help startup startup [--nomount] [--restrict] [--pfile <pfile.ora>] Start the ASM instance. [--nomount] specifies the nomount option. [--restrict] start the instance in restricted mode. [--pfile <pfile.ora>] specifies the location of the pfile.
dsget: Devuelve el valor de diskstring que es utilizado por ASM y sus clientes. dsset: Modifica el valor de diskstring que es utilizado por ASM y sus clientes. lsct : Lista informacin de los cliente ASM actuales. lsop : Lista las operacin que se estn realizando en este momento en una instancia
ASM o en un diskgroup. lspwusr : Enumera los usuarios desde un archivo de contraseas de Oracle ASM. orapwusr: agrega, elimina o cambia usuarios que tienen password file. Shutdown: baja una instancia ASM spbackup: respalda el SPFILE de ASM. spcopy : Copia el SPFILE de ASM. spget: devuelve la ubicacin del SPFILE de ASM. spmove: mueve el SPFILE de ASM . spset : setea la ubicacin del SPFILE de ASM startup : inicia una instancia ASM. ASMCMD File Management Commands
Changes the current directory to the specified directory. Enables you to copy files between disk groups on a local instance and remote instances. Displays the total disk space occupied by files in the specified Oracle ASM directory and all of its subdirectories, recursively. Lists the paths of all occurrences of the specified name (with wildcards) under the specified directory. Lists the contents of an Oracle ASM directory, the attributes of the specified file, or the names and attributes of all disk groups. Lists the open files. Creates an alias for system-generated filenames. Creates Oracle ASM directories. Displays the path of the current Oracle ASM directory. Deletes the specified Oracle ASM files or directories. Deletes the specified alias, retaining the file that the alias points to.
ASMCMD Disk Group Management Commands chdg chkdg dropdg iostat lsattr lsdg lsdsk lsod md_backup md_restore mkdg mount offline online rebal remap setattr mount agrega , elimina o rebalance un diskgroup. chequea o repara un disk group. elimina a disk group. depliega estadistica de I/O del disco lista los atributos de un disk group. lista los disk groups y su informacin. Lista disks Oracle ASM disks. Lista los dispositivos abiertos. crea un a backup de la metadata los disk groups montados. recupera un disk groups de un backup a partir de la metadata. crea un disk group. monta un disk group. Offlines a disk or a failure group. Onlines a disk or a failure group. Rebalances a disk group. Relocates data in a range of physical blocks on a disk. Sets attributes in a disk group. Dismounts a disk group.
ASMCMD Template Management Commands chtmpl lstmpl mktmpl rmtmpl Changes the attributes of a template. Lists all templates or the templates for a specified disk group. Adds a template to a disk group. Removes a disk group template.
ASMCMD File Access Control Commands chgrp chmod ghown groups grpmod lsgrp lsusr mkgrp mkusr passwd rmgrp rmusr cambia el grupo de usuario de un archive o una conjunto de archives. cambia los pertmisos de un archive o un grupo de archives. cambia el propietario de una archive o un grupo de archives.. enumera los grupos a los que pretence un usuario agrega o elimina un suario de algun grupo. enumera los grupos. enumera los usaurios de un disk group. crea grupos de usuarios. agrega un usuario a disk group. cambia el password de un usuario. elimina un user group. elimina un usuario de un disk group.
ASMCMD Volume Management Commands volcreate voldelete voldisable volenable volinfo volresize volset volstat Creates an Oracle ADVM volume in the specified disk group. Deletes an Oracle ADVM volume. Disables Oracle ADVM volumes in mounted disk groups. Enables Oracle ADVM volumes in mounted disk groups. Displays information about Oracle ADVM volumes. Resizes an Oracle ADVM volume. Sets attributes of an Oracle ADVM volume in mounted disk groups. Reports volume I/O statistics.