Migración de MySQL

Acabo de terminar la migración del servidor MySQL a su versión más actual. Fue un proceso lento y complicado pero parece que salió muy bien.

Aquí algunos comandos que te pueden ser de utilidad al realizar respaldos de tus datos en MySQL. Observa como utilizo la opción –single-transaction para que no utilice toda la memoria disponible; es decir, que vaya tabla x tabla. Es un poco más lento, pero mucho más seguro.

[powershell]
//Comando para hacer un respaldo de todas las bases de datos
mysqldump.exe -u root -p –all-databases –single-transaction –quick > c:\bk\21-OCT-2010.sql

//Respaldo de solo las tablas db y user de la base de datos mysql
mysqldump.exe -u root -p mysql db user –single-transaction –quick > c:\bk\mysql.db-mysql.user-21-OCT-2010.sql
[/powershell]

Nota: Si quieres regresar este script que tiene todas las bases de datos en una instalación de MySQl diferente (digamos, si estas haciendo un upgrade); edita este archivo y borra la parte donde crea la BD mysql.

Es el bloque que empiza con:

[powershell]

— Current Database: `mysql`

[/powershell]

Hasta el siguiente bloque similar pero con otra BD.

Nota: Para restaurar sola la tabla de usuarios y permisos, agrega la instrucción justo después del comentario Table structure for table `db` casi al principio del archivo:

[powershell]

— Table structure for table `db`

USE `mysql`;
[/powershell]

Y si quieres restaurar, aquí estos comandos:

[powershell]
//Restaurar todas las bases de datos desde un archivo .sql
mysql -u root -p < c:\bk\21-OCT-2010.sql

//Restaurar solo las tablas que contiene el archivo .sql dentro de la base de datos mysql
mysql -u root -p mysql < c:\bk\mysql.db-mysql.user-21-OCT-2010.sql
[/powershell]

Estaremos monitoreando su desempeño por si hace falta algún tunning por ahí.

Para saber la vesión actual de MySQL. En una ventana de query ejecutamos esto:

[powershell]
SHOW VARIABLES LIKE "%version%";
[/powershell]

Saludos