Aunque el documento al que me estoy refiriendo en esta ocasion esta en ingles, es una buena ayuda para cuando te topes con estas situaciones. Este documento se encuentra en communities de Oracle , asi que debes de tener acceso a MOS.
RMAN Recovery Scenarios
Un Blog para principiantes en Oracle, y como si no fuera obvio por el titulo esta en español!
martes, 28 de febrero de 2012
miércoles, 22 de febrero de 2012
Conectarte con ssh sin contraseña entre dos nodos
Una de las cosas mas comunes que tienes que hacer cuando trabajas en un ambiente RAC es conectarte entre tus nodos, sobre todo para establecer los mismos estandares entres ambos.
Pero con lo que te topas cuando estas haciendo esto, es que cada vez que haces una sesion de ssh , tienes que introducir tu password.
Lo primero que te tienes que asegurar es que en /etc/ssh/sshd_config, las siguientes entradas se encuentren y esten habilitadas en tu configuracion del servidor de ssh, :
oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle
oracle $ cat /etc/ssh/sshd_config | egrep "RSAAuthentication|PubkeyAuthentication" RSAAuthentication yes PubkeyAuthentication yes
Si las entradas no se encontraban habilitadas o las tuviste que agregar, tienes que reiniciar tu servidor de ssh
oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle oracle $ /etc/init.d/sshd restart Stopping ssh: [ OK ] Starting ssh: [ OK ]
De igual manera, si el directorio .ssh no se encuentra, crealo de la siguiente manera
oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle oracle $ mkdir ~/.ssh oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle oracle $ chmod 700 ~/.ssh oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle oracle $ cd ~/.ssh
Ahora lo que hay que crear es un par de llaves, llamadas publicas/privadas, estas llaves son las que te vas a permitir hacer tu conexion via ssh sin un password
oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_rsa. Your public key has been saved in /home/oracle/.ssh/id_rsa.pub. The key fingerprint is: 45:b5:fd:0f:40:35:3e:6e:c6:70:1c:9d:9b:dd:fc:9e oracle@servidor1.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ ls id_rsa* id_rsa id_rsa.pub
Una vez que creaste tu par de llaves, hay que agregar la llave publica a tu segundo nodo, la manera que lo hago yo, es copiar al segundo nodo un archivo temporal de la llave publica
oracle@servidor2.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ scp servidor1.oracleenespanol.blogspot.com:/home/oracle/.ssh/id_rsa.pub ./id_rsa.pub.tmp Password: id_rsa.pub 100% 401 0.4KB/s 00:00 oracle@servidor2.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ ls *.tmp id_rsa.pub.tmp
Luego la anexo al archivo de llaves autorizadas, pero antes de hacer esto , creo un respaldo de este archivo, no vaya a ser que la Ley de Murphy se presente :)
oracle@servidor2.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ ls authorized_keys authorized_keys oracle@servidor2.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ scp -p authorized_keys authorized_keys.22Feb2012 oracle@servidor2.oracleenespanol.blogspot.com [DBATEST] /home/oracle/.ssh oracle $ cat id_rsa.pub.tmp >> authorized_keys
Ya que hiciste lo anterior , vas a poder hacer una sesion de ssh entre tus dos nodos sin que te este requiriendo un password.
martes, 21 de febrero de 2012
RAC: Cambiar password para el usuario sys en ASM
Una de las situaciones que muchas empresas se enfrentan es que cuando renuncia un DBA de tu equipo, normalmente por seguridad y en un corto plazo te das a la tarea de cambiar los passwords de superusuario.
Como sabes, cambiar el password de un usuario de sys en una Base de Datos es lo mismo que cambiar el password a cualquier usuario.
TESTDB > alter user sys identified by oracle; User altered.
Pero cuando estas manejando ASM, no lo puedes cambiar de esta manera. La unica manera de cambiar el password es con la utileria orapwd.
Lo primero que tenemos que hacer es configurar las variables de ambiente ORACLE_HOME y ORACLE_SID para que apunten a nuestra instancia de ASM, recuerda que esto es con el usuario de grid.
De la misma manera, te tienes que asegurar que el valor de remote_login_passwordfile sea EXCLUSIVE, si este no lo es, asegurate que asi sea , cambiando el valor de este en el spfile y reiniciando tu instancia de ASM.
Cambiate al directorio $ORACLE_HOME/dbs y renombra el archivo de password
Por ultimo con el siguiente comando, vas a recrear el archivo de tipo password , con la contraseña que hayas escogido
ORACLE_HOME=/mount/oracle/grid/11.2.0.2v3 ORACLE_SID=+ASM1 PATH=$PATH:$ORACLE_HOME/bin export ORACLE_HOME ORACLE_SID PATH
De la misma manera, te tienes que asegurar que el valor de remote_login_passwordfile sea EXCLUSIVE, si este no lo es, asegurate que asi sea , cambiando el valor de este en el spfile y reiniciando tu instancia de ASM.
grid@servidor1.oracleenespanol.blogspot.com root $ sqlplus SQL*Plus: Release 11.2.0.2.0 Production on Tue Feb 21 20:32:46 2012 Copyright (c) 1982, 2010, Oracle. All rights reserved. Enter user-name: /as sysdba Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production With the Real Application Clusters and Automatic Storage Management options +ASM1 >show parameter remote_login_passwordfile NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ remote_login_passwordfile string EXCLUSIVE
Cambiate al directorio $ORACLE_HOME/dbs y renombra el archivo de password
grid@servidor1.oracleenespanol.blogspot.com root $ cd $ORACLE_HOME/dbs grid@servidor1.oracleenespanol.blogspot.com root $ mv "orapw+ASM" "ASM.bu21Feb2012"
Por ultimo con el siguiente comando, vas a recrear el archivo de tipo password , con la contraseña que hayas escogido
orapwd file="orapw+ASM" password=<sys_password>
lunes, 20 de febrero de 2012
Maquina Virtual (VM) y Oracle 11gR2
Oracle tiene una maquina Virtual llamada Virtual Box, con esta herramienta, te puede ayudar para cuando te quieres evitar el proceso de instalacion del RDBMS y del sistema operativo.
Lo unico, es que este es un producto unicamente para desarrollo y no es soportado en un ambiente de produccion, pero para empezar todas las pruebas que quieras hacer es una manera rapida y eficiente de manejar una base de datos Oracle 11gR2
Oracle Virtual Box
Lo unico, es que este es un producto unicamente para desarrollo y no es soportado en un ambiente de produccion, pero para empezar todas las pruebas que quieras hacer es una manera rapida y eficiente de manejar una base de datos Oracle 11gR2
Oracle Virtual Box
miércoles, 15 de febrero de 2012
RAC y como Crear Manualmente Una Base de Datos Oracle 11gR2
Una de mis entradas mas populares al dia de hoy, ha sido la de como crear una base de datos en 11g. Ahora lo que vamos a hacer es como crear una base de datos manualmente en un ambiente RAC en 11g
Verificar Variable de Ambiente
Aqui tenemos que decidir el nombre que va a tener nuestra instancia y base de datos, aqui un ejemplo utilizando Korn shell, si utilizas C Shell, usa el comando setenv
Aqui esta un ejemplo de un archivo init para que arranques, este no es para nada uno a tener en produccion ya que ese tiene que ser revisado para las necesidades de la instancia, pero para nuestras pruebas, con este es mas que suficiente.Este archivo lo guarde en la siguiente ruta /mount/dba01/oracle/TESTDB/pfile/initTESTDB1.ora, tu lo puedes guardar en la ruta que a ti te sirva y lo puedas tener a la mano.
Conectarnos a la base de datos y crear el archivo de parametros binario a partir del archivo initTESTDB.ora
Nos vamos a conectar a la base de datos autenticandonos con el sistema operativo y una vez conectados vamos a crear el archivo binarios (spfile).
Crear Nuestra Base de Datos
Una vez que creamos nuestro archivo binario de parametros, vamos a levantar la base de datos en modo nomount
Ahora vamos a correr el siguiente SQL para crear nuestra base de datos.Tomando en cuenta que en ASM ya existen los siguientes directorios:
Correr scripts para crear las vistas del Diccionario de Datos
Una vez que la base de datos se haya creado, vamos a correr los siquientes cuatro scripts para crear las vistas y procedimientos del diccionario de datos, este es un paso obligatorio asi que no te lo saltes, catalog.sql,catproc.sql y catclust.sql deben de correr con el usuario sys y los encuentras en $ORACLE_HOME/rdbms/admin, el script pupbld.sql debe de correr con el usuario system y lo encuentras en el directorio $ORACLE_HOME/sqlplus/admin. Aqui un ejemplo de como correrlos:
Para asegurarme que los usuarios de sys y system usen a TEMP como su tablespace temporal , corro el siguiente comando
Hasta este momento, si seguiste mi previa entrada de como crear una base de Datos en Linux, todo es similar (hasta parte del mismo texto :) ), pero aqui es en donde empieza a cambiar la situacion.
Crear segundo hilo de Online Redo Logs y segundo Tablespace de Undo
En RAC, cada instancia necesita tener su propio set de online Redo logs y su propio tablespace de undo, por eso necesitamos crear para la segunda instancia este segundo set, y asi sucesivamente para cada instancia que vayas a tener en tu configuracion.
Archivo de Parametros en RAC
Otra de las cosas que cambia con respecto a una Base de Datos que no esta en RAC contra una que si esta en arquitectura RAC, es que hay ciertos parametros que es obligatorio que en todas las instancias sean iguales,en 11gR2 son los siguientes
Una de las cosas que te permite la arquitectura de RAC, es que cada instancia tenga su propio archivo de parametros.
Pero en mi caso, prefiero tener uno compartido, esto lo hago removiendo cualquier archivo de arranque que exista en $ORACLE_HOME/dbs/spfileTESTBn.ora (donde n es el numero de instancia)
Algo que debes de tener muy claro es que como vamos a tener un archivo de parametros compartido, la rutas fijas, (Que no pertenecen a ASM) tienen que ser iguales en todos tus nodos, como por ejemplo audit_file_dest.
Ya que removi cualquier archivo de parámetros que tenia, para cada instancia en su servidor en $ORACLE_HOME/dbs, voy a crear un archivo initTESTDBn.ora (n para el numero de instancia) que apunte a mi archivo de arranque binario compartido
Ahora voy a bajar la instancia TESTDB1 para despues subirla con el archivo de parametros en RAC
Ya que levantamos la instancia con los parametros necesarios de RAC, vamos a habilitar el segundo hilo de los online Redo Log
Y ahora volvemos a bajar la instancia TESTDB1
Añadir nuestra Base de Datos como Recurso al Clusterware
Si te has fijado, todo lo hemos trabajado en una sola instancia,para poder manejarlo con el Server Manager, vamos a utilizar una utileria llamada srvctl. En 11gR2 , se define una base de datos como un recurso en Oracle Clusterware, y cuando creamos una base de datos manual, esto se hace con la utileria srvctl.
Conclusion
Espero que estos pasos te sirvan el dia que no quieras utilizar el dbca para crear tu base de datos, esto te permite mas flexibilidad para la creacion de esta.
Verificar Variable de Ambiente
Aqui tenemos que decidir el nombre que va a tener nuestra instancia y base de datos, aqui un ejemplo utilizando Korn shell, si utilizas C Shell, usa el comando setenv
- variable ORACLE_SID
export ORACLE_SID=TESTDB1 - variable DB_NAME
export DB_NAME=TESTDB - variable ORACLE_BASE
export ORACLE_BASE='/mount/oracle' - variable ORACLE_HOME
export ORACLE_HOME='/mount/oracle/product/11.2.0.2v3' - variable PATH
export PATH=$ORACLE_HOME/bin:$PATH
Crear el archivo de parametros
Aqui esta un ejemplo de un archivo init para que arranques, este no es para nada uno a tener en produccion ya que ese tiene que ser revisado para las necesidades de la instancia, pero para nuestras pruebas, con este es mas que suficiente.Este archivo lo guarde en la siguiente ruta /mount/dba01/oracle/TESTDB/pfile/initTESTDB1.ora, tu lo puedes guardar en la ruta que a ti te sirva y lo puedas tener a la mano.
*.audit_file_dest ='/mount/oracle/dump01/TESTDB/adump' *.audit_trail ='db' *.compatible ='11.2.0' *.control_files='+ASM_DATA/TESTDB/CONTROLFILE/control01.ctl','+ASM_DATA/TESTDB/CONTROLFILE/control02.ctl' *.db_block_size =8192 *.db_name ='TESTDB' *.db_recovery_file_dest='+FRA_DATA' *.db_recovery_file_dest_size =2G *.diagnostic_dest ='/mount/oracle/dump01' *.cluster_database=FALSE *.log_archive_dest_1='LOCATION=+ASM_DATA/TESTDB/ARCHIVELOG' *.log_archive_format='%t_%s_%r.dbf' *.memory_target =1G *.open_cursors =300 *.processes =150 *.remote_listener='orclespdev1-scan.oracleenespanol.blogspot.com:1826' *.remote_login_passwordfile ='EXCLUSIVE' TESTDB1.instance_name = TESTDB1 TESTDB1.instance_number=1 TESTDB1.undo_tablespace='UNDOTBS1'
Conectarnos a la base de datos y crear el archivo de parametros binario a partir del archivo initTESTDB.ora
Nos vamos a conectar a la base de datos autenticandonos con el sistema operativo y una vez conectados vamos a crear el archivo binarios (spfile).
$ sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> CREATE SPFILE FROM PFILE = '/mount/dba01/oracle/TESTDB/pfile/initTESTDB1.ora';
Crear Nuestra Base de Datos
Una vez que creamos nuestro archivo binario de parametros, vamos a levantar la base de datos en modo nomount
SQL> startup nomount;
Ahora vamos a correr el siguiente SQL para crear nuestra base de datos.Tomando en cuenta que en ASM ya existen los siguientes directorios:
ASMCMD> pwd +ASM_DATA/TESTDB ASMCMD> ls ARCHIVELOG/ CONTROLFILE/ DATAFILE/ ONLINELOG/ PARAMETERFILE/ TEMPFILE/
CREATE database TESTDB USER SYS IDENTIFIED BY sys_password USER SYSTEM IDENTIFIED BY system_password MAXINSTANCES 32 MAXLOGHISTORY 10000 MAXLOGMEMBERS 5 MAXDATAFILES 2024 MAXLOGFILES 64 ARCHIVELOG LOGFILE GROUP 1 ( '+ASM_DATA/TESTDB/ONLINELOG/redo01a.log', '+ASM_DATA/TESTDB/ONLINELOG/redo01b.log' ) SIZE 100M, GROUP 2 ( '+ASM_DATA/TESTDB/ONLINELOG/redo02a.log', '+ASM_DATA/TESTDB/ONLINELOG/redo02b.log' ) SIZE 100M, GROUP 3 ( '+ASM_DATA/TESTDB/ONLINELOG/redo03a.log', '+ASM_DATA/TESTDB/ONLINELOG/redo03b.log' ) SIZE 100M CHARACTER SET UTF8 NATIONAL CHARACTER SET AL16UTF16 DATAFILE '+ASM_DATA/TESTDB/DATAFILE/system01.dbf' size 500M autoextend on next 100M maxsize 2000M extent management local SYSAUX datafile '+ASM_DATA/TESTDB/DATAFILE/sysaux01.dbf' size 100M autoextend on next 100M maxsize 2000M UNDO tablespace UNDOTBS1 datafile '+ASM_DATA/TESTDB/DATAFILE/undotbs1_01.dbf' size 500M autoextend on next 100M maxsize 1000M DEFAULT temporary tablespace TEMP tempfile '+ASM_DATA/TESTDB/TEMPFILE/temp01.dbf' size 100M autoextend on next 100M maxsize 1000M;
Correr scripts para crear las vistas del Diccionario de Datos
Una vez que la base de datos se haya creado, vamos a correr los siquientes cuatro scripts para crear las vistas y procedimientos del diccionario de datos, este es un paso obligatorio asi que no te lo saltes, catalog.sql,catproc.sql y catclust.sql deben de correr con el usuario sys y los encuentras en $ORACLE_HOME/rdbms/admin, el script pupbld.sql debe de correr con el usuario system y lo encuentras en el directorio $ORACLE_HOME/sqlplus/admin. Aqui un ejemplo de como correrlos:
TESTDB1 >CONNECT SYS AS SYSDBA spool catalog.log @/mount/oracle/product/11.2.0.2v3/rdbms/admin/catalog.sql spool off spool catproc.log @/mount/oracle/product/11.2.0.2v3/rdbms/admin/catproc.sql spool off spool catclust.log @/mount/oracle/product/11.2.0.2v3/rdbms/admin/catclust.sql spool off TESTDB1 >CONNECT SYSTEM Enter password: spool pupbld.log @/mount/oracle/product/11.2.0.2v3/sqlplus/admin/pupbld.sql spool off
Para asegurarme que los usuarios de sys y system usen a TEMP como su tablespace temporal , corro el siguiente comando
TESTDB1 >alter user sys temporary tablespace TEMP; User altered. TESTDB1 >alter user sys temporary tablespace TEMP; User altered.
Hasta este momento, si seguiste mi previa entrada de como crear una base de Datos en Linux, todo es similar (hasta parte del mismo texto :) ), pero aqui es en donde empieza a cambiar la situacion.
Crear segundo hilo de Online Redo Logs y segundo Tablespace de Undo
En RAC, cada instancia necesita tener su propio set de online Redo logs y su propio tablespace de undo, por eso necesitamos crear para la segunda instancia este segundo set, y asi sucesivamente para cada instancia que vayas a tener en tu configuracion.
TESTDB1 > CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE 2 '+ASM_DATA/TESTDB/DATAFILE/undotbs2_01.dbf' size 100M autoextend on next 100M maxsize 1000M 3 ONLINE 4 RETENTION NOGUARANTEE 5 BLOCKSIZE 8K 6 FLASHBACK ON; Tablespace created. TESTDB1 > ALTER DATABASE ADD LOGFILE THREAD 2 2 GROUP 4 ( 3 '+ASM_DATA/TESTDB/ONLINELOG/redo04a.log', 4 '+ASM_DATA/TESTDB/ONLINELOG/redo04b.log' 5 ) SIZE 100M; Database altered. TESTDB1 > ALTER DATABASE ADD LOGFILE THREAD 2 2 GROUP 5 ( 3 '+ASM_DATA/TESTDB/ONLINELOG/redo05a.log', 4 '+ASM_DATA/TESTDB/ONLINELOG/redo05b.log' 5 ) SIZE 100M; Database altered. TESTDB1 > ALTER DATABASE ADD LOGFILE THREAD 2 2 GROUP 6 ( 3 '+ASM_DATA/TESTDB/ONLINELOG/redo06a.log', 4 '+ASM_DATA/TESTDB/ONLINELOG/redo06b.log' 5 ) SIZE 100M; Database altered.
Archivo de Parametros en RAC
Otra de las cosas que cambia con respecto a una Base de Datos que no esta en RAC contra una que si esta en arquitectura RAC, es que hay ciertos parametros que es obligatorio que en todas las instancias sean iguales,en 11gR2 son los siguientes
COMPATIBLEAqui un ejemplo del init que construi para este ejercicio, llamado /mount/dba01/oracle/TESTDB/pfile/pfileTESTDB_RAC.ora
CLUSTER_DATABASE
CLUSTER_DATABASE_INSTANCES
CONTROL_FILES
DB_BLOCK_SIZE
DB_DOMAIN
DB_FILES
DB_NAME
DB_RECOVERY_FILE_DEST
DB_RECOVERY_FILE_DEST_SIZE
DB_UNIQUE_NAME
INSTANCE_TYPE (RDBMS or ASM)
PARALLEL_EXECUTION_MESSAGE_SIZE
REMOTE_LOGIN_PASSWORDFILE
UNDO_MANAGEMENT
*.audit_file_dest ='/mount/oracle/dump01/TESTDB/adump' *.audit_trail ='db' *.compatible ='11.2.0' *.control_files='+ASM_DATA/TESTDB/CONTROLFILE/control01.ctl','+ASM_DATA/TESTDB/CONTROLFILE/control02.ctl' *.db_block_size =8192 *.db_name ='TESTDB' *.db_recovery_file_dest='+FRA_DATA' *.db_recovery_file_dest_size =2G *.diagnostic_dest ='/mount/oracle/dump01' *.cluster_database=TRUE *.log_archive_dest_1='LOCATION=+ASM_DATA/TESTDB/ARCHIVELOG' *.log_archive_format='%t_%s_%r.dbf' *.memory_target =1G *.open_cursors =300 *.processes =150 *.remote_listener='orclespdev1-scan.oracleenespanol.blogspot.com:1826' *.remote_login_passwordfile ='EXCLUSIVE' TESTDB1.instance_name = TESTDB1 TESTDB2.instance_name = TESTDB2 TESTDB1.instance_number=1 TESTDB2.instance_number=2 TESTDB1.undo_tablespace='UNDOTBS1' TESTDB2.undo_tablespace='UNDOTBS2' TESTDB1.thread=1 TESTDB2.thread=2
Una de las cosas que te permite la arquitectura de RAC, es que cada instancia tenga su propio archivo de parametros.
Pero en mi caso, prefiero tener uno compartido, esto lo hago removiendo cualquier archivo de arranque que exista en $ORACLE_HOME/dbs/spfileTESTBn.ora (donde n es el numero de instancia)
Algo que debes de tener muy claro es que como vamos a tener un archivo de parametros compartido, la rutas fijas, (Que no pertenecen a ASM) tienen que ser iguales en todos tus nodos, como por ejemplo audit_file_dest.
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/oracle/product/11.2.0.2v3/dbs oracle $ rm ./*TESTDB*.ora
Ya que removi cualquier archivo de parámetros que tenia, para cada instancia en su servidor en $ORACLE_HOME/dbs, voy a crear un archivo initTESTDBn.ora (n para el numero de instancia) que apunte a mi archivo de arranque binario compartido
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/oracle/product/11.2.0.2v3/dbs oracle $ cat initTESTDB1.ora SPFILE='+ASM_DATA/TESTDB/PARAMETERFILE/spfileTESTDB.ora'
Ahora voy a bajar la instancia TESTDB1 para despues subirla con el archivo de parametros en RAC
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/TESTDB/pfile oracle $ sqlplus SQL*Plus: Release 11.2.0.2.0 Production on Wed Feb 15 10:00:53 2012 Copyright (c) 1982, 2010, Oracle. All rights reserved. Enter user-name: /as sysdba TESTDB1 >shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. TESTDB1 > SPFILE='+ASM_DATA/TESTDB/PARAMETERFILE/spfileTESTDB.ora' FROM PFILE = '/mount/dba01/oracle/TESTDB/pfile/pfileTESTDB_RAC.ora'; File created. TESTDB1 >startup ORACLE instance started. Total System Global Area 1068937216 bytes Fixed Size 2233336 bytes Variable Size 675286024 bytes Database Buffers 369098752 bytes Redo Buffers 22319104 bytes Database mounted. Database opened. TESTDB1 >
Ya que levantamos la instancia con los parametros necesarios de RAC, vamos a habilitar el segundo hilo de los online Redo Log
TESTDB1 >ALTER DATABASE ENABLE PUBLIC THREAD 2; Database altered.
Y ahora volvemos a bajar la instancia TESTDB1
TESTDB1 >shutdown immediate Database closed. Database dismounted. ORACLE instance shut down.
Añadir nuestra Base de Datos como Recurso al Clusterware
Si te has fijado, todo lo hemos trabajado en una sola instancia,para poder manejarlo con el Server Manager, vamos a utilizar una utileria llamada srvctl. En 11gR2 , se define una base de datos como un recurso en Oracle Clusterware, y cuando creamos una base de datos manual, esto se hace con la utileria srvctl.
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/admin oracle $ srvctl add database -d TESTDB -o "/mount/oracle/product/11.2.0.2v3" oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/admin oracle $ srvctl add instance -d TESTDB -i TESTDB1 -n servidor1.oracleenespanol.blogspot.com oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/admin oracle $ srvctl add instance -d TESTDB -i TESTDB2 -n servidor2.oracleenespanol.blogspot.com
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/admin oracle $ srvctl start database -d TESTDB
oracle@servidor1.oracleenespanol.blogspot.com [TESTDB1] /mount/dba01/oracle/admin oracle $ srvctl status database -d TESTDB Instance TESTDB1 is running on node servidor1 Instance TESTDB2 is running on node servidor2
Conclusion
Espero que estos pasos te sirvan el dia que no quieras utilizar el dbca para crear tu base de datos, esto te permite mas flexibilidad para la creacion de esta.
Suscribirse a:
Entradas (Atom)