Implementacion De Servidor De Bases De Datos MySql y Aplicaciones Web En Equipos Diferentes
Hoy debí configurar un servidor de aplicaciones web, muchas de estas aplicaciones utilizan bases de datos para almacenar su información como usuarios, contraseñas, sesiones, backup entre otras cosas. Instalar el servidor de aplicaciones es una labor fácil, lo que no entendía muy bien era ¿como utilizar un equipo como servidor de aplicaciones y utilizar otro equipo para enlazar bases de datos de estas aplicaciones?.
La respuesta es fácil.
Contamos con 2 equipos,
Equipo1 Servidor de aplicaciones
IP 192.168.1.2
En este equipo instalaremos todas las aplicaciones necesarias, en este caso tomare como ejemplo Moodle, para esto requiero de un servidor DNS el cual resuelve el nombre moodle.gnunick.com, también cuento con un servidor WEB el cual aun no tiene soporte para php.
Equipo2 Base de datos de MySql
IP 192.168.1.3
Este equipo solo tendrá las bases de datos de MySql.
Instalación de las aplicaciones
Comenzaremos en el servidor de aplicaciones, dentro de que necesito instalar necesito paquetes como estos: mysql mysql-libs mysql-server mysql-devel php-mysql php-pdo php-adodb php-dba php-devel php-domxml php-embedded php-gd php-odbc php-soap php-xml php-sqlite php-intl php-mbstring.
Digitamos en linea de comandos lo siguiente:
Luego de instalados estos paquetes podremos desplazarnos a el servidor de bases de datos de MySql, en este solo descargaremos paquetes como estos: mysql-devel mysql-apache php-mysql mysql-server.
Digitamos en linea de comandos:
yum -y install mysql-devel mysql-apache php-mysql mysql-server
En este mismo servidor y después de haber instalado MySql iniciaremos el servicio.
Luego de esto habilitaremos la contraseña de root en MySql con el comando mysql_secure_installation.
Nos aparecerá como primera opción si queremos habilitar la contraseña de root y le diremos que si.
Luego de esto nos aparecerán 4 preguntas tales como si queremos eliminar las bases de datos de prueba, o si deshabilitaremos el acceso remoto. En realidad no me interesan mucho estas opciones y personalmente a todas les digo que No.
Finalizada la configuración inicial podremos proceder a ingresar a MySql como usuario root tecleando mysql -u root -p y posteriormente la contraseña que ingresamos para este usuario.
Aplicaciones como la que usaremos de ejemplo (Moodle) exigen en su instalación cosas como crear una base de datos, un usuario y ponerle un password al usuario, en este caso no quiero enfatizar en la instalación de Moodle, solo quiero explicar como se conecta MySql en un equipo a parte de otro con aplicaciones WEB, en realidad las lineas que nos interesan son la que dice CREATE USER moodle@192.168.1.2, en este espacio lo que estamos diciéndole a MySql es que el usuario moodle se conectara desde el servidor de aplicaciones es decir el 192.168.1.2 y en la siguiente linea GRANT ALL ON moodledb.* to moodle@192.168.1.2 le decimos que le concedemos todos los permisos a cualquiera que quisiera conectarse desde el servidor de aplicaciones hasta la base de datos moodledb en el servidor de MySql.
Por ahora finalizamos con el servidor de MySql ahora en el de aplicaciones probaremos que haya conexión desde allí hasta la base de datos remota.
Para esto utilizamos el comando mysql -u moodle -p -h 192.168.1.3 con este le estamos diciendo que queremos conectarnos a una base de datos de MySql que esta en la IP 192.168.1.3 y que nos logrearemos con el usuario moodle, esto es lo mismo que harán muchas de las aplicaciones que usan MySql para poder crear sus tablas dentro de las bases de datos ya creadas para este usuario.
Llego el momento de decirle a mi aplicación cual seria la base de datos a utilizar, muchas de las aplicaciones son similares en el momento de declarar este tipo de cosas, ahora en este caso pondremos en el campo que dice el servidor de la base de datos la IP de el servidor de MySql (192.168.1.3) y el resto de los parámetros como los hayamos declarado en ese mismo.
Así debería haber conexión entre estos.
No hay comentarios:
Publicar un comentario