Comunidad Ulfix

Inicio Bases de datos MySQL Como importar bases de datos MySQL
MySQL
Como importar bases de datos MySQL
Valoración de los usuarios: / 5
PobreEl mejor 
Bases de Datos - MySQL
Escrito por Alejandro López Hernández   
Domingo 16 de Mayo de 2004 02:24

ImageSi estás usando la versión 3.23 o una versión superior de MySQL, puedes copiar archivos "*.frm", "*.MYI", y "*.MYD" para tablas MyISAM entre arquitecturas diferentes que soporten el mismo formato de punto flotante. (MySQL toma en cuenta cualquier byte-swapping).

Los archivos MySQL ISAM de índice y datos ("*.IDC" y "*.ISM", respectivamente) son dependientes de la arquitectura y en algunos casos dependientes del sistema operativo. Si quieres mover tus aplicaciones a otra máquina que tiene una arquitectura distinta o sistema operativo distinto que la máquina actual, no deberías intentar mover una base de datos simplemente copiando los archivos a otra máquina. En vez de eso usa mysqldump.

Por defecto, mysqldump creará un archivo que contiene sentencias SQL, puedes transferir el archivo a la otra máquina y importarlo con un cliente MySQL, como phpMyAdmin.

Teclea mysqldump --help par ver las opciones disponibles. Si estás moviendo datos a una versión más nueva de MySQL, debes usar mysqldump --opt para aprovecharte de cualquiera de las optimizaciones que resultan en un archivo de deposito más pequeño y puede ser procesado más rápido.

La forma más facil (aunque no la más rápida) para mover una base de datos entre dos máquinas es correr los siguientes comandos en la máquina donde esta localizada la base de datos:

mysqladmin -h 'otro equipo' create nombre_bd
mysqldump --opt nombre_bd | mysql -h 'otro equipo' nombre_bd

Si quieres copiar una base de datos desde una máquina remota sobre una red lenta, puedes usar:

mysqladmin create nombre_bd 
mysqldump -h 'otro equipo' --opt --compress nombre_bd | mysql nombre_bd

También puedes almacenar el resultado en un archivo, después transfiere el archivo a la máquina deseada y carga el archivo dentro de la base de datos. Por ejemplo, puedes depositar una base de datos en un archivo en la máquina fuente de esta forma:

mysqldump --quick nombre_bd | gzip > nombre_bd.contenido.gz

(El archivo creado en este ejemplo esta comprimido.) Tranfiere el archivo que contiene los contenidos de la base de datos a el equipo elegido y corre estos comandos:

mysqladmin create nombre_bd
gunzip < nombre_bd.contenido.gz | mysql nombre_bd

También puedes usar mysqldump y mysqlimport para tranferir la base de datos. Para tablas grandes, esto es mucho más rápido que simplemente usar mysqldump. In los siguientes comandos, DUMPDIR representa la ruta absoluta de el directorio que usas para almacenar la salida de mysqldump.

Primero, crea el directorio para los archivos de salida y deposita la base de datos:

mkdir DUMPDIR # mysqldump --tab=DUMPDIR nombre_bd

Entonces transfiere los archivos en el directorio DUMPDIR al directorio correspondiente en la nueva máquina y carga los archivos dentro del directorio de MySQL:

mysqladmin create nombre_bd          # Crea la base de datos 
cat DUMPDIR/*.sql | mysql nombre_bd # Crea las tablas en la base de datos
mysqlimport nombre_bd DUMPDIR/*.txt # Carga los datos en la base de datos

No olvides copiar la base de datos de mysql porque ahi es donde estan almacenadas las tablas de privilegios (user, db, host). Puede ser que tengas que correr los comandos como el usuario root de MySQL en la máquina nueva hasta que tengas la base de datos mysql en su lugar.

Después de que importes la base de datos mysql a la nueva máquina, ejecuta mysqladmin flush-privileges asi el servidor recargará la información de la tabla de concesión .

Tags:
Hits smaller text tool iconmedium text tool iconlarger text tool icon
 

Agregar comentario


Código de seguridad
Actualizar