Sistemas distribuidos
Upcoming SlideShare
Loading in...5
×
 

Sistemas distribuidos

on

  • 2,004 views

Manual de sistemas distribuidos

Manual de sistemas distribuidos

Statistics

Views

Total Views
2,004
Slideshare-icon Views on SlideShare
2,004
Embed Views
0

Actions

Likes
1
Downloads
81
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Sistemas distribuidos Sistemas distribuidos Document Transcript

    • www.monografias.com Sistemas distribuidos Franco Roldán franco_0108@hotmail.com 1. Introducción 2. Arquitectura sistemas distribuidos 3. Oracle 9i 4. Componentes de SGA 5. Componentes de PGA 6. Privilegios de sistema de Oracle 9i 7. Privilegios de objeto de Oracle 9i 8. Roles y perfiles 9. Instalación de Oracle 9i 10. Ingresar a la base de datos 11. Crear un TableSpace o espacio de tablas 12. Crear Usuario 13. Como Crear Esquema y tabla 14. Crear una secuencia 15. Distribución replicación de base de datos Oracle 16. Replicación de base de datos con Oracle Introducción Sistemas cuyos componentes hardware y software, que están en ordenadores conectados en red, se comunican y coordinan sus acciones mediante el paso de mensajes, para el logro de un objetivo. Se establece la comunicación mediante un protocolo prefijado por un esquema cliente-servidor Un sistema distribuido se define como: una colección de computadores separados físicamente y conectados entre sí por una red de comunicaciones distribuida; cada máquina posee sus componentes de hardware y software que el usuario percibe como un solo sistema (no necesita saber qué cosas están en qué máquinas). El usuario accede a los recursos remotos (RPC) de la misma manera en que accede a recursos locales, o un grupo de computadores que usan un software para conseguir un objetivo en común. Los sistemas distribuidos deben ser muy confiables, ya que si un componente del sistema se descompone otro componente debe de ser capaz de reemplazarlo, esto se denomina Tolerancia a Fallos.” Arquitectura sistemas distribuidos En este material de estudio vamos ha hablar sobre tres arquitecturas que fueron ideales en su tiempo para los sistemas distribuidos.  TELEPROCESO Este aparece con la finalidad de compartir información y recursos con usuarios, la estructura de este es que su conexión es en paralelo para todos los usuarios, además tiene terminales tontos. Cuenta con un solo servidor en el cual esta la memoria y solo el gestiona la información y las aplicaciones. Ventajas: • Seguros • Rápidos • Proceso local • Conectividad eficiente Desventajas: • Infraestructura limitada • Dependencia del servidor • Costos elevados tanto como dinero y trabajo  SERVIDOR DE ARCHIVOS El servidor de archivo, aparecen con estaciones de trabajo esto quiere decir que los usuario ya puede manipularla información, claro esta que deben tener privilegios. Cuentan con aplicaciones destinadas para Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com cada usuario de acuerdo al trabajo que desempeñen, los documentos pueden ser compartidos y pueden manipularlos varias personas. Ventajas: • Menor costo de servidores • Servicio local • Mejor Rapidez • Aplicaciones Robustas Desventajas: • Mayor Inversión de infraestructura • Actualización de aplicaciones • Problema en la red  CLIENTE SERVIDOR Sistema donde el cliente es una máquina que solicita un determinado servicio y se denomina servidor a la máquina que lo proporciona. Los servicios pueden ser: Ejecución de un determinado programa, Acceso a un determinado banco de información, Acceso a un dispositivo de hardware. El servidor presenta a todos sus clientes una interfaz única y bien definida, existen varios servidores: • Servidores de Software de Grupo.- El software de grupo es aquel, que permite organizar el trabajo de un grupo. El servidor gestiona los datos que dan soporte a estas tareas. Por ejemplo: almacenar las listas de correo electrónico. El Cliente puede indicarle, que se ha terminado una tarea y el servidor se lo envía al resto del grupo. • Servidores WEB.- Son los que guardan y proporcionan Páginas HTML. El cliente desde un browser o link hace un llamado de la página y el servidor recibe el mensaje y envía la página correspondiente. • Servidores de correo.- Gestiona el envío y recepción de correo de un grupo de usuarios (el servidor no necesita ser muy potente). El servidor solo debe utilizar un protocolo de correo. • Servidor de objetos.- Permite almacenar objetos que pueden ser activados a distancia. Los clientes pueden ser capaces de activar los objetos que se encuentran en el servidor. • Servidores de aplicación.- Se dedica a una única aplicación. Es básicamente una aplicación a la que pueden acceder los clientes. El Cliente es Conjunto de Software y Hardware que invoca los servicios de uno o varios servidores. Características: • El Cliente oculta al Servidor y la Red. • Detecta e intercepta peticiones de otras aplicaciones y puede redireccionarlas. • Dedicado a la cesión del usuario (Inicia...Termina). • El método más común por el que se solicitan los servicios es a través de RPC (Remote Procedure Calls). Funciones Comunes del Cliente: • Mantener y procesar todo el dialogo con el usuario. • Manejo de pantallas. • Menús e interpretación de comandos. • Entrada de datos y validación. • Procesamiento de ayudas. • Recuperación de errores. A continuación mostramos las arquitecturas cliente-servidor más populares: • Arquitectura Cliente-Servidor de Dos Capas.- Consiste en una capa de presentación y lógica de la aplicación; y la otra de la base de datos. La primera capa encapsula la presentación y la lógica, la segunda gestiona el almacenamiento y puede almacenar parte de la lógica (procedimientos almacenados, triggers). Normalmente esta arquitectura se utiliza en las siguientes situaciones: - Cuando se requiera poco procesamiento de datos en la organización. - Cuando se tiene una base de datos centralizada en un solo servidor. - Cuando la base de datos es relativamente estática. - Cuando se requiere un mantenimiento mínimo. • Arquitectura Cliente-Servidor de Tres Capas- Consiste en una capa de la Presentación, otra capa de la lógica de la aplicación y otra capa de la base de datos. Agriega una capa intermedia (middle tier) que permite priorizacion y gestion de peticiones de balances. Normalmente esta arquitectura se utiliza en las siguientes situaciones: - Cuando se requiera mucho procesamiento de datos en la aplicación. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com - En aplicaciones donde la funcionalidad este en constante cambio. - Cuando los procesos no están relativamente muy relacionados con los datos. - Cuando se requiera aislar la tecnología de la base de datos para que sea fácil de cambiar. - Cuando se requiera separar el código del cliente para que se facilite el mantenimiento. - Esta muy adecuada para utilizarla con la tecnología orientada a objetos. Oracle 9i Esta es una plataforma de manejo de datos que tiene como unas 50 aplicaciones, este es considerado como un sistema de base de datos más complejo, este trabaja con la estructura cliente servidor. ARQUITECTURA DE ORACLE El motor de base de datos tiene 2 componentes: Base de datos Los ficheros del sistema como los Control File: que son donde están las variables iníciales de BD, aquí es donde se puede alzarlas instancias con espacio de memoria y resoplados en frio. Data File: reside los datos del diccionario y usuarios es decir contiene los archivos del esquema de la base de datos. Redo Log Files: archivos log o Históricos, realiza auditoria de base de datos, recupera en caso de errores o fallos INSTANCIA: Espacio de memoria reservada (70% y 90 % memoria libre). DBMS Es un sistema robusto que es capaz de emplear algoritmos de almacenamiento y recuperación de información para poder implementar un modelo de datos de manera física garantizando que todas las transacciones que se realizan con respecto a dichos datos sean "ácidas" (Atomicity, Consistency, Isolation, Duration). Arquitectura de un manejador de bases de datos (DBMS) Una base de datos en ejecución consta de 3 cosas: • Archivos o Control (ctl): almacenan información acerca de la estructura de archivos de la base. o Rollback (rbs): cuando se modifica el valor de alguna tupla en una transacción, los valores nuevos y anteriores se almacenan en un archivo, de modo que si ocurre algún error, se puede regresar (rollback) a un estado anterior. o Redo (rdo): bitácora de toda transacción, en muchos dbms incluye todo tipo de consulta incluyendo aquellas que no modifican los datos. o Datos (dbf): el tipo más común, almacena la información que es accesada en la base de datos. o Indices (dbf) (dbi): archivos hermanos de los datos para acceso rápido. o Temp (tmp): localidades en disco dedicadas a operaciones de ordenamiento o alguna actividad particular que requiera espacio temporal adicional. • Memoria o Shared Global Area (SGA): es el área más grande de memoria y quizás el más importante  Shared Pool: es una caché que mejora el rendimiento ya que almacena parte del diccionario de datos y el parsing de algunas consultas en SQL  Redo Log Buffer: contiene un registro de todas las transacciones dentro de la base, las cuales se almacenan en el respectivo archivo de Redo y en caso de siniestro se vuelven a ejecutar aquellos cambios que aún no se hayan reflejado en el archivo de datos (commit).  Large Pool: espacio adicional, generalmente usado en casos de multithreading y esclavos de I/O.  Java Pool: usado principalmente para almacenar objetos Java o Program Global Area (PGA): información del estado de cursores/apuntadores o User Global Area(UGA): información de sesión, espacio de stack • Procesos o Threading Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com o System Monitor: despierta periódicamente y realiza algunas actividades entre las que se encuentran la recuperación de errores, recuperación de espacio libre en tablespaces y en segmentos temporales. o Process Monitor: limpia aquellos procesos que el usuario termina de manera anormal, verificando consistencias, liberación de recursos, bloqueos. o Database Writer: escribe bloques de datos modificados del buffer al disco, aquellas transacciones que llegan a un estado de commit. o Log Writer: escribe todo lo que se encuentra en el redo log buffer hacia el redo file o Checkpoint: sincroniza todo lo que se tenga en memoria, con sus correspondientes archivos en disco Figura: Instancia de una base de datos en Oracle Componentes de SGA El Área Global del sistema es un conjunto de estructuras de memoria compartida que contienen datos e información de control para una determinada instancia ORACLE. El SGA se mantiene en la memoria virtual del computador en el que reside la instancia ORACLE. Si dentro de la instancia existe la posibilidad de que más de un usuario se encuentren conectados simultáneamente, los datos dentro del SGA de la instancia son compartidos entre todos los usuarios. Es por esto que algunas veces al SGA también se le suele denominar Shared Global Area. El SGA está compuesta por: SHARED POOL: Esta estructura se utiliza durante el procesamiento de comandos. Su tamaño también es configurable. Contiene dos zonas específicas: - Library Cache, almacena la siguiente información relacionada con una instrucción de SQL: -Texto de la instrucción. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com - Arbol de parsing, es decir la versión compilada de la instrucción. -Plan de Ejecución, es decir la secuencia de pasos a ser realizados para ejecutar la instrucción a bajo nivel de acuerdo con los resultados producidos por el optimizador de consultas. Basándose en esta información, si una consulta es ejecutada nuevamente, y su información permanece todavía en el Library Cache, no será necesario compilar de nuevo la instrucción. En tal sentido este componente de la arquitectura permite mejorar el rendimiento de las aplicaciones que se ejecutan periódicamente. - Data Dictionary Cache, también conocido como Dictionary Cache o Row Cache, almacena la información de uso más reciente sobre el diccionario de datos. Esta información incluye definición de columnas, usuarios, passwords y privilegios. Durante la fase de compilación, esta información es necesaria para resolver los nombres de los objetos utilizados en un comando SQL y para validar los privilegios de acceso. DATABASE BUFFER CACHE: Su función es mantener bloques de datos leídos directamente de los archivos de datos. Cuando se procesa una consulta, el servidor busca los bloques de datos requeridos en esta estructura. Si el bloque no se encuentra en esta estructura, el proceso servidor lee el bloque de la memoria secundaria y coloca una copia en esta estructura. De esta forma, otras peticiones que requieran de este bloque de datos no requerirán de acceso a memoria secundaria (lecturas físicas). REDO LOG BUFFER: Es un buffer circular que mantiene todos los cambios que han sido realizados sobre la base de datos por operaciones de insert, update, delete, create, alter y drop. Las entradas de este buffer contienen toda la información necesaria para reconstruir los cambios realizados a la base de datos por medio de cualquier sentencia del DDL o del DML (el bloque que ha sido cambiado, la posición de cambio y el nuevo valor). Large Pool: espacio adicional, generalmente usado en casos de multithreading y esclavos de I/O. Java Pool: usado principalmente para almacenar objetos Java Componentes de PGA El PGA constituye una región de memoria asociada a cada proceso servidor, la cual contiene datos e información de control para cada una de las sesiones que los usuarios mantienen con el RDBMS ORACLE a través de éste proceso servidor. Por lo tanto el PGA no es un área de memoria compartida. Una región de memoria para almacenar un PGA es solicitada cuando un proceso usuario establece una sesión de trabajo con el manejador de datos. El tipo de información que se almacena en el PGA depende de las opciones instaladas para el servidor ORACLE. El PGA contiene los siguientes componentes: SORT AREA, que es utilizada para llevar a cabo los posibles ordenamientos de filas requeridos antes de que las filas sean procesadas o devueltas al usuario como resultado de una consulta. STACK SPACE, el cual contiene las variables de sesión de usuario y sus valores. CURSOR STATE, el cual almacena el estado de los diferentes cursores que están siendo utilizados en la sesión del usuario. SESSION INFORMATION, la cual mantiene información sobre los privilegios que el usuario que ejecuta la sesión. Privilegios de sistema de Oracle 9i Permite al usuario hacer ciertas tareas sobre la BD, como por ejemplo crear un Tablespace. Estos permisos son otorgados por el administrador o por alguien que haya recibido el permiso para administrar ese tipo de privilegio. En general los permisos de sistema, permiten ejecutar comandos del tipo DDL (Data definition Language), como CREATE, ALTER y DROP o del tipo DML (Data Manipulation Language). Privilegio Descripción CREATE ANY INDEX Crear cualquier índice. CREATE [PUBLIC] Crear sinónimos [públicos]. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com SYNONYM Crear tablas. El usuario debe tener cuota en el espacio de tablas, o ha de CREATE [ANY] TABLE tener asignado el privilegio UNLIMITED TABLESPACE. CREATE [ANY] VIEW Crear vistas. ALTER ANY INDEX Alterar cualquier índice. ALTER ANY TABLE Alterar cualquier tabla DROP ANY INDEX Borrar cualquier índice. DROP ANY SYNONYM Borrar cualquier sinónimo. DROP PUBLIC SYNONYM Borrar sinónimos públicos. DROP ANY VIEW Borrar cualquier vista. DROP ANY TABLE Borrar cualquier tabla. SELECT ANY TABLE Efectuar selecciones de cualquier tabla o vista. INSERT ANY TABLE Insertar en cualquier tabla o vista. DELETE ANY TABLE Borrar filas de cualquier tabla o vista, y también truncar. ALTER SESSION Alterar los parámetros de la sesión. CREATE SESSION Conectarse a la BD. CREATE PROFILE Crear perfiles de usuario. CREATE ROLE Crear roles. CREATE ROLLBACK Creación de segmentos de rollback. SEGMENT CREATE TABLESPACE Crear espacios de tablas. CREATE USER Crear usuarios. ALTER PROFILE Alterar perfiles existentes. ALTER ANY ROLE Alterar cualquier rol. ALTER ROLLBACK Alterar segmentos de rollback. SEGMENT ALTER TABLESPACE Alterar espacios de tablas. ALTER USER Alterar usuarios. DROP PROFILE Borrar un perfil existente. DROP ANY ROLE Borrar cualquier rol. DROP ROLLBACK Borrar un segmento de rollback existente. SEGMENT DROP TABLESPACE Borrar un espacio de tablas. DROP USER Borrar un usuario. Añadir CASCADE si el usuario posee objetos. ALTER DATABASE Permite una sentencia ALTER DATABASE. GRANT ANY PRIVILEGE Otorgar cualquiera de estos privilegios. GRANT ANY ROLE Otorgar cualquier rol a un usuario. UNLIMITED TABLESPACE Puede usar una cantidad de almacenamiento ilimitada. DROP PROFILE Borrar un perfil existente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Privilegios de objeto de Oracle 9i Este tipo de privilegios le permite al usuario hacer cierta acción en un objeto de la base de datos, como puede ser una tabla, vista, función etc. Si a un usuario no se le dan estos privilegios solo podrías acceder a sus propios objetos. Y estos tipos de privilegios los da el dueño del objeto, el administrador o alguien que haya recibido este permiso explícitamente. Los privilegios sobre objetos consienten que un objeto (creado por un usuario) estos privilegios puede ser de SELECT, UPDATE, DELETE, INSERT. Privilegio Descripción SELECT Puede consultar a un objeto. Puede insertar filas en una tabla o vista. Puede especificarse las columnas donde se INSERT permite insertar dentro de la tabla o vista. Puede actualizar filas en una tabla o vista. Puede especificarse las columnas donde se UPDATE permite actualizar dentro de la tabla o vista. DELETE Puede borrar filas dentro de la tabla o vista. ALTER Puede alterar la tabla. INDEX Puede crear índices de una tabla. REFERENCES Puede crear claves ajenas que referencie a esta tabla. EXECUTE Puede ejecutar un procedimiento, paquete o función. READ Permite leer archivos asociados con objetos BFILE en el directorio del sistema Roles y perfiles ROLES Los roles son conjuntos de privilegios. Un rol puede tener garantizados una serie de privilegios tanto del sistema como sobre objetos, y a la vez puede tener garantizado otros roles. Por default cuando creamos un usuario desde el Enterprise Manager se le asigna el permiso de Connect, lo que permite al usuario conectarse a la BD y crear sus propios objetos en su propio esquema. De otra manera, debemos asignarlos en forma manual. Sintaxis para crear un Rol y asignarlo a un usuario: SQL> CREATE ROLE appl_dba; Opcionalmente, se puede asignar una clave al Rol: SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd; Para asignar este Rol a un usuario: SQL> GRANT appl_dba TO FPROLDAN; Otro uso común de los roles es asignarles privilegios a nivel de Objetos, por ejemplo en una Tabla de Facturas en donde sólo queremos que se puedan hacer Querys e Inserts: SQL> CREATE ROLE consulta; SQL> GRANT SELECT, INSERT on CLIENTE.FACTURA TO consulta; PERFILES Los perfiles permiten definir limitaciones de recursos. Por ejemplo podemos definir un perfil que limite el número de sesiones abiertas concurrentemente por un usuario cualquiera, y posteriormente aplicar este perfil a uno o más usuarios concretos. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Instalación de Oracle 9i Insertaremos el disco 1 para comenzar la instalación, estos CDs puede descargarse gratuitamente de la propia pagina www.oracle.com Ponemos siguiente en la pantalla de bienvenida y luego nos aparece la pantalla en donde nos va a mostrar la ruta de donde se va a copiar los archivos de instalación, ponemos siguiente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En esta página vamos a escoger que tipo de instalación queremos. En este caso escogemos Oracle9i Database 9.2.0.1.0 para el servidor caso contario, si ya existe un servidor escogemos Oracle9i Client 9.2.0.1.0 Damos clic en siguiente. Escogemos el tipo de instalación de vamos a realizar: Enterprise Edition Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Para la configuración de la base de datos es simple de uso general Seleccionaremos el puerto 2030. Este parámetro es muy importante pues, si decidimos cambiar el puerto por defecto, cuando queramos que un cliente se conecte al servidor deberemos especificar el puerto que hayamos seleccionado en este punto de la instalación: Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En este punto de la instalación vamos a identificar el nombre de la base de datos, en donde en los datos global debe ir el nombre completo de la base con todo dominio, y en el SID va solo el nombre de la BD, en este caso no hay dominio. En esta página tenemos que poner la ruta en donde va a estar nuestra base de datos Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Escogemos el juego de caracteres ALT32UTF8 ya que si escogemos por defecto nosotros no sabemos cual es el que en el sistema operativo. Nos muestra que vamos instalar en un pequeño detalle damos clic en instalar. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Cada vez que nos pida el otro disco ingresamos el indicado y aceptamos. En esta se inician las herramientas de configuración. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En esta se copia los archivos y se inicializa la base de datos. Aquí introducimos las claves para ingresar a nuestra base de datos tanto como SYS y SYSTEM. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Muestra que ya a terminado la instalación y damos clic en salir. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ingresar a la base de datos Damos clic en inicio, todos los programas, Oracle-OraHome92, Enterprise Manager Console. Nos muestra la siguiente pantalla, y escogemos iniciar en modo autónomo, aceptamos. Abrimos la base de datos que creamos y nos muestra esta ventana para poner nuestro usuario y contraseña, que pusimos anteriormente en la configuración. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Y nos muestra la pantalla principal con todo el árbol de nuestra base de datos, en la parte derecha esta el host, el puerto, nuestro nombre de servicio y el TNS. Crear un TableSpace o espacio de tablas Para crear un tableSpace, vamos a Almacenamiento, damos clic derecho en Tablespace y crear. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Nos aparece la siguiente pantalla en donde se pone el nombre del tablespace en este caso yo he puesto TOTAV y también tenemos que poner el nombre del Datafile DOTAV para diferenciar el uno del otro al comienzo e puesto T para Tablesapace y D para Datafile y crear. Crear Usuario Para crear usuario damos clic en Seguridad, clic derecho en Usuarios y crear Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En esta parte ponemos el nombre de usuario, ponemos la contraseña, en tablespace escogemos el que creamos. Damos un clic en la pestaña Rol En rol damos los siguientes privilegios, CONNECT, DBA, RESOURCE, EXP_FULL_DATABASE. Damos clic en la pestaña sistema. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En sistema damos los siguientes privilegios CREATE DATABASE LINK, CREATE CLUSTER, CREATE DIMENSION, CREATE PUBLIC DATABASE LINK, CREATE PUBLIC SYNONYM, y creamos. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Como Crear Esquema y tabla Para crear un esquema primero debemos crear un objeto, damos clic en Objeto del menú y crear. Escogemos tabla y creamos. Nos muestra lo siguiente, en donde tenemos que poner el nombre de nuestra tabla de la base de datos, escogemos el Esquema que es el Usuario y el tablespace. Siguiente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Creamos los campos de la tabla Creamos una clave primaria. Siguiente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ponemos si es nulo los campos que requiera. Por ultimo nos indica generado en sql. Terminar. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ahora nos posesionamos en esquema y buscamos a nuestro esquema y los expandimos para ver su árbol. Crear una secuencia Este genera números de forma incremental o decremento con límite o no. Damos clic en Esquema, buscamos a nuestro esquema, clic derecho en secuencia, crear Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ponemos el nombre los parámetros, sino hay datos ingresados entonces queda por defecto. Ahora vamos hacer el disparador para que funcione Desplegamos la tabla FAC_COMPRA y damos clic derecho en disparadores y crear. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com En general ponemos el nombre escogemos el esquema y ponemos estas líneas de código. Clic en la pestaña evento En evento escogemos el esquema, la tabla y damos un visto en Insertar, clic en Avanzado. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Damos un visto en Disparador para cada fila, escribimos en Antigua como: OLD y Nueva como: NEW. Damos clic en crear Para verificar si esta correcto debemos ingresar los datos en la tabla sin poner el campo de secuencia en insertar y automáticamente debe ponerse el numero. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Distribución replicación de base de datos Oracle Introducción El presente documento muestra la forma de replicar de manera sencilla los datos de una base de datos en oracle hacia otro servidor oracle, mediante el uso de vistas materializadas. La replicación te permite tener una copia exacta de una base de datos alojada en un servidor (maestro) que se guardará en otro servidor (esclavo). Todas las modificaciones que se hagan en la base de datos del servidor maestro se actualizarán inmediatamente en el servidor esclavo. Esto no es una copia de seguridad, ya que si borramos una fila en la base de datos maestra, también se borrará en la base de datos esclava. A continuación tenemos los pasos para instalar y configurar nuestro servidor para replicar datos. Bases de datos distribuidas Se trata de una base de datos a nivel lógico (los usuarios la manejan como una base de datos normal), pero que en realidad (físicamente) está implementada en varias ubicaciones físicas, incluso en máquinas diferentes y distantes. Cada máquina ejecuta su propia instancia y conjuntos de archivos y todas se conectan en red para hacer que el usuario no tenga que cambiar su código para reflejar esta distribución. La dificultad de esta estructura suele estar aliviada por medio de instantáneas que graban momentáneamente los datos de las tablas distantes. Permiten trabajar con los datos copiados y se programan para que cada cierto tiempo recojan nuevamente los datos a fin de reflejar sus cambios. Gracias a las instantáneas no hace falta una sobrecarga tan excesiva de las instantáneas de la base de datos. Las computadoras, o nodos en un entorno de base de datos distribuida, actuarán como clientes y servidores en función de si están solicitando los datos de otra base de datos en un nodo diferente o de facilitar datos a un nodo distinto que así lo soliciten. Cada sitio es autónomo, es decir, administrar de forma independiente. Las bases de datos son distintos, las entidades separadas que comparten sus datos. Los beneficios de la autonomía de la obra son: * Las bases de datos diferentes que cooperaron en el entorno distribuido pueden réplica local de la organización las necesidades y deseos. Esto es especialmente útil en lugares donde puede haber dos organizaciones que necesitan compartir algunos, pero no todos, los datos. Un ejemplo podría ser dos empresas del sector aeroespacial que cooperaron en la plataforma espacial. Es posible que necesiten compartir datos de diseño, pero no quieren compartir la información financiera. * Los datos locales es controlada por el administrador de base de datos local. Esto limita la responsabilidad a un nivel manejable. * El fracaso en un nodo tiene menos probabilidades de afectar a otros nodos. El sistema mundial es al menos parcialmente disponibles en la medida como un solo nodo de la base de datos está activo. No solo fallo pondrá fin a todo el procesamiento o ser un cuello de botella de rendimiento. Por ejemplo, si el nodo de Pittsburgh se cae, no afectará el nodo de Omaha, Omaha, siempre y cuando no requieran ninguno de los datos de Pittsburgh. * La falta de recuperación se encuentra en un nodo para cada. * Un diccionario de datos existe para cada base de datos local. * Los nodos pueden actualizar el software de forma independiente, dentro de lo razonable. Como DBA tendrá que comprender las estructuras y los límites del entorno distribuido si están obligados a mantener un entorno distribuido Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Replicación de base de datos con Oracle El programa de instalación nos muestra la pantalla de bienvenida para la instalación, en este momento tenemos que dar click en siguiente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com REPLICACION DE BASE DE DATOS CON ORACLE Aceptamos los términos y condiciones del programa y pulsamos siguiente, en seguida seleccionamos la ubicación de los archivos de instalación, si queremos instalarlos en otra ubicación podemos seleccionarla pulsando el botón Examinar, después de esto pulsamos siguiente. Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ahora tecleamos una contraseña para los usuarios SYS y SYSTEM, los cuales son los usuarios (dba) administradores en oracle, y pulsamos en siguiente, ahora nos mostrara un resumen de la instalación si estamos de acuerdo con este daremos clic en instalar. Configurando El Servidor Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Ahora editaremos el archivo “C:oracleproduct10.2.0db_1networkadmintnsnames.ora”, y agregaremos las siguientes líneas de configuración (resaltadas en cursiva y negrita) para que el servidor oracle reconozca nuestro servidor remoto, usando una resolución de nombres tns. # tnsnames.ora Network Configuration File: D:oracleproduct10.2.0db_1net workadmintnsnames.ora # Generated by Oracle configuration tools. LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP) (HOST = RAMMSCORP.gateway.2wire.net) (PORT = 1522) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = RAMMSCORP.gateway.2wire.net) (PORT = 1522) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) YOS = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = TCP) (PROTOCOL = TCP) (HOST = yosy1) (PORT = 1521) ) ) (CONNECT_DATA = (SID = XE) ) ) EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC) (KEY = EXTPROC1) ) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) ) Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com Donde YOS es el nombre del servidor remoto que agregamos, es decir un alias, PROTOCOL es el protocolo de comunicación hacia el servidor, HOST es el nombre ó la dirección IP de la computadora que tiene el servidor, PORT indica el numero de puerto al cual se conectara el servidor y finalmente SID que es el nombre de servicio del servidor remoto. De esta manera nos podremos conectar con el servidor remoto usando la nomenclatura de conexión: Usuario/Password@Alias_Del_Servidor:[Puerto] Donde Usuario es cualquier usuario valido del servidor remoto, Password es la contraseña del usuario remoto, @Alias_del_servidor es el nombre que hemos añadido en el archivo de configuración tnsnames.ora, y finalmente el Puerto que indica a que puerto se conectara este parámetro es opcional, por defecto las conexiones se realizan al puerto 1521. Una vez editado y configurado archivo, tendremos que configurar nuestro servidor estableciendo un DBLink ó un enlace a base de datos. Usando la siguiente instrucción: Create database link "Nombre_Del_DBLink" connect to Usuario identified by "Password" using 'HOST[: PUERTO]/SID' De la siguiente instrucción tenemos Nombre_Del_DBLink el cual es un nombre cualquiera para identificar a que base de datos estamos ligados, Usuario el cual debe de ser un usuario remoto valido, Password es la contraseña del usuario remoto, HOST es el nombre ó dirección ip del servidor, PUERTO indica el numero del puerto al que se conectara el parámetro es opcional, el puerto por defecto es el 152, y por ultimo SID es el nombre del servicio al cual se conectara nuestro servidor. La cual nos proporcionara la facilidad de hacer consultas del tipo: Objeto@DBLink Donde Objeto puede ser cualquier tipo de objeto en la base de datos remota y @DBLink es el enlace a la base de datos, de este modo podremos usar las tablas, vistas, triggers y demás objetos en el servidor. Estos pasos de configuración se hacen en los dos servidores para que se puedan comunicar, es decir tenemos que dar de alta el servidor 1 en el servidor 2 y viceversa; además tenemos que dar de alta un DBLink para cada uno de ellos, una vez teniendo configurados los servidores podremos iniciar la replicación. Replicando Datos Ahora antes de replicar los datos tenemos que tener datos, necesitamos tener cuando menos una tabla en la base de datos, ahora crearemos una tabla para hacer esta práctica la cual llamaremos: COMPRAS; la cual estará en el servidor 1 (RAMMS) y será replicada hacia el servidor 2 (YOS). Utilizaremos las sentencias de SQL Plus para crear la tabla con los siguientes campos de la siguiente manera: CREATE TABLE RAMMS.COMPRAS ( CODIGO VARCHAR2 (8 BYTE) NOT NULL, PROVEEDOR VARCHAR2 (30 BYTE) NOT NULL, PRODUCTO VARCHAR2 (45 BYTE) NOT NULL, PRECIOCOMPRA INTEGER NOT NULL, PRECIOVENTA INTEGER NOT NULL, CANTIDAD NUMBER NOT NULL ) Y posteriormente: ALTER TABLE RAMMS.COMPRAS ADD ( PRIMARY KEY (CODIGO) USING INDEX TABLESPACE USERS PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL 64K MINEXTENTS 1 Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com MAXEXTENTS UNLIMITED PCTINCREASE 0 )); Después de crear la tabla agregaremos datos en ella, quedando de la siguiente manera: Ahora realizaremos una consulta desde el servidor 2 (YOS) usando los DBLink, quedando de la siguiente manera: SELECT * FROM COMPRAS@DBLINKRAMMS Arrojando la siguiente información: Como podemos observar la consulta funciona es decir que podemos consultar objetos desde el servidor 2, ahora crearemos en el servidor 1 (RAMMS), una tabla LOG para la replicación de la tabla COMPRAS, con la siguiente instrucción: CREATE MATERIALIZED VIEW LOG ON RAMMS.COMPRAS NOCACHE LOGGING NOPARALLEL; Esta tabla guardara los datos cambiados y actualizara de manera instantánea todas las replicas de la tabla COMPRAS. Ahora desde el servidor 2 (YOS) crearemos nuestra vista materializada para recibir los datos de la tabla original, a este procedimiento de replica se le denomina replica en forma de instantánea o de snapshot, lo haremos usando la siguiente instrucción. CREATE MATERIALIZED VIEW RAMMS.COMPRAS BUILD IMMEDIATE REFRESH FAST ON COMMIT AS SELECT * FROM COMPRAS@DBLINKRAMMS; Ahora en el servidor 2 (YOS), ya disponemos de una copia exacta de la tabla compras del servidor 1 (RAMMS), y se actualizara automáticamente cuando se haga un commit en las transacciones, ahora podemos ejecutar la sentencia: Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
    • www.monografias.com SELECT * FROM COMPRAS; E inmediatamente después podremos apreciar el resultado de la consulta, nótese que en el servidor 2,no existían datos para la tabla COMPRAS de hecho COMPRAS no es una tabla es una ¡vista! De esta manera cualquier cambio realizado en el servidor 1, se verá reflejado inmediatamente en el servidor 2, de esta manera tenemos la información actualizada y lo más importante distribuida en varios nodos al mismo tiempo. Autor: Franco Roldán franco_0108@hotmail.com Para ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com