Documentación del Desarrollo de un proyecto de Base de datos para un Zoológico local. Incluye todos los requisitos que se tomaron en cuenta para su elaboración al igual que la problemática q…Descripción completa
Descripción completa
Descripción: Base de Datos
Descripción completa
Replicacion Base de DatosDescripción completa
base de datos de un acuerio ejemplo
Base de Datos RelacionalDescripción completa
Descripción completa
Descripción completa
Descripción completa
Descripción completa
Fundamentos de base datos, contenido de conceptos basicos, en el curso de base de datos, para posteriormente utilizar microsoft Access 2010. Ojo: Material BasicoDescripción completa
Descripción: documentacion de proyecto base de datos
AIEP DE LA UNIVERSIDAD ANDRES ANDRES BELLO Ingeniería (E) Informática MANTENCION Y PRUEBAS DE SISTEMAS
INFORME DE BB.DD DISTRIBUIDA
AIEP Patricio Carvajal
Curico, Octubre 2011
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
El objetivo de este informe es aprender de que manera y forma funcionan las BB.DD distribuidas en distintas plataformas, en este caso Microsoft Windows y Linux. Teniendo como medio a un software ya desarrollado en Adobe Flex 3 y generando las conexiones pertinentes y modificaciones en dos bases de datos iguales pero en diferentes plataformas. El objetivo principal es que los cambios hechos en una BB.DD se repliquen de forma exacta en la otra base de datos de otra plataforma.
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
2
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
PROCEDIMIENTOS Redireccionamiento Primeramente como parte de los objetivos del proyecto es generar un documento HTML plano para que llame a dos aplicaciones distintas (tareaflex y FlickrGrilla). Se usa un script sencillo de Java para indicarle donde están las dos aplicaciones.
Vista navegador
Vista aplicación
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
3
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Conexión Aplicación con BD remota en Maquina Virtual Para que la aplicación en Flex funcione con la base de datos maestra, que en este caso esta ubicada en la maquina Virtualizada Linux sobre plataforma Microsoft Windows usando la aplicación VMware, se tiene que editar la conexión en la aplicación. El archivo a editar es: Conexionconn.php (en el proyecto Flex)
En este archivo se indica la dirección IP en donde esta alojada la BD y el usuario que la conectara, en este caso un nuevo usuario “root”. NOTA: Muy importante es desbloquear el puerto 3306 del enrutador ya que por este puerto es la comunicación mysql – mysql, la forma de hacerlo varia según el aparato y conexión, si este puerto no esta abierto la base de datos replica no podrá comunicarse con la base de datos maestra.
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
4
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Ahora vamos a crear el usuario “root” en la maquina donde esta la base de datos maestra (Linux - VMware) En consola entramos a MYSQL con: mysql –u root –p y creamos el usuario que podrá conectarse únicamente con el esclavo especificando la IP del esclavo(192.168.0.2) y la base de datos a usar(registroflex).
Con estos pasos ya la aplicación podría estar haciendo cambios en la base de datos maestra (Linux – Vmware).
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
5
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Replicación Base de Datos Maestro – Esclavo (MAESTRO) Configuración Maquinas y BD. Linux (VMware) IP = 192.168.0.2 BD = registroflex (maestra) •
Microsoft Windows IP = 192.168.0.3 BD = registroflex (esclavo – replica) •
Primero hacer cambios en el archivo de configuración de mysql (Linux) para esto en la consola.
Se abrirá un archivo de texto plano con la configuración global de MySQL, aca tenemos que ubicar la siguiente línea:
Y comentarla con un # como sale en la imagen para MySQL pueda escuchar los comandos de la red. Después buscamos en el mismo documento la etiqueta “[mysqld]” y bajo esta ponemos las siguientes configuraciones
Donde: log-bin = ruta donde se guardan los logs . server-id= numero de servidor en este caso 1 por que va a ser el maestro. replicate-do-db=nombre de la base de datos a replicar. binlog-do-db=nombre a buscar en log. Después guardar y cerrar el archivo. Y parar el servicio mysql en consola con Seguidamente iniciar _____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
6
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Ahora necesitamos crear un usuario en el servidor maestro para que el esclavo pueda replicar con los permisos necesarios. Para eso entramos a mysql en la maquina Linux con mysql –u root –p luego creamos el usuario slave(esclavo)
Donde: *.*=reglas se aplican a cualquier base de datos existente Slave= Nombre de usuario que hara la replica %= acepta cualquier petición externa soulseek= password de slave Y refrescamos los privilegios de los usuarios creados con: FLUSH PRIVILEGES; Ahora haremos una copia exacta de la base de datos maestra. Para eso especificamos la BD a trabajar con: USE registroflex; Bloqueamos las tablas para que durante el proceso no se haga ningún cambio con: FLUSH TABLES WITH READ LOCK; Y mostramos el estado de la tabla maestro en el log creado al principio con: SHOW MASTER STATUS;
Acá anotaremos los datos de las dos primeras columnas que nos serán útil para configurar el maestro.(nombre del archivo log y la posición del registro dentro del log) y salimos de mysql con: Exit Ahora extraemos el archivo .SQL para trasladarlo al esclavo con: mysqldump -u root -p --opt registroflex > registroflex.sql Donde: registroflex = base de datos a replicar registroflex.sql = nombre de archivo a generar. _____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
7
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Ahora desbloqueamos las tablas antes bloqueadas. En la consola entramos a mysql con: mysql –u root –p y desbloqueamos las tablas con: UNLOCK TABLES;
Replicación Base de Datos Maestro – Esclavo (ESCLAVO) Ahora en la plataforma esclavo (Microsoft Windows) entramos en consola y entramos a mysql con: Mysql –u root –p Y creamos la base de datos a replicar, debe tener el mismo nombre de la base de datos a replicar en el maestro. La creamos con: create database registroflex; y luego vaciamos la información de la base datos maestra con: mysql -u root -p registroflex < registroflex.sql Suponiendo que el archivo esta en la raíz C: Ahora editaremos el archivo de configuración MySQL(my.ini) de Windows que en este caso se encuentra en la ruta:
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
8
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Abrimos el archivo con bloc de notas y editamos buscando la etiqueta [mysqld], debajo de la etiqueta ponemos lo siguiente:
Donde: Server-id = numero de servidor en este caso 2 por que el master es 1 replicate-do-db= replicar a BD en este caso “registroflex” Guardamos, cerramos y reiniciamos el servicio mysql en las herramientas administrativas de Microsoft Windows. Vamos a la consola de Windows y entramos a mysql con: mysql –u root-p y paramos el esclavo con: SLAVE STOP; Ahora configuraremos los datos del master en el esclavo Windows con:
Donde: MASTER_HOST=IP del Master (Linux VMware) MASTER_USER=Nombre de usuario creado para replica en Master (slave) MASTER_PASSWORD=Contraseña de ese usuario MASTER_LOG_FILE= nombre del archivo BIN anotado en el master (resultado del comando SHOW MASTER STATUS;) MASTER_LOG_POS=Posición en el log para empezar la réplica, anotado en el master (resultado de SHOW MASTER STATUS;) Luego de eso iniciamos el esclavo con: START SLAVE; Y debería ya funcionar la replicación.
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
9
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
Replicación Base de Datos Maestro – Esclavo (PRUEBAS) Primero haremos una prueba en modo consola, el dato va a ser ingresado sin validación alguna, y es solo para probar que la replicación existe, funciona y esta activa. Para eso ingresaremos una fila de datos en el master y en el slave haremos una consulta por la tabla modificada, obteniendo el siguiente resultado.
El dato ingresado se replico casi instantáneamente en el esclavo, sin ocasionar ningún tipo de inconveniente ni mensajes de error. Ahora haremos una prueba desde la aplicación, generando un registro desde la aplicación y viendo los resultados desde el master y el slave. Para eso:
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
10
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS
CONCLUSIONES La replicación se hizo correctamente y sin complicaciones, la configuración hecha en este informe es básica y funcional, se pueden ajustar parámetros extras aparte de l os vistos aca, como tiempo de retardo de réplica, mas usuarios esclavos etc. La aplicación comun de este tipo de BD distribuida seria en respaldos de información en servidores externos para una determinada BD o más.
_____________________________________________________________________ “Informe de BB.DD Distribuida” AIEP 2011
12
AIEP DE LA UNIVERSIDAD ANDRES BELLO INGENIERIA (E) INFORMATICA MANTENCION Y PRUEBA DE SISTEMAS