Cargar archivos grandes en MySQL

En ocasiones queremos cargar un archivo de una base de datos en otra base de datos MySQL. Para esto vamos al PHPMyAdmin, elegimos la base de datos donde vamos a efectuar la importación y damos al botón importar.

Importar en PHPMyAdmin

Importar en PHPMyAdmin

Nos podemos encontrar el problema que el tamaño máximo a importar en PHP es inferior al tamaño de nuestra copia de la base de datos que queremos importar.

Para solucionar este problema podemos hacer lo siguiente:

Ir al archivo php.ini de nuestro Apache:

gedit /etc/php5/apache2/php.ini

Buscar la línea donde pone: upload_max_filesize. Normalmente el límite por defecto son 2 megas, verás algo así: upload_max_filesize = 2M

Poner en esa línea los megas del archivo que importemos. Si queremos tener un máximo de 20 Mb, por ejemplo, quedaría así: upload_max_filesize = 20M

Grabamos el archivo y reiniciamos apache.

/etc/init.d/apache2 restart

De esta forma podremos importar archivos del tamaño que deseemos

Referencia de como aumentar la capacidad de phpmyadmin importando archivos

 

De todas formas tener que cambiar el valor máximo de los archivos que carga PHP no suele ser el mejor modo para cargar la base de datos, por lo que es aconsejable realizar estas tareas por terminal directamente a la base de datos:

Nos conectamos a MySQL desde shell, Si se tiene acceso a la máquina física se puede usar un Terminal directamente, de lo contrario habrá que conectarse por ejemplo mediante SSH:

ssh USUARIO@IP

cambiando el USUARIO y la IP por los correspondientes, tras esto pedirá la contraseña.

 

Si estas en SSH puedes subir el archivo sql de la siguiente forma:

scp USUARIO@IPREMOTA:/DIRECTORIOORIGEN/DATABASE.sql /DIRECTORIOSERVIDOR/

Por supuesto que el USUARIO será el usuario del equipo donde tendremos el archivo, la IPREMOTA es la ip del equipo que tiene el archivo, /DIRECTORIOORIGEN/DATABASE.sql es la ruta al archivo y /DIRECTORIOSERVIDOR/ es el directorio donde deseamos copiar el archivo.

Ya podremos acceder al MySQL:

mysql -h HOST -u USUARIO -pCONTRASEÑA

Por supuesto cambiando HOST, USUARIO y CONTRASEÑA por los que corresponda a nuestro MySQL, posteriormente seleccionamos la base de datos a la que deseamos importar en este ejemplo DATABASE:

USE DATABASE

Solo nos queda cargar el SQL de la base de datos:

source /DIRECTORIOSERVIDOR/DATABASE.sql;

Estos dos métodos son los más comunes para subir bases de datos MySQL, o bien mediante PHPMyAdmin o directamente en MySQL, espero que te sean útiles estas explicaciones.

Share
Esta entrada fue publicada en Programación y etiquetada , , , , . Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Blue Captcha Image Refrescar

*