Professional Documents
Culture Documents
7s11
Contenido
1.
Introduccin.................................................................................................. 3
2.
Objetivos....................................................................................................... 4
3.
Marco Terico................................................................................................ 5
4.
Desarrollo..................................................................................................... 9
5.
Conclusin.................................................................................................. 18
Referencias Bibliogrficas................................................................................. 19
1. Introduccin
2. Objetivos
Objetivo General.
Realizar la replicacin de la base de datos Votacin utilizando Oracle
utilizando un servidor maestro y otro como esclavo.
Objetivos Particulares.
3. Marco Terico
Sistema Gestor de Bases de Datos (SGBD)
Un Sistema Gestor de Bases de Datos (SGBD) o DBMA (DataBase
Management System) es una coleccin de programas cuyo objetivo es
servir de interfaz entre la base de datos, el usuario y las aplicaciones. Se
compone de un lenguaje de definicin de datos, de un lenguaje de
manipulacin de datos y de un lenguaje de consulta. Un SGBD permiten
definir los datos a distintos niveles de abstraccin y manipular dichos
datos, garantizando la seguridad e integridad de los mismos.
Algunos ejemplos de SGBD son Oracle, DB2, PostgreSQL, MySQL, MS SQL
Server, etc.
Un SGBD debe permitir:
Definir una base de datos: especificar tipos, estructuras y
restricciones de datos.
Construir la base de datos: guardar los datos en algn medio
controlado por el mismo SGBD
Manipular la base de datos: realizar consultas, actualizarla,
generar informes.
Las caractersticas de un Sistema Gestor de Base de Datos SGBD son:
Abstraccin de la informacin. Los SGBD ahorran a los usuarios
detalles acerca del almacenamiento fsico de los datos. Da lo
mismo si una base de datos ocupa uno o cientos de archivos, este
hecho se hace transparente al usuario. As, se definen varios
niveles de abstraccin.
Independencia. La independencia de los datos consiste en la
capacidad de modificar el esquema (fsico o lgico) de una base de
datos sin tener que realizar cambios en las aplicaciones que se
sirven de ella.
Redundancia mnima. Un buen diseo de una base de datos
lograr evitar la aparicin de informacin repetida o redundante.
De entrada, lo ideal es lograr una redundancia nula; no obstante,
en algunos casos la complejidad de los clculos hace necesaria la
aparicin de redundancias.
Consistencia. En aquellos casos en los que no se ha logrado esta
redundancia nula, ser necesario vigilar que aquella informacin
que aparece repetida se actualice de forma coherente, es decir,
que todos los datos repetidos se actualicen de forma simultnea.
Oracle
Oracle es bsicamente una herramienta cliente/servidor para la gestin
de Bases de Datos. Es un producto vendido a nivel mundial, aunque la
gran potencia que tiene y su elevado precio hace que slo se vea en
empresas muy grandes y multinacionales, por norma general. En el
desarrollo de pginas web pasa lo mismo: como es un sistema muy caro
no est tan extendido como otras bases de datos, por ejemplo, Access,
MySQL, SQL Server, etc.
Para desarrollar en Oracle utilizamos PL/SQL un lenguaje de 5
generacin, bastante potente para tratar y gestionar la base de datos,
tambin por norma general se suele utilizar SQL al crear un formulario.
Es posible lgicamente atacar a la base de datos a travs del SQL plus
incorporado en el paquete de programas Oracle para poder realizar
consultas, utilizando el lenguaje SQL [Masip, 2002].
DBLink
La manera ms sencilla de acceder desde una base de datos Oracle a
tablas y vistas (views) de otra base de datos Oracle es mediante el uso
de un DBLink (enlace a base de datos). No obstante, en muchos
casos puede no ser recomendable la utilizacin de DBLinks, ya que el
acceso a tablas y vistas remotas puede provocar importantes problemas
de rendimiento en ambas bases de datos, tanto la remota como la local.
En la mayora de los casos estos problemas de rendimiento se deben a
la imposibilidad de utilizar los ndices de las tablas remotas.
Los DBLinks se crean en la base de datos local utilizando el comando
PL/SQL o SQL CREATE DATABASE LINK. Obviamente, el usuario que
ejecute dicho comando debe tener los permisos necesarios para poder
hacerlo. La sintaxis del comando SQL mencionado es como sigue:
CREATE [PUBLIC] DATABASE LINK Nombre_dblink
En donde:
Nombre_dblink es el nombre del DBLink.
Nombre_usuario y Contrasea son los identificadores que utilizar el
DBLink para conectarse a la base de datos remota. Por lo tanto, el
acceso a las tablas y vistas de la base de datos remota se har con los
permisos que dicho usuario tenga sobre ellas en dicha base de datos. Si
se omiten estos valores, entonces el acceso a la base de datos remota
se har con el mismo nombre de usuario y contrasea con el que el
usuario en cuestin est conectado a la base de datos local.
Cadena_conexion identifica a la base de datos remota. Puede ser
el nombre de la instancia, si sta est definida en el archivo
tnsnames.ora de la base de datos origen, o tambin, para la versin 8 de
la base de datos Oracle o posteriores, podemos utilizar directamente
la definicin TNS (esto posibilita que no tengamos que modificar el
fichero tnsnames.ora).
Una vez creado el DBLink, para referenciar una tabla o vista de la base
de datos remota se ha de indicar el nombre de la tabla o vista,
concatenado con el carcter "@" y el nombre que se le ha dado al
DBLink. Las tablas y vistas remotas podrn usarse en consultas
(sentencias SELECT) y, si la base de datos Oracle utiliza el sistema de
bases de datos distribuidas, entonces se podrn ejecutar tambin
sentencias SQL o PLSQL del tipo DELETE, INSERT, UPDATE o LOCK TABLE.
Asimismo, se pueden crear sinnimos para abreviar la forma de
referenciar a las tablas y vistas remotas. A continuacin, os pongo
algunos ejemplos de sentencias:
SELECT * FROM Nombre_tabla_remota@Nombre_dblink;
INSERT INTO Nombre_tabla_remota@Nombre_dblink (campo1)
VALUES ('prueba');
UPDATE Nombre_tabla_remota@Nombre_dblink;
SET campo1 = 'actualizado'
WHERE campo1 = 'prueba';
CREATE SYNONYM tremota
FOR Nombre_tabla_remota@Nombre_dblink;
SELECT * FROM tremota;
4. Desarrollo
Instalacin de Oracle 11g Release 2 XE
Enlace relacionado: Oracle Database Express Edition 11g Release 2
Una vez descargado y descomprimido, entramos a la carpeta creada;
dentro encontraremos un archivo llamado setup.exe, pulsamos el
botn derecho del ratn sobre l y aparecer un men donde elegiremos
Ejecutar como administrador. Aparecer una ventana emergente a la
que le daremos que s al mensaje.
Ilustracin 3: Ubicacin
Ilustracin 4: Contrasea
Ilustracin 5: Instalacin
Ilustracin 9: IP
Iniciar Listener
Una vez que tengamos abierto el cmd procedemos a activar el listener con los
siguientes comandos:
Comprobar su estado => lsnrctl status
Iniciar listener => lsnrctl start
Detener listener => lsnrctl stop
Ilustracin 12
Editar TNSNames.ora
Para poder establecer comunicacin entre las dos mquinas debemos
buscar el archivo tnsnames.ora, ubicado normalmente en la direccin:
C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
Una vez localizado debemos editar sus valores por default, para ello
basta con pulsar el botn derecho del mouse sobre l y seleccionar
Editar.
Ilustracin 13
Ilustracin 14
Ilustracin 15
Ilustracin 16
Ilustracin 17
Ilustracin 18
Ilustracin 19
Ilustracin 20
Ilustracin 21
5. Conclusin
La replicacin de una base de datos puede asegurar la integridad y la
consistencia de una base de datos casi en su totalidad ya que no puede
asegurar una transaccin en proceso debido a que la base de datos debe
concretar la transaccin para poder actualizar el estado de la base de datos. Es
a partir de ah donde la rplica puede visualizar los cambios.
Referencias
[Internet],
Disponible
en:
http://www.cavsi.com/preguntasrespuestas/que-es-un-sistema
gestor-de-bases-de-datos-o-sgbd/
Chvez, Omar; (2013), Replicacin, [Internet], Disponible en:
http://chavez-atienzo-2013.blogspot.mx/2013/04/replicacion.html
Cherry, (2011), Sistema Manejador de Base de Datos, [Internet],
Disponible
en:
http://sistemamanejadordebasededatossmbd.blogspot.mx/2011/02
/diferentes-tipos-de-sistemas-de.html
Massip, David; (2002), Que es Oracle,[Internet], Disponible en:
http://www.desarrolloweb.com/articulos/840.php
MICROSOFT, (2016), Replicacin de SQL Server, [Internet],
Disponible
en:
https://msdn.microsoft.com/eses/library/ms151198.aspx
en: