En los pasos anteriores hemos comentado cómo hacer copias de seguridad (#backup), desinstalar una versión de #MySQL, instalar una nueva y comprobar que funciona la nueva versión de MySQL.
Recordando el paso 2
En el paso 2 se comentó la importancia de hacer una copia del fichero my.ini, que incluye las opciones de configuración del servidor. Ese proceso no se hiz por hacer, sino que tiene una justificación. Más adelante, en el paso 4, hemos comprobado que nuestro servidor local de MySQL funciona, pero la realidad es que no estamos trabajando con la ruta donde guardamos nuestras bases de datos. Llega la hora de cambiar el fichero de configuración.
Modificando la configuración del servidor
Lo primero, parar el servidor con NET STOP mysql56. Esta operacion la realizo desde DOS:
Lo siguiente es ir a donde está ubicado el fichero de configuración, en “C:\Documents and Settings\All Users\Datos de programa\MySQL\MySQL Server 5.6”
Antes de continuar, hacemos una copia del fichero my.ini, el original de nuestra instalación, que sabemos que funciona (ver paso 4).
El antiguo fichero my.ini está ubicado en “C:\Documents and Settings\All Users\Datos de programa\MySQL\MySQL Server 5.5“. Lo copiamos a la carpeta de MySQL 5.6.
Ahora volvemos a arrancar MySQL con NET START mysql56
Hubiera sido perfecto que hubiera funcionado, pero …. no ha sido el final deseado. Comprobamos que el trabajo no ha acabado, pues da un #error (encima, poco explicativo!!) de que no puede arrancar el nuevo servidor. Por tanto, es hora de trabajar con el fichero my.ini.
Efectivamente, en la documentación oficial se anuncia que muchos parámetros por defecto del servidor 5.5 cambian respecto a la versión 5.6, por lo que el cambio no es tan directo.
Error 1067.
Los usuarios experimentados sabrán configurar perfectamente el fichero my.ini según las características del servidor, pero para un usuario novato, lo más óptimo es coger el fichero de configuración original, e ir cambiando parámetro a parámetro. Parar y arrancar. Tal cual lo estamos haciendo!!
En realidad, el único cambio importante que pretendo hacer es modificar la ubicación del directorio de datos, o sea, datadir. Sorprendentemente, usando el mismo fichero de configuración de MySQL 5.6 pero cambiando el datadir a la ruta deseada no es suficiente. En este enlace detallan el error.
Probando soluciones … sobre la marcha
Copio la carpeta data (la misma generada por el instalador de MySQL 5.6) a mi ubicación (otra unidad y otro directorio), pero el error persiste. Quiero comprobar que si no es la ruta “original”, salta el error!!
Parece realmente sorprendente que a estas versiones de MySQL ocurran estos errores, pero … es lo que hay. Así que, cogemos el fichero original my.ini de MySQL 5.6 que sabemos que funciona, y lo guardamos a buen recaudo, pues … quien sabe si con lo “delicaito” que es el servidor, no nos hará falta en un futuro!
Esta no es la única causa de error 1067 al arrancar el servicio, pero es la que aquí me ha sucedido. Aunque esto me ha sucedido en Windows XP SP3, comentar que si hubiera utilizado Windows 7 x64 tampoco se libra de dicho error (aunque lo probaré!!).
Para encontrar la solución hay que estudiar con detenimiento el fichero de errores generados por MySQL.
Las pruebas, con gaseosa
Y por último, quiero dejar constancia de que hacer un proceso de migración en un servidor MySQL en producción puede convertirse en una tarea titánica si nos sucede un error como el que aquí hemos comentado, por lo que es muy importante siempre realizar este tipo de actualizaciones en servidores de pruebas o en máquinas virtuales, antes de proceder con los pasos expuestos aquí, en manejandodatos!
¿Que nos falta para solventar el error 1067?
Pues … queda pendiente varias comprobaciones más, que veremos en el paso 6 y la migración de la información.
Un saludo.