Sei sulla pagina 1di 7

Instrucciones para trasladar una base de datos MySQL

Cuando trabajbamos con bases de datos Access, la portabilidad de la base era


sumamente sencilla: toda la base est en un nico archivo, con extensin .MDB.
Para llevarnos la base de un lado a otro, alcanzaba con copiarnos ese archivo, y
ya. Cualquier alumno de otra especialidad podra hacerlo.
En MySQL, como en cualquier otro gestor de bases de datos profesional, la cosa
no es tan simple. Por empezar, la base de datos no ocupa un nico archivo fsico,
sino varios. Por otro lado, no alcanza con copiar los archivos necesarios a un
carpeta cualquiera para que el gestor de la base de datos la reconozca y pueda
trabajar con ella.
En el MySQL instalado en las computadoras del Labo, la base de datos con todo
su contenido se graba en un sector del disco rgido que est freezado, es decir,
que al reiniciarse, se borra por completo. Por lo tanto, cuando abramos nuestra
sesin de Windows ms tarde, ya sea en la misma computadora o en otra, nada
de lo que hayamos hecho estar, y deberamos hacerlo todo nuevamente.
Para no perder nuestro trabajo en clase, o para seguir el trabajo en la
computadora de casa, al terminar cada sesin de trabajo, debemos exportar la
base de datos. La exportacin es el proceso de generar un archivo, o un
conjunto de archivos, que contengan toda la informacin para poder volver a crear
la base de datos, tanto en cuanto a su estructura, como a sus datos, y a sus
rutinas (funciones almacenadas y procedimientos almacenados). La importacin
es, naturalmente, el proceso de levantar esos archivos, previamente exportados,
creando una base de datos nueva, incorporndola tal como si se hubiera creado
completamente de nuevo.
Entonces, recordemos que cada vez que demos por finalizada una sesin de
trabajo con una base de datos MySQL, debemos exportar la base. El
resultado de esa exportacin ser como una foto de la base completa, incluyendo
el nombre de la propia base, el nombre y diseo de cada una de las tabla, el
contenido de los registros de las tablas, y las rutinas (Stored Procedured y Stored
Functions). Cada comienzo de la clase siguiente, importaremos esa informacin.
EXPORTACIN:
Vamos a empezar por la exportacin. Ya dentro del Workbench, accedemos a la
administracin del servidor, es decir, a la seccin de la derecha de las tres
principales.

Luego de ingresar con las credenciales del root, estamos en el panel de


administracin del servidor. Ese panel tiene cuatro secciones. Las dos opciones
que nos interesan estn en la seccin Data Export / Restore.

Comenzamos por seleccionar Data Export, para abrir la pantalla de Data Export.
En la primera solapa, llamadaObject Selection, seleccionamos la base de datos
que queremos exportar. Podramos exportar varias bases juntas, pero para no
complicarnos la vida, vamos a hacerlo de a una. Seleccionamos una de ellas, en
nuestro ejemplo, la BaseParaPruebas.

En la seccin inferior de opciones, configuramos algunos detalles sobre la


modalidad la exportacin.

Podemos elegir que cada tabla se exporte en un archivo separado. Segn ah se


indica, esto nos va a permitir luego una importacin selectiva, es decir, que al
importar la base podamos elegir cules tablas importar, y cules no, aunque este
proceso sea ms lento. Para nuestras bases de pocos registros, es indistinto.
Pero si estamos exportando bases de algunos miles de registros, la diferencia de
tiempo ser notable. En este caso, se nos pide que indiquemos una carpeta para
la exportacin, donde se guardarn todos los archivos resultantes de la
exportacin.
Por otro lado, podemos elegir que toda la exportacin se realice en un nico
archivo. Para nuestro caso, esta opcin es ms sencilla, ya que ese nico archivo
es ms fcilmente transportable. Nos ofrece una ubicacin y un archivo por
default, pero podemos cambiarlo si quisiramos. Vamos a usar esta opcin que es
lo ms cmodo, ya que la base completa quedar guardada en nico archivo.
De las dems opciones, nos interesa Dump Stored Routines (Procedures and
Functions), cuya utilidad es obvia: si no la tildamos, los Stored Procedures y
las Stored Functions que creamos no sern exportados, as que la tildamos.
Y nos interesa Skip table data (no-data), cuyo tilde indica que se quiere exportar
la estructura de las tablas pero sin su contenido. No queremos esto, porque nos
obligara a rellenar el contenido de nuestros registros cada vez. Ya nos result un
problema tener que inventar datos para llenarlos la primera vez, no queremos
volver a pasar por tal suplicio, asi que no lo tildamos.
Pues bien, ya estamos en condiciones de iniciar el proceso, presionando el botn
de Start Export.
Si todo va bien, en la carpeta indicada, tendremos un bonito archivo con
extensin .SQL, que podremos abrir para chusmear con el Notepad, ya que es un

archivo de texto comn y corriente, y que contiene instruccionesSQL para crear


por completo la base, las tablas, el relleno de datos de las tablas, y las rutinas
(Stored Procedures y Stored Functions).

Cosas que podran salir mal


Hasta ahora, detect dos situaciones posibles.
Una de ellas es que el MySQL nos diga que la versin del mysqldump.exe es
ms vieja que la del propioMySQL Server, y que nos advierta que, en caso de
seguir adelante con la exportacin, podran pasarnos cosas terribles.
Para solucionarlo, cancelamos el proceso, y en el men principal vamos a Edit ->
Preferences.

Ya en la ventana de preferencias, vamos a la solapa Administrator, y debemos


completar la opcion Path to mysqldump Tool.

Para ello, clickeamos en el botn de seleccin, y buscamos la ruta


correspondiente,
que
habitualmente
ser C:\Archivos
de
programa\MySQL\MySQL Server 5.6\bin\mysqldump.exe. Desde luego, esta
ruta depender de la configuracin de instalacin inicial del MySQL Server. Una
vez seleccionado el archivo, aceptamos y volvemos a intentar el proceso.

Otro error que, segn detect, podramos recibir, es un mensaje diciendo que
el mysqldump no conoce la opcin "--no-beep".
Para solucionarlo, vamos a la carpeta en la que est instalado el MySQL
Server (habitualmente, C:\Archivos de Programa\MySQL\MySQL Server 5.6) y
editamos con el Notepad el archivo my.ini. Buscamos lo siguiente:
# CLIENT SECTION
# ---------------------------------------------------------------------#
# The following options will be read by MySQL client applications.
# Note that only client applications shipped by MySQL are guaranteed
# to read this section. If you want your own MySQL client program to
# honor these values, you need to specify it as an option during the
# MySQL client library initialization.
#
[client]
no-beep
y simplemente comentamos la linea del no-beep, de forma que quede:
#no-beep
Guardamos los cambios, y listo el pollo.

IMPORTACIN:
La importacin de datos es bastante mas simple. Es el proceso que realizaremos
al comienzo de la clase siguiente, para no tener que crear toda la base de nuevo.
Al contrario, vamos a decirle a MySQL que haga todo el proceso en forma
automtica, utilizando la informacin contenida en el archivo que exportamos
previamente.
En el mismo panel de opciones, seleccionamos Data Import/Restore, para
acceder a la seccin Restore from Disk.

Ah seleccionamos la carpeta a importar, o el archivo a importar (segn cul


mtodo de exportacin hayamos usado), y simplemente clickeamos en Start
Import.
El proceso automtico crea la base de datos original, crea las tablas que contena,
las rellena con los datos, y crea las rutinas. Chiche bombn.
Muy importante
Si al exportar elegimos que nos exporte todo a un nico archivo "Export to
Self-Contained File", al importar tenemos que elegir, obviamente, la opcion
"Import from Selft-Contained File". En cambio, si al exportar indicamos que
se exporte todo a una carpeta, con un archivo separado por cada tabla, y un
archivo adicional con las rutinas ("Export to Dump Project Folder"),
entonces al importar tenemos tenemos que indicar justamente eso.

Potrebbero piacerti anche