MySQL essentials para Windows Print
SOFTWARE - Servidores
Thursday, 19 February 2009 15:37
There are no translations available.

Este artículo pretende aportar una visión general, gráfica y directa de la instalación y configuración de MySQL SERVER...

 

1. Objetivos

Este artículo pretende aportar una visión general, gráfica y directa de la instalación y configuración de MySQL SERVER con el paquete de instalación ESSENTIALS sobre Windows, así como una breve introducción a las funcionalidades de las herramientas asistenciales MySQL GUI TOOLS.

El contenido cuenta con una guía paso a paso, acompañada de las explicaciones pertinentes sobre los conceptos fundamentales que se precisan para la implantación y de una serie de imágenes que permiten al lector seguir los pasos dados de forma casi asistida.

Pretende, de esta forma, ser una sencilla referencia para cualquier profesor a la hora de implantar MySQL en su centro de trabajo sobre el Sistema Operativo Windows, ya sea para la práctica docente, como para la realización de aplicaciones que precisen un sistema gestor de base de datos relacionales flexible y de fácil mantenimiento.

2. Introducción

MySQL es un sistema gestor de bases de datos relacionales "open source" o de código abierto extendido por todo el mundo en especial por su uso en el desarrollo web, pero también utilizado por grandes empresas como Yahoo o Google.

Las principales ventajas de MySQL son: Su flexibilidad y escalabilidad respecto a las características de la plataforma en la que se implanta, la capacidad de ofrecer una alta velocidad en la manipulación de datos y a la vez resguardar la seguridad e integridad referencial de la información a través de un fuerte control de transacciones, así como su sencillez y facilidad de aprendizaje.

Por último, es preciso destacar algo fundamental que hace que muchos se decidan por este gestor de base de datos frente a otros: que su coste es cero y está bajo la licencia GPL de software libre.

A nivel técnico es sencillo encontrar documentación sobre MySQL en Internet, destacando en especial la incluida en la página oficial de MySQL http://dev.MySQL.com. En ella también se puede encontrar el manual de referencia traducido a español de la versión 5.0 y la página de descargas que permite a cualquier usuario de Internet adquirir el paquete de instalación que más convenga a su proyecto de implantación, en la actualidad la versión 6.0 se proporciona en su versión alpha.

3. MySQL Essentials para Windows

La plataforma operativa más habitual de MySQL es UNIX o Linux en todas sus distribuciones y en la mayoría de los casos acompañado por los otros componentes de la LAMP (Linux, Apache, MySQL, PHP/Perl/Phyton). Por supuesto, también existe la correspondiente plataforma WAMP en la que se sustituye el sistema operativo Linux por Windows.

En la actualidad, la versión de MySQL para Windows es muy estable y presenta sólo ligeras limitaciones respecto a la de Unix o Linux.

Las razones para instalar MySQL en Windows con este sencillo paquete de Instalación (ESSENTIALS) son las de poder trabajar con el sistemas gestor de bases de datos independientemente de la instalación de Apache y de PHP, sobre un sistema operativo que en sus diferentes versiones (98, XP, 2000, Vista, etc.) esta implantado en muchos centros educativos para soportar determinadas aplicaciones creadas para esta plataforma. Además, tener MySQL instalado en varias plataformas permite poder trabajar de forma local y luego importar el trabajo realizado a otro sistema diferente o a un alojamiento de servidor, ya que otra de sus características es su alta portabilidad y su capacidad de migración desde otros sistemas gestores de bases de datos.

La instalación, configuración y modo de trabajo son comunes a todas las plataformas, distinguiéndose en leves diferencias; ya que la comunidad MySQL intenta publicar sus versiones definitivas para la mayoría de sistemas operativos de forma paralela.

4. Instalación y Configuración Paso a Paso

Desde la página de descargas oficial de MySQL, el lector puede escoger la versión que desea descargarse, el sistema operativo para el que fue diseñada y la forma de descarga: archivo comprimido, paquete de instalación o archivo comprimido no instalable. Se recomienda a todos los usuarios el paquete de instalación.

El archivo comprimido instalable posee un fichero setup.exe que inicia el asistente de instalación. Por otro lado, el archivo comprimido no instalable precisa de un fichero de opciones y su objetivo es el de la realización de instalaciones automáticas, obviamente dirigido a usuarios avanzados.

En este caso hemos descargado el paquete instalable para realizar la instalación con la herramienta asistencial MySQL ESSENTIAL, que instala la versión de MySQL Server 5.1 en su release 5.1.30. La instalación y configuración de las versiones 5.x son similares.

4.1 Instalación MySQLServer

Paso 1.

Una vez descargada la versión correspondiente, iniciamos la instalación a través del asistente.

Instalacion Paso 1 Imagen 1

Avanzamos a la siguiente pantalla, pudiendo escoger entre las opciones Typical, Complete y Custom. La instalación Típica está recomendada para los usuarios que desconocen los parámetros de instalación e instala MySQL SERVER con los valores por defecto. Si seleccionamos la instalación completa instalará en disco todos los componentes en los directorios predeterminados.

Por último, la opción personalizada o Custom es la recomendada a los usuarios avanzados pues muestra los parámetros de forma que puedan ser modificados.

Es esta última opción, la Personalizada, la que seleccionamos para poder observar qué componentes del servidor MySQL y dónde los está instalando el asistente.

Instalacion Paso 1 Imagen 2

Paso 2

La instalación incluye la creación de un directorio en el que se instalará el servidor y una carpeta para los datafiles o ficheros de datos. Los componentes del servidor, cliente y librerías los instalará por defecto en la carpeta Program FilesMySQLMySQL Server 5.1 y los datafiles en ProgramDataMySQLMySQL Server 5.1.

En principio la única opción que no está activa por defecto es la instalación de las librerías, es decir, las carpetas lib e include con el código fuente. Tanto esta, como el resto de opciones pueden ser instaladas totalmente en disco, sólo cuando se requiera su uso por primera vez u omitir directamente su instalación.

Pulsando el comando Change podremos cambiar el directorio de almacenamiento de instalación por defecto del servidor, los programas cliente y las librerías.

En esta caso pulsamos Next con las opciones por defecto.

 

Instalacion Paso 2 Imagen 3

Paso 3.

Como podemos observar, nos muestra los destinos elegidos en la siguiente pantalla, si es necesario cambiarlos porque hemos previsto otras carpetas de instalación o no están dados los permisos de escritura y ejecución correspondientes, se puede volver a la pantalla anterior con Back.

En cualquier caso, ya es sólo necesario pulsar Install.

Mientras se realiza la instalación se nos muestran las posibilidades de MySQL Enterprise, la versión de MySQL más completa dirigida especialmente para empresas.

Instalacion Paso 3 Imagen 4

Instalacion Paso 3 Imagen 5

Paso 4

Una vez realizada la instalación nos dará la posibilidad de Configurar el Servidor iniciando el asistente de forma automática. Esta opción estará disponible también después de la instalación como MySQL Server Instance Config Wizard como veremos en el apartado de mantenimiento y también puede ejecutarse desde la línea de comando del sistema operativo con la orden MySQLInstanceConfig.exe. Con cualquiera de las tres posibilidades iniciamos el asistente de configuración MySQL Server Instance.

En este caso aprovechamos que la opción de inicio de la Configuración está activada para iniciar el asistente.

Instalacion Paso 4 Imagen 6

4.2 Configuración de MySQL Server

Paso 1

Podemos elegir entre la instalación Estándar y la Detallada. La versión Estándar únicamente pedirá valores para las opciones de configuración del Servicio (Paso 8) y las opciones de seguridad o modo de conexión (Paso 9); está indicada para usuarios no avanzados que desean implantar el servidor con los parámetros por defecto.

La versión Detallada permite al usuario adaptar la configuración a las premisas de su entorno de implantación, para ello es preciso tener claro el objetivo o fin para el que se utilizará la base de datos, pues es fundamental a la hora de configurar ciertas opciones.

En esta guía vamos a utilizar la opción de configuración Detallada.

Configuracion Paso 1 Imagen 7

Configuracion Paso 1 Imagen 8

Paso 2

Dentro de la configuración detallada, lo primero que debemos escoger es el tipo de servidor en el que vamos a alojar el sistema gestor de base de datos dependiendo del uso que vamos a hacer de este y de los recursos de que va a disponer para su ejecución. Existen tres posibilidades:

  • Developper Machine: MySQL va a convivir con otras aplicaciones que no conforman un servidor en su conjunto. Normalmente se aplica para uso local o redes de poca extensión. Los recursos destinados al servicio serán los mínimos necesarios.
  • Server Machine: MySQL va a convivir con otros servicios como el alojamiento de ficheros, el envío de correo electrónico, el servicio de páginas web,etc..., formando un conjunto o plataforma de servidor. Los recursos estarán compartidos entre los servicios existentes.
  • Dedicated MySQL Server Machine: MySQL está alojado en un servidor dedicado y por tanto es el único servicio que corre en la máquina y todos los recursos del sistema estarán destinados a su funcionamiento.

En este caso seleccionamos la primera opción, ya que es probable que un entorno docente de trabajo existan otras aplicaciones destinadas a diversos fines ya instaladas en el equipo anfitrión.
Si el usuario estuviese implantando un servidor web, puede escoger la segunda opción para instalar cada uno de los servicios por separado, esta es una práctica excelente en módulos sobre implantación de aplicaciones.

Configuracion Paso 2 Imagen 9

Paso 3

Después debemos escoger el tipo de almacenamiento de los datos. Esto dependerá del destino o fin al que vaya dirigida la instalación.

Existen dos términos especiales que hay que explicar en este apartado antes de que usted elija: Tablas MyISAM e InoDB.

  • Las tablas MyISAM son la adaptación de MySQL de una tecnología que manipula los datos a gran velocidad, pero sin tratamiento de las transacciones. Es recomendable para las tablas de la base de datos en las que se van a producir mayor número de consultas que cualquier otro tipo de operación. Es muy recomendable para tablas de acceso o visualización en un sitio web. Ignoran las restricciones de claves ajenas por lo que no son recomendables si vamos a establecer unas relaciones estrictas a través de claves foráneas (foreign key).
  • Las tablas con tecnología de almacenamiento InoDB tienen un alto control de las transacciones que se realizan en ellas, por lo que aumenta la seguridad e integridad de los datos pero disminuye la velocidad de acceso a ellos. Es recomendable para las tablas en las que se realizan actualizaciones en la que se precisa controlar que estas se realicen correctamente.

En base a estas tecnologías soportadas por MySQL, las tres opciones entre las que podemos elegir son:

  • Base de Datos Multifuncional. Por tanto esta base de datos almacenaría tanto tablas con control de transacciones InoDB como tablas de acceso rápido MyISAM, compartiendo los recursos entre las dos alternativas. Es la opción recomendada por defecto.
  • Base de Datos Transaccional: Sus tablas deben controlar las transacciones de forma segura no importando tanto la velocidad de acceso. Por ello el almacenamiento por defecto será InoDB, pudiendo el usuario configurar en tablas concretas el almacenamiento MyISAM.
  • Base de Datos No Transaccional: Prima la velocidad de acceso a la información contenida en sus tablas, por lo que por defecto el almacenamiento será MyISAM. En este caso el usuario no podrá posteriormente seleccionar la tecnología InoDB sin volver a configurar la instancia, para ello es recomendable hacer previamente una copia de seguridad de la base de datos.

En este caso concreto escogemos la primera opción de forma que podamos optar por el uso uniforme de tablas con las dos tecnologías de almacenamiento y en prácticas posteriores que alumnos puedan comprobar las consecuencias de escoger entre el diseño de tablas MyISAM e InoDB.

Configuracion Paso 3 Imagen 10

Paso 4

Para el almacenamiento InoDB se precisa que escojamos el directorio de alojamiento para situar el espacio de almacenamiento de tablas (tablespace para los profesores que esten habituados al término con Oracle). Si hubiéramos escogido el tipo del almacenamiento no transaccional sólo con tablas MyISAM este paso no sería necesario. Si estamos haciendo una reconfiguración del servicio podremos cambiar la ubicación de los tablespace InoDB con la opción Modify.

En este caso dejamos la ubicación por defecto.

Configuracion Paso 4 Imagen 11

Paso 5

En la siguiente pantalla es necesario escoger el numero de conexiones o accesos concurrentes posibles a los datos del servidor de bases de datos. Existen tres opciones disponibles:

  • Decision Support a través del proceso OLAP, es la opción predeterminada. El control de conexiones se hará a través de un servicio de decisión optimizada que permite hasta 100 conexiones simultaneas con un promedio de 20 para un servicio óptimo.
  • Online Transaction Processing soportado por el proceso OLTP que permite hasta 500 conexiones simultaneas.
  • Manual Setting en el que el usuario decide cuántas conexiones se van a realizar de forma manual.

En nuestro caso hemos elegido la primera. Si fuese el caso de un servidor web que da servicio a una aplicación que puede utilizar todo el centro educativo sería recomendable la OLTP. Por otro lado, si lo que se quiere es realizar prácticas con los alumnos es posible, con la tercera opción, establecer de forma manual el número de conexiones en función del número de alumnos asistentes.

Configuracion Paso 5 Imagen 12

Paso 6

En esta pantalla, podemos elegir la configuración del acceso por red. Puede desactivarse el protocolo TCP/IP cuyo puerto de acceso por defecto es 3306. Se puede cambiar el puerto sobre todo si tenemos varios servicios MySQL ejecutándose en el mismo servidor. Además, en el caso de Windows, se puede añadir una regla al firewall del sistema para poder iniciar el servicio remoto de forma segura.

Por otro lado, en esta pantalla podemos elegir si queremos un comportamiento similar a los sistemas gestores tradicionales respecto al tratamiento del lenguaje SQL Estándar, aun escogiendo esta opción por defecto, MySQL es un sistema que utiliza el lenguaje SQL con cierta flexibilidad.

En este caso, imaginándo que sólo tenemos instlada esta instnacia de MySQL dejamos el puerto por defecto y habilitamos el modo estricto de SQL, que es el que se suele impartir en los centros educativos.

Configuracion Paso 6 Imagen 13

Paso7

Debemos escoger el juego o colección de caracteres de trabajo. Por defecto está activo Latin1 que permite todos los caracteres anglosajones y la mayoría de los lenguajes europeos de la Europa Occidental. En segunda opción podemos escoger el juego de caracteres UTF8 multilingüe y como alternativa escoger de forma manual uno de los juegos que están incluidos en la instalación.

En este caso dejamos la opción de Latin1 por defecto.

 

Configuracion Paso 6 Imagen 14

Paso 8

Este es el primer paso en común entre la configuración Estándar y la Detallada. En esta pantalla debemos configurar el servicio que como tal se va a instalar en Windows.

Podemos cambiar el nombre del servicio para que nos sea más sencillo identificarlo, y sobre todo si vamos a tener varios servicios MySQL corriendo en el mismo servidor. Una vez instalado podremos acceder a él a través del Sistema Operativo.

Podemos también escoger que lo inicie automáticamente cuando se inicie el sistema y que nos incluya el directorio de MySQL en el PATH de MSDOS, para poder trabajar en modo línea de comando desde el Sistema Operativo.

Configuracion Paso 8 Imagen 15

De nuevo, nos ponemos en el caso de que esta es la única instancia de MySQL que corre en nuestro servidor por lo que dejamos en nombre por defecto del servicio y activamos la casilla que permite ejecutar los comandos de mysql desde MSDOS.

Paso 9

En este último paso se configura el modo de conexión. Es primordial introducir una contraseña para el usuario administrador root. Es posible crear otros usuarios administradores, pero la existencia de una cuenta root es obligatoria y además está creada por defecto. Podemos desactivar la opción de modificar la contraseña, pero sería crear un alto grado de vulnerabilidad en nuestra base de datos, por lo que es recomendable introducir la contraseña en este paso y establecer un protocolo de cambio de la misma según los parámetros de seguridad que se deseen implantar.

Además podemos seleccionar la opción de conexión desde acceso remoto a la administración del servidor.

En nuestro caso la seleccionamos para poder administrar el servicio desde otros puestos, aunque esto suponga cierto nivel de inseguridad para el sistema, pero permitirá realizar prácticas de administración remota entre los distintos alumnos. En cuanto a la contraseña se recomienda, desde mi experiencia personal, un sencilla para hacer las prácticas y común para todos los servidores que instalen los alumnos ya que facilitará la movibilidad y acceso entre los equipos a la hora de hacer las prácticas.

Por último, es posible crear una cuenta anónima, advirtiéndonos del futuro problema de inseguridad que conlleva esta decisión, ya que permite el acceso a todas las tablas del sistema. Esta opción sólo debería marcarse si la base de datos es de pruebas o prácticas y cualquiera puede administrar y manipular sus tablas.

Configuracion Paso 9 Imagen 16

Paso 10

Una vez establecida la configuración, el asistente mostrará los pasos a seguir para configurar la instancia: Preparar la configuración, escribir el fichero de configuración (my.ini), iniciar el servicio sobre Windows y aplicar las opciones de seguridad. Para que estas tareas se lleven a cabo es preciso pulsar Execute.

Como puede observarse, las tareas son correctas si el botón de radio correspondiente se chequea en azul. Junto a la segunda tarea aparecerá la ruta en la que se almacena el fichero my.ini. Si alguna tarea no pudiese ejecutarse aparecería chequeada en rojo y no seguiría con el proceso, pudiendo volver hacia atrás con Back en la configuración o cancelar esta con Cancel. SI todo ha resuktado correcto, pulsaremos Finish.

Es posible que la última tarea de aplicación de la configuración de seguridad no se ejecute correctamente debido a la propia configuración del sistema operativo. En ocasiones en los sistemas operativos con firewall instalado y activo es posible que se nos pregunte si debemos permitir siempre esa instancia, de esta forma evitamos que en este paso de la instalación se produzca un error.

Si alguna de la tres primeras tareas no se ejecutase, el servidor quedaría inutilizado, en ocasiones un error en la aplicación de los parámetros de seguridad no conlleva que el servidor se haya configurado correctamente si no una imposibilidad de acceso en ese momento por múltiples razones.

Errores comunes que deben subsanarse antes de comenzar la instalación son no tener permisos de escritura sobre la carpeta o disco destino, tener un servicio MySQL ya ejecutándose por una instalación anterior o tener activado un firewall que impida aplicar la configuración de seguridad.

Configuracion Paso 10 Imagen 17

Configuracion Paso 10 Imagen 18

4.3 Mantenimiento y desinstalación

Es posible desinstalar el servicio o instancia instalada a través de la opción MySQL Server Instance Configuration Wizard que se ha creado en el menú de programas dentro de la carpeta del menú llamada MySQL

Si pulsamos reconfigurar (Reconfigure Instance) se iniciará la configuración desde el Paso 1. Si pulsamos Remove desinstalará el servicio y podremos instalarlo de nuevo desde la misma opción.

Mantenimiento Imagen 19

Para mantener el Servidor de MySQL podemos volver a ejecutar el paquete de instalación MySQL ESSENTIAL y nos mostrará la siguiente imagen. Podremos escoger modificar para cambiar los parámetros escogidos en la instalación, que realice una reparación automática o desinstale. Esto conlleva la eliminación completa de todos los archivos y el servicio de MySQL de nuestro sistema.

Mantenimiento Imagen 20

5. Modo de Trabajo

Una vez instalado, se habrá creado el directorio MySQL en la ruta que especificamos en el Paso 2 de Instalación del Server.

En el directorio de MySQL debemos encontrar los siguientes directorios:

  • Bin: En el se encuentran todos los ejecutables necesarios para el funcionamiento del sistema gestor de base de datos.
  • Include: Contiene las librerías creadas en C (con extensión h). Se puede acceder directamente al código fuente con cualquier editor de texto
  • Lib: Almacena las librerías ya compiladas que se precisan para la ejecución de la aplicación.
  • Share: Encontramos directorios con los mensajes de error adaptados a distintos idiomas. Además se pueden ver algunos códigos fuentes fundamentales para la puesta en marcha de la base de datos.

Además debemos tener un directorio data en el que se almacenan los datafiles organizados por esquemas, que estará creado en la ruta que especificamos para este tipo de archivos en el Paso 2 de Instalación.

Si establecimos que el servicio MySQL arrancará automáticamente, este estará activo y podremos comprobar su funcionamiento en Panel de Control->Herramientas Administrativas-> Servicios. Podremos escoger su estado y su forma de arranque (automática o manual), así como iniciarlo o detenerlo. Además desde MSDOS podremos parar el servicio con net stop MySQL y reiniciarlo con net start MySQL.

Para quitarlo, por ejemplo para instalar una versión más reciente de MySQL, podemos utilizar el comando propio de MySQL: mysqld - -remove o desde el del sistema operativo: sc delete MySQL.

Por otro lado se habrá creado un menú de acceso en el menú de programas que incluirá dos aplicaciones fundamentales:

  • MySQL Server Instance Configuration Wizard opción de la cual hemos hablado en el apartado de Mantenimiento y desinstalación.
  • MySQL Command Line Client: Abre la terminal cliente de acceso a MySQL Server a través de las ordenes propias de MySQL y de SQL estándar. Al ejecutarlo es preciso introducir la contraseña de root que establecimos en la Configuración, concretamente en el Paso 9.

Podemos ejecutar la sentencia show databases para que muestre los esquemas actuales, que en principio deben ser information_squema, MySQL y test. Los dos primeros esquemas pertenecen al sistema gestor de la base de datos, el esquema test está vacío y permite al administrador crear tablas y objetos de prueban en él.

Mantenimiento Imagen 21

Mantenimiento Imagen 23

En el command line podemos trabajar en modo de trabajo terminal. Para salir podemos utilizar los comandos quit o exit.

6. Introducción a las Herramientas GUI Tools

Este paquete de instalación que también se puede adquirir de forma gratuita desde la página de descargas de la página oficial de MySQL, es un conjunto de herramientas que permiten la gestión y manipulación de la base de datos de forma sencilla y con variadas alternativas de funcionamiento.

Se puede escoger el paquete de instalación asistida para Windows, al igual que hemos hecho con el Essential de MySQL. La instalación es realmente sencilla:

Paso 1

Ejecutamos el paquete de instalación MySQL-gui-tools, aceptamos las condiciones y escogemos el directorio de instalación que por defecto coincide con el predeterminado en la instalación del Server con MySQL Essentials.

Gui Tools Imagen 25

Gui Tools Imagen 26

Gui Tools Imagen 27

Paso2:

Escogemos el tipo de instalación, la opción completa es recomendable. La personalizada nos permite escoger los componentes de forma separada. El botón Space permite comprobar el espacio en disco disponible y la opción Change cambiar el directorio de instalación de cada componente. Por defecto se instala todo.

Gui Tools Imagen 28

Gui Tools Imagen 29

A continuación se describen cada una de estas herramientas brevemente, ya que especialmente, las herramientas Administrator y Query Browser, precisarían un tratamiento especial fuera de este artículo debido a la gran cantidad de alternativas y utilidades que ofrecen a la hora de hacer prácticas con los alumnos:

MySQL System Try Monitor:

Esta herramienta permite arrancar y parar el servicio, así como monitorizar y parametrizar las distintas instancias de MySQL si tenemos varios servidores instalados y además es un camino rápido para ejecutar el Administrator y la herramienta Query Browser. Al ejecutarlo aparece un pequeño icono en la parte inferior derecha de la barra de tareas de windows:

Gui Tools Imagen 30

Al pulsar sobre él con el botón de la derecha del ratón aparece el siguiente menú contextual:

Gui Tools Imagen 31

MySQL Administrator:

Permite administrar todo el gestor y los distintos esquemas de la base de datos. Al ejecutarlo aparece una pantalla de control de acceso:

 

Gui Tools Imagen 32

Una vez que hemos accedido, la herramienta de administración nos permite de forma asistida realizar multitud de operaciones como control del servicio, gestión de usuarios, creación y restauración de copias de seguridad o gestión de los catálogos creados en la base de datos. En este caso se muestra la pantalla en la que podemos ver la información de la propia base de datos almacenada en el Catálogo o Esquema llamado Information_schema. De forma sencilla y sólo pulsando el botón de la derecha sobre la lista de catálogos podremos crear nuevos esquemas y tablas.

En este caso observamos que daemás de los esquemas creados por defecto existe uno creado para una práctica llamado proacademia.

Gui Tools Imagen 33

MySQL Query Browser:

Permite utilizar el lenguaje SQL con diversas utilidades de edición y ejecución sobre las tablas de los esquemas creados. Al ejecutarlo es preciso rellenar una pantalla de acceso especificando el esquema que queremos gestionar.

En la imagen hemos escogido proacademia como esquema de entrada.

Gui Tools Imagen 35

Una vez que estamos dentro tenemos multitud de opciones y herramientas útiles para el desarrollo y programación como editores de consultas y script, árbol de esquemas, tablas y campos, cuadro de edición de registros, creación asistida de funciones y procedimientos, acceso al command line, ayuda en línea...

En este caso hemos explorado en el esquema proacademia, la tabla pyusu y realizado en una consulta que no ha devuelto resultados.

Gui Tools Imagen 36

MySQL Migration Tool Kit:

Permite la migración de bases de datos de otros gestores a MySQL de una forma muy sencilla. Es la herramienta más potente respecto a portabilidad y además muy sencilla de manejar. Nos permite migrar estructuras, objetos y datos entre plataformas de gestión de base de datos muy diferentes como Oracle o Access. Por ello vamos a realizar una práctica de ejemplo en el apartado 7.1 con esta herramienta, de forma que se pueda observar el proceso de migración paso a paso con un supuesto concreto.

7. Aplicación en el entorno docente

El sistema gestor de base de Datos MySQL es adaptable para impartir clases en módulos o asignaturas que tengan relación tanto con desarrollo de bases de datos, como con desarrollo web o programación orientada a servidor. Por su puesto, la instalación, configuración y administración es muy aconsejable en los módulos cuyo perfil profesional tengan relación con la implantación de software. Por otro lado es una herramienta sencilla para aproximar a alumnos del segundo ciclo de la ESO y de BACHILLERATO al manejo de las bases de datos.

En cuanto a la realización de aplicaciones relacionadas con los centros educativos es una herramienta eficaz, flexible y gratuita y estas tres ventajas prevalecen frente a otras opciones. MySQL está incluido en la mayoría de alojamientos web y es la base de datos utilizada por aplicaciones o gestores de contenidos ya creadas como Moodle o Siesta.

Respecto a la instalación de las herramientas MySQL Gui Tools (Administrator, Query Browser, Migration Tool-Kit y System TRy Monitor), es recomendable para la utilización de las base de datos en el entorno docente de forma muy flexible, ya que facilita, a través de asistentes y menús, la gestión de toda la información, teniendo siempre como alternativa el uso de la línea de comandos, pero con la ventaja de que estas herramientas tienen un entorno más atractivo y que los alumnos asimilan muy rápidamente.

7.1 Ejemplo práctico de Práctica de Migración desde Access a MySQL para Windows

Esta práctica ha sido elaborada pensando en una integración de MySQL en las asignaturas o módulos cuyos objetivos incluyen el estudio o la referencia al gestor de base de datos Ms Access y otros gestores similares. Por ejemplo, es posible encontrar esos contenidos en los módulos de Informática de la ESO y BACHILLERATO y por supuesto, en ciertos módulos específicos de Ciclos de Formación Profesional.

Este supuesto permite, de forma muy sencilla, importar una base de datos creada en Ms Access al entorno MySQL, de forma que posteriormente pueda importarse a un alojamiento de servidor web.

Fase 1 de la Práctica:

En primer lugar todos los alumnos deberán realizar una instalación local del servidor MySQL y de la herramientas Gui Tools de forma asistida por el profesor como ya hemos visto en este artículo. Durante esta fase o proceso los alumnos podrán aprender mucho sobre los parámetros de instalación y configuración que precisa un gestor de base de datos y se familizarán con los paquetes asistenciales de MySQL.

Fase 2 de la Práctica:

Los alumnos deberan realizar además una base de datos en Ms Access, si no tienen creada una. En este caso tenemos una base de datos liguilla.mdb que gestiona los partidos de la liguilla de fútbol del Instituto. Consta de tres tablas y se han establecido las relaciones entre ellas para poder gestionar los equipos, jugadores y partidos que se juegan en este curso escolar.

Fase 3 de la Práctica:

  1. Iniciamos la herramienta Migration Toolkit

  2. Gui Tools Imagen 38

    Deberá estar ejecutándose el servicio de MySQL así como inicializado el motor de Java, si no se pudiera inicializar este último nos daría la posibilidad de instalarlo de nuevo. Pulsamos Next.

  3. Escogemos el tipo de migración Directa y pulsamos Next.

  4. Gui Tools Imagen 40


  5. Ahora debemos escoger el Sistema Gestor de Base de Datos desde el que debemos migrar. Podremos escoger entre varios como Sysbase, Oracle o MsAccess....

     

    En nuestro caso escogemos MsAccess que el sistema con el que hemso creado la base de datos liguilla.

    Una vez seleccionado nos aparecerá un formulario para escoger el archivo o esquema correspondiente a la migración, así como el usuario y contraseña de acceso, que será un usuario del propio sistema Windows. No es obligatorio establecer usuario y contraseña si tenemos acceso a Ms Access.

    En el caso de esta práctica, escogemos nuestro fichero liguilla.mdb

  6. Gui Tools Imagen 42

  7. Ahora hay que escoger el servicio o instancia MySQL que va a ser el destino de la Migración, para ello hay que establecer la dirección IP o nombre del equipo.

     

    En este caso es suficiente con localhost ya que es en el propio equipo, el puerto, por defecto 3306 si sólo tenemos una instancia instalada y no hemos cambiado el puerto en la configuración. Es necesario también insertar un usuario administrador: root, y la contraseña establecida en la configuración. Una vez establecido esto pulsamos Next y se deberá mostrar la ejecución de esta fase de conexión:

  8.  

    Gui Tools Imagen 44

    Gui Tools Imagen 46

     

  9. En esta pantalla debemos escoger el esquema que queremos migrar. Si hubiese varios esquemas deberíamos escoger uno, por ejemplo en el caso de Oracle es posible que para una migración se mostrasen varios esquemas.

    En el caso de MsAccess tendremos sólo el esquema correspondiente al archivo con extensión mdb que hemos escogido y pulsamos Next para ver la progresión de esta fase en la que se comprueba que es posible la migración del esquema.

  10. Gui Tools Imagen 48

    Gui Tools Imagen 50

     

     

  11. En esta fase es posible ignorar objetos contenidos en el esquema y que no queremos migrar.

    En nuestro caso vamos a migrar las tres tablas existentes (equipos, jugadores y partidos).

    En la siguiente pantalla escogemos el tipo de Migración que en este caso sólo puede ser genérica (Generic ) y por último observamos que el proceso de migración de los objetos se realiza correctamente.
  12. Gui Tools Imagen 52

    Gui Tools Imagen 54

    Gui Tools Imagen 56


  13. En esta pantalla podemos observar los tipos y nombres de los objetos, así como los posibles problemas surgidos, tras la migración:

  14. Gui Tools Imagen 58


  15. En esta fase se inicia la creación de los objetos y nos da la opción de crear un script en SQL que nos permita observar el código que se utiliza para la creación del esquema en MySQL.

    Es una práctica recomendable pues los alumnos podrán observar posteriormente abriendo ese archivo el código fuente SQL y si este lenguaje es parte de los contenidos de la asignatura o módulo podrán reconocer los distintos tipos de sentencias ejecutadas. Podremos observar si esta fase de creación de objetos se realiza correctamente en la siguiente pantalla y posteriormente de nuevo el cuadro de diálogo mostrando los errores posibles y los objetos creados.

  16. Gui Tools Imagen 60

    Gui Tools Imagen 62

    Gui Tools Imagen 64


  17. Este paso del proceso permite migrar la información o datos ya almacenados en los registros. Podemos también crear un script como se ha hecho anteriormente con la creación de los objetos. En este caso grabará los INSERT utilizados para insertar los datos migrados.

    De nuevo, se recomienda su creación si los alumnos están aprendiendo o conocen el lenguaje SQL como práctica de reconocimiento de sentencias y tipos de valores. En la pantalla posterior podremos ver las fases de ejecución como ha ocurrido durante todo el proceso.

  18. Gui Tools Imagen 66

    Gui Tools Imagen 68
  19. Por último se nos muestra una pantalla de finalización con un informe de la migración.

  20. Gui Tools Imagen 70

Fase 4 de la Práctica:

Ahora ya podemos comprobar tanto desde la herramienta Administrator como desde Query Browser la existencia de nuestro nuevo esquema liguilla:

Gui Tools Imagen 72

Gui Tools Imagen 74

Nuestro objetivo de migración desde MsAccess a MySQL nos pemite trabajar en este sistema gestor de base de datos open source con las herramientas gratuitas GUI Tools, y poder en un futuro exportar nuestra base de datos a otra plataforma como Linux o a un servidor web que soporte MySQL para que la información almacenada este disponible para todo el centro a través de una red interna o si es posible, desde Internet.

Por último quiero destacar que las posibilidadesde que MySQL nos ofrece para hacer prácticas con los alumnos son muy diversas y desde mi experiencia, muy satisfactorias a nivel didáctico.

8. Fuentes de Documentación:

  • La Biblia de Mysql de Ian Gilfillan (Editorial Anaya, 2003): Un buen libro de referencia para la administración de Mysql, no tanto como referencia para el desarrollo.