DBSURE

Transcripción

DBSURE
DBSURE
Introducción
Una base de datos Oracle en Standby es una copia exacta de una base de datos
operativa en un servidor remoto, usada como backup, como copia para consulta,
recuperación de desastres, etc.
Una base de datos en modo Standby es algo más que un backup normal ya que se
puede poner en producción en caso de desastre en un tiempo menor que si tuviéramos
que restaurar una copia (ya sea desde rman o un export). Restaurar una copia desde
fichero tarda tiempo, y durante este periodo el sistema no está disponible. Con una base
de datos adicional en modo standby no hay nada (o casi nada que restaurar) en caso de
desastre. En cuestión de minutos se hace el cambio permitiendo continuidad en el
servicio. No nos ofrece las ventajas de rendimiento de un cluster o la seguridad del espejo
pero la relación de costes de tiempo y licencia versus ventajas.
Punto de vista global
•
Disponemos de una copia de la base de datos de forma remota, que podemos
contabilizar como segundo juego de copias.
•
A diferencia de un simple backup, la copia se mantiene viva y los datos son
actualizados con mayor frecuencia.
•
En caso de desastre la podemos usar en cuestión de minutos sin esperar a
restaurar un backup entero, ya sea lógico(export) o físico(rman).
•
Sirve como entorno de pruebas más real para la prueba de parches y estimación de
tiempos. El volumen de datos es idéntico.
Punto de vista técnico
•
Los cambios en la base de datos principal se captura en los archivos de redo log.
•
Los archivos de redo no son permanentes, son sobre escritos de forma rotativa (en
este estado aún no se copia al segundo servidor).
•
Se hace una copia del redo log. La copia permanente se llama archive log.
•
Los archive logs(copias de redo log) se transfieren al servidor en standby. En
sistemas linux por ejemplo podemos hacerlo mediante rsync.
•
Se aplican los archive logs transferidos a la base de datos en standby quedando
actualizada.
Como trabaja DBSure
DBSure consta de 2 partes, la primera que es el Cliente que trabaja con el Servidor de
Producción, y la Segunda que trabaja con el Servidor Standby.
La principal tarea que tiene es enviar archivelogs del servidor de Producción hacia el
Servidor Standby, echo esto DBSure Server pega automáticamente los archives en el
Servidor Standby y verifica que los Archives se hayan pegado correctamente
Servidor Standby
Servidor Producción
Conexión
a Servidor
Standby
Conexión
a Servidor de
Producción
Envio de Archivelogs
DBSure Client
DBSure Server
Características principales de DBSure
•
Esta Creado con Java
•
Trabaja sobre Sistemas Operativos Windows, Linux/Unix.
•
Su manejo es puro comandos en esta versión.
•
Trabaja con Bases de Datos RAC e Instancias Simples de BD
•
Cuando se trabaja con Bases de Datos RAC solo en necesario configurar el cliente
en un Nodo.
•
Trabaja con Bases de Datos sobre ASM o Bases de Datos que tienen sus Archives
sobre File System.
•
Trabaja con FRA (Fast Recovery Area)
•
Verifica y Transmite Automáticamente los Archives hacia el Servidor Standby.
•
Envía correo diario de alertas sobre la transmisión de Archives del día anterior
hasta el momento de envió.
•
No necesita un espacio muy grande para almacenar los archives que serán
enviados al Servidor Standby, así como también en el Servidor Standby.
•
No es necesario un cliente aparte de SSH o carpetas compartidas.
Tipos de Bases de Datos Soportados
puede ser usado con:
•
Oracle Database Express Edition.
•
Oracle Database Standard Edition One.
•
Oracle Database Standard Edition.
•
Oracle Database Enterprise Edition.
Versiones de Bases de Datos Soportados
hasta el momento se han echo pruebas con bases de datos:
•
10g
•
11g
Requerimientos de Hardware, Software, y Sistema
Operativo
Hardware
RAM: 50MB
Espacio: se debe estimar el tamaño de los archives por la cantidad de los mismos que se
desea mantener en la carpeta de DBSure como máximo.
Software
Trabaja con Java, la versión mínima que necesita es el jdk1.4 que viene con la versión de
Oracle 10g y en las versiones 11g trabaja con el JDK 1.5 que también esta incluido en la
Base de Datos.
Sistema Operativos
Trabaja sobre Windows y Linux, no se necesita que tenga instalado un jdk aparte, se
puede usar el JDK que viene con el Gestor de Base de Datos.
Es necesario tener 2 puertos libres para que DBSure se pueda comunicarse y enviar los
archivelogs.
Configuración de DBSure Cliente
para la configuración del archivo configClient.properties, En el servidor donde se
encuentra la Base de Datos de Producción se debe de considerar lo siguiente:
#app.type nos sirve para indicar a DBSure si se esta ejecutando en el Servidor de
Producción o en el Servidor Standby, en este caso como es cliente debe de estar en el
servidor de producción y el valor que debe de tomar es NODE
app.type=NODE
#app.operating.system: indicamos si vamos a ejecutar sobre WINDOWS o LINUX
app.operating.system=WINDOWS
#app.standby.port: podemos indicar que puerto va a usar para la comunicación de
DBSure cliente con DBSure Server.
app.standby.port=8093
#app.standby.portft: indicamos que puerto va a usar para el envió de Archivos de
DBSure cliente hacia DBSure Server.
app.standby.portft=8094
#app.node.archives.number.process: es el numero de archivelogs que se procesaran
en una ejecución.
app.node.archives.number.process=10
#Hora que no se tomara en cuenta por tiempo que toma backup formato hh24mi según el
ejemplo le indicamos a DBSure que nos envié Archivelogs desde las 05:00 am hasta las
06:00 am
#0500 => 05:00:00
#0600 => 06:00:00
#app.node.time.out.begin: puede ser usado si requerimos que exista un lapso de
tiempo en el que no queremos que se ejecute DBSure en este caso es la hora de inicio
expresado en HH24MI
app.node.time.out.begin=0500
#app.node.time.out.begin: es usado con el parametro app.node.time.out.begin en este
caso es la hora de fin expresado en HH24MI
app.node.time.out.end=0600
#app.node.archives.max.store : numero máximo de archivelogs que se almacenaran
en el nodo para no llenar el disco, lo cual significa que si ya se tienen 10 archivelogs
DBSure no seguira copiando Archives hasta que disminuya la cantidad de 10 Archives
almacenados.
app.node.archives.max.store=10
#oracle.node.version : podemos indicar con que versión de Oracle se va a trabajar 10g,
11g, 12c,
oracle.node.version=11g
#oracle.node.sid : SID de la instancia de Base de Datos de Producción
oracle.node.sid=SID PRINCIPAL
#oracle.node.ip : Ip del servidor de producción
oracle.node.ip=IP PRINCIPAL
#oracle.node.port: puerto del listener de la BD de producción.
oracle.node.port=1521
#oracle.node.user: usuario de consulta al diccionario, si se usa el tipo de copiado de
archivelogs por rman este usuario deberá tener permisos para la ejecución de backups
rman..
oracle.node.user=USER PRINCIPAL
#oracle.node.password: password del usuario principal deberá estar encryptado.
oracle.node.password=password
#oracle.node.path.base: ruta de ORACLE_BASE. Si esta en Windows el carácter
separador de carpetas deberá ser /
ejem: c:/oracle/product/11.1.0
oracle.node.path.base=path base
#oracle.node.path.home: ruta de ORACLE_HOME.Si esta en Windows el carácter
separador de carpetas deberá ser /
ejem: c:/oracle/product/11.1.0
oracle.node.path.home=path home
#oracle.node.type.copy.archive: Podemos configurar que tipo de copiado de
archivelogs se puede usar; RMAN si el copiado de archives va a ser por medio de
rman(casos que se puede usar son en File System y también para ASM), ASMCMD solo en
11g a mas y si el copiado de archives va a ser de ASM, COPY si los archives están sobre
FileSystem : (RMAN,ASMCMD,COPY)
oracle.node.type.copy.archive=COPY
#Usar los siguientes parámetros solo cuando se use el tipo de copiado ASMCMD,
para lo cual tenemos que incluir la ruta de grid o donde esta asmcmd, así como
el SID de ASM. Si esta en Windows el carácter separador de carpetas deberá ser /
ejem: c:/oracle/product/11.1.0
#oracle.node.asm.path.home=/u01/app/oracle/product/11.2.0/grid
#oracle.node.asm.sid=+ASM
#oracle.standby.ip : IP donde va a estar el servidor Standby
oracle.standby.ip=IP SERVER STANDBY
#Configuraciones que se tiene que ingresar para que nos envié correos de
reportes, el password deberá estar encryptado
email.server=127.0.0.1
email.port=25
email.user=eviza
email.password=password
email.fromuser=eviza@localhost
email.touser=eviza@localhost
#parametro en el que vamos a indicar a que hora todos los dias necesitamos que
nos envie un reporte
app.node.schedulers.execute.time=0600
Configuración de DBSure Server
para la configuración del archivo configServer.properties, En el servidor donde se
encuentra la Base de Datos Standby se debe de considerar lo siguiente:
#app.type nos sirve para indicar a DBSure si se esta ejecutando en el Servidor de
Producción o en el Servidor Standby, en este caso como es Server debe de estar en el
servidor standby y el valor que debe de tomar es SERVER
app.type=SERVER
#app.operating.system: indicamos si vamos a ejecutar sobre WINDOWS o LINUX
app.operating.system=WINDOWS
#app.standby.port: podemos indicar que puerto va a usar para la comunicación de
DBSure cliente con DBSure Server.
app.standby.port=8093
#app.standby.portft: indicamos que puerto va a usar para el envió de Archivos de
DBSure cliente hacia DBSure Server.
app.standby.portft=8094
#el numero de archives que procesara DBSure en el servidor standby
app.standby.archives.number.process=10
# numero total de nodos que se tiene en producción, sino esta en RAC ingresar el
numero 1
app.standby.total.number.nodes=1
#oracle.standby.version: podemos indicar con que versión de Oracle se va a trabajar
10g, 11g, 12c,
oracle.standby.version=11g
#oracle.standby.sid : SID de la instancia de Base de Datos Standby
oracle.standby.sid=SID STANDBY
#oracle.standby.ip : Ip del servidor Standby
oracle.standby.ip=IP STANDBY
#oracle.standby.port: puerto del listener de la BD Standby.
oracle.standby.port=1521
#oracle.standby.user: mismo usuario que se usa en Produccion en DBSure cliente.
oracle.standby.user=USER DBA
#oracle.standby.password: password del usuario principal deberá estar encryptado.
oracle.standby.password=PASSWORD USER DBA
#oracle.standby.path.base: ruta de ORACLE_BASE. Si esta en windows el caracter
separador de carpetas debera ser /
ejem: c:/oracle/product/11.1.0
oracle.standby.path.base=path base
#oracle.standby.path.home: ruta de ORACLE_HOME. Si esta en windows el caracter
separador de carpetas debera ser /
ejem: c:/oracle/product/11.1.0
oracle.standby.path.home=path oracle home
#nombre del SID de producción
oracle.node.sid=SID INSTANCIA DE PRODUCCION
#Configuraciones que se tiene que ingresar para que nos envié correos, el
password deberá estar encryptado
email.server=127.0.0.1
email.port=25
email.user=eviza
email.password=password
email.fromuser=eviza@localhost
email.touser=eviza@localhost

Documentos relacionados