REPORTE FINAL DE PROYECTO Distribuidor de Artculos Escolares S.A. de C.V.
INTEGRANTES:
ANTONIO DE JESUS MARTINEZ LOPEZ JORGE DE JESUS ESPINOZA MARTINEZ TANYA CASTILLO RODRIGUEZ RICARDO MALDONADO DE LEON VICTOR MANUEL BAUTISTA SANTIAGO JESSICA MARTINEZ VALLE
CD. VALLES SAN LUIS POTOSI A 1 DE JUNIO DEL 2014. DISTRIBUIDOR DE ARTICULOS ESCOLARES S.A de C.V.
Distribuidor de artculos escolares es una empresa encargada de proveer a diferentes instituciones escolares y empresas de la regin de material escolar. Es una empresa localizada en el Municipio de Ciudad Valles San Luis Potos, en la Colonia Miguel de Allende #200. Tiene 10 aos al servicio de la comunidad, cuenta con una sucursal en el municipio.
HERRAMIENTAS SOFTWARE A UTILIZAR EN LA BASE DE DATOS.
Gestor de Base de Datos que se utilizara en la Aplicacin. Al principio de la desarrollo de la aplicacin, se utiliz el manejador de base de datos PostgreSQL, en el transcurso del desarrollo se tuvo problemas al momento de aplicar la configuracin del Mirror; por ese motivo nos vimos a la necesidad de cambiar el manejador de base de datos por MYSQL. Ya que por ms conocimientos. Se utiliz Ubuntu server 12.04, para el manejo de la Base de Datos.
ESTRUCTURA DE LA BASE DE DATOS.
Se hizo el diseo de las estructuras de la base de datos en el software Da en el cual se muestra las tablas con sus respectivas columnas, adems de mostrar la relacin que hay entre cada una de ellas.
Conexin de los 2 servidores mediante SSH. Secure SHell, cuya traduccin sera intrprete de comandos seguro) es un protocolo de comunicacin para controlar un ordenador en remoto a travs de una CLI (Command Line Interface -Interfaz de Lnea de Comandos- tambin llamada: "shell"). Sirve para conectarnos con un ordenador ante el cual no estamos fsicamente, bien porque est en una sala de servidores refrigerada, bien porque no tiene teclado ni pantalla, por ejemplo los que estn apilados en un rack (un armario donde se guardan ordenadores como los servidores web, de correo electrnico, firewalls, etc...).
Se Teclea el comando ifconfig para obtener la direccin ip del servidor al que queremos conectarnos, en este caso nos conectaremos al sv1 desde sv2. En este caso la ip que nos arrojo fue esta: 192.168.1.71 Ahora tecleamos el comando ssh para establecer conexin al sv1. Utilizando el siguiente formato: ssh@ip del serv a conectar Sustituimos obteniendo: ssh@192.168.1.71
Despus de dar enter, nos confirma si queremos conectar al servidor, tecleamos yes, y a continuacin nos pide la contrasea del servidor al que queremos conectarnos en este caso root , damos enter y en un momento nos estaremos conectando. Aqu finalmente nos aparece que nos conectamos exitosamente al sv1. Instalacin de Ubuntu Server en Virtual Box. (Sv1-sv2)
Abrimos el Virtual Box, para despus empezar con la instalacin primeramente instalaremos el servidor 1 (sv1). Damos clic en Nueva despus aparecer un nuevo cuadro de dialogo en el cual seleccionaremos el sistema operativo, se le pondr el nombre, el tamao de la memoria RAM, el DD; despus de configurar todas esas opciones se le da en la opcin crear y automticamente se crea el servidor. DATOS TECNICOS DEL SERVIDOR. Nombre: sv1 1500 RAM 8 GB DD Nombre de la maquina: ubunusv1 Usuario: sv1 Contrasea: root
2. Ahora que ya est el servidor instalado, empezaremos con la configuracin del mismo, primero seleccionaremos la ruta donde encontraremos la ISO de Ubuntu server 12.04, para despus determinarla como modo de arranque y as empezar la instalacin completa.
3. Despus empezara la Instalacin General del Servidor. A continuacin todas ellas.
Abrimos el Virtual Box, para despus empezar con la instalacin primeramente instalaremos el servidor 2 (sv2). Damos clic en Nueva despus aparecer un nuevo cuadro de dialogo en el cual seleccionaremos el sistema operativo, se le pondr el nombre, el tamao de la memoria RAM, el DD; despus de configurar todas esas opciones se le da en la opcin crear y automticamente se crea el servidor.
DATOS TECNICOS DEL SERVIDOR. Nombre: sv2 1500 RAM 8 GB DD Nombre de la maquina: ubunusv2 Usuario: sv2 Contrasea: root
2. Ahora que ya est el servidor instalado, empezaremos con la configuracin del mismo, primero seleccionaremos la ruta donde encontraremos la ISO de Ubuntu server 12.04, para despus determinarla como modo de arranque y as empezar la instalacin completa
3. Despus empezara la Instalacin General del Servidor. A continuacin todas ellas.
Reporte de Configuracin de Replicacin MYSQL.
Los siguientes pasos son para configurar los 2 servidores 1.- Configuramos MySQL para que funcione con cualquier direccin ip modificando un archivo de la siguiente ruta: /etc/mysql/ llamado my.cnf con el sig. Comando: sudo nano /etc/mysql/my.cnf 2.Nos pedir una contrasea de usuario que es con la que nos autentificamos en el servidor y luego modificamos el bind-address poniendo un * donde se encuentra a palabra localhost.
3.Despues nos salimos y reiniciamos el servidor con el comando sudo service mysql restart si no se presentaron errores tendr que salir esto:
Este proceso debe de repetirse para los 2 servidores.
Configuracin del espejeo maestro es clavo CONFIGURACION DEL SERVIDOR MAESTRO: 1.Modificamos el mismo archivo de configuracin con el cual se puso que aceptara cualquier ip, solo que ahora buscaremos una linea llamada server-id
2..- Tendr un # antes lo eliminan en las sig. Lineas: server-id,log_bin,binlog_do_db
3.Poniendo en server id 1 que es para el maestro y en binlog_do_db ponemos la base de datos que nosotros utilizaremos, para nuestro caso tenemos esta: distribuidora_artesc, pero se debe poner la base de datos ala cual le aremos el espejeo, reiniciamos el servidor con el mismo comando sudo service mysql restart
Entramos a mysql con el sig. Comando mysql -u root -p 4.Ponemos nuestra contrasea e ingresamos el sig. comando dando permisos de replicacin en modalidad de esclavo al SV2: GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password';USEmy
5.Donde dice slave_user ponemos el nombre del usuario, con el que aremos la replicacin de la base de datos que con anterioridad le dijimos, despus del del arroba en el % lo dejamos de esa manera ya que le indicamos que se puede conectar desde cualquier ip y por ultimo donde dice password le ponemos la contrasea de dicho usuario que ara la replicacin. 6.Si todo sale bien nos debe de decir Query ok e insertamos el sigiente comando donde de igual manera nos debe de decir lo mismo. FLUSH PRIVILEGES;
7. Usamos nuestra base de datos con use distribuidora_artesc 8. Bloqueamos nuestras tablas contra escritura con: FLUSH TABLES WITH READ LOCK; 9.Miramos el estado del maestro con: SHOW MASTER STATUS;
10. Nos marca la posicion el archivo bin y la base de datos esa pocicion y el archivo lo debemos de escribis en algo para no olvidarlo ya que se ocupara para el esclavo 11.Ahora sacamos la base de datos de mysql con el siguiente comando: mysqldump -u root -p --opt newdatabase > newdatabase.sql Indicando en newdatabase como nuestra base de datos y despus de > el nombre del archivo sql de como quedara por default queda en la carpeta personal del usuario que es: /home/nom usuario/archivo.sql
12.Una ves echo el dum en mysql desbloqueamos las tablas y salimos de mysql del SV1: UNLOCK TABLES; QUIT;
CONFIGURACION DEL SERVIDOR ESCLAVO: 1. Nos conectamos a mysql y creamos una base de datos con el mismo nombre de nuestra base de datos en el SV2, y salimos Create database distrikvuidora_artesc; exit; 2. Hacemos una transferencia con el comando sftp desde el SV2 al Sv1 usando: sftp user@dir_ip Donde user es el usuario del SV1@la direccion ip del servidor y despues ponemos su contrasea Despues extraemos el archivo del SV1 con el comando get el nombre del archivo
Ya lo tenemos en nuestro SV2 y podemos usarlo poniendo el sig. comando: mysql -u root -p newdatabase < /path/to/newdatabase.sql Teniendo entendido que despues de -p se pone el nombre de la base de datos que hemos creado y /path/to/ es donde se encuentra el nombre del archivo, junto con el nombre y la extencion del archivo que en este caso es sql. 3. Despues de que todo aya salido bien salimos de mysql y configuramos el archivo my.cnf que hemos modificado en el maestro o SV1 pero en este caso para el segundo SV Poniendo: server-id = 2 relay-log = /var/log/mysql/mysql-relay-bin.log log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = newdatabase Al no encontrar el relay-log lo creamos la linea de codigo en el mismo archivo dando como resultado esto:
Conexion sftp Contrasea del usuario Mostramos los archivos esxitentes con Solicitamos el archivo con get y listo
Guardamos el archivo y reiniciamos el servidor con el mismo comando que usamos para el otro servidor quedando asi: sudo service mysql restart
4. Por ultimo detenemos mysql del SV2 con el sig comando: stop slave; 5.Depues utilizamos el sig comando para hacer el espejeo: CHANGE MASTER TO MASTER_HOST='12.34.56.789',MASTER_USER='slave_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS= 107; Poniendo en MASTER_HOST la ip del maestro, MASTER_USER el usuario, MASTER_PASSWORD su contrasea, MASTER_LOG_FILE el archivo log (muy importante este debe de ser de la primera ves que revisaron el estatus del maestro ya que desde ah ara los cambios), MASTER_LOG_POS y la posicion del mismo log. 6.Si todo sale bien aqu deben de iniciar el esclavo que es el que detuvieron a ora usan el comando start slave; . Para iniciarlo 7.Despues ponen SHOW SLAVE STATUS\G y debera mostrar el espejeo y de donde lo esta recibiendo debera quedar de esta manera Aqu va el nombre de su base de datos a replicar
Configuracin Master-Master
Este tipo de configuracin se subi a YouTube. A continuacin adjuntamos la URL del video. http://youtu.be/7rIyqtLFZRU