Vamos con otro de esos posts obligados para un blog de SysAdmins. Generalmente para importar y exportar bases de datos podemos utilizar aplicaciones como PhpMyAdmin pero a veces dan problemas con bases de datos demasiadas pesadas y acabamos recibiendo un time-out.
Esto es realmente fácil de solucionar, tan solo hay que cambiar valores en el fichero php.ini
. Aún así, para conseguir importar o exportar una base de datos grande podemos hacerlo desde la línea de comandos, accediendo mediante SSH.
Exportar base de datos
Para exportar una base de datos deberemos de saber varios datos como: nombre de la base de datos, usuario y contraseña. Una vez tengamos estos datos podremos exportarlo de la siguiente forma:
mysqldump -u [Usuario] [NombreBaseDeDatos] -p > NombreBaseDatos.sql
Si la base de datos se encuentra en otro servidor, podremos usar el parámetro -h
:
mysqldump -h [IPservidor] -u [Usuario] [NombreBaseDeDatos] -p > NombreBaseDatos.sql
Por ejemplo:
mysqldump -h mysql.midominio.com -u usuariodb nombrebasedatos -p > nombrebasedatos.sql
Importar base de datos
Para importar una base de datos deberemos de saber varios datos como: nombre de la base de datos, usuario y contraseña. Una vez tengamos estos datos podremos importarlo de la siguiente forma:
mysql -u [Usuario] -p [NombreBaseDeDatos] < NombreBaseDeDatos.sql
Por ejemplo:
mysql -u usuariodb -p nombrebasedatos < NombreBaseDeDatos.sql
Comentarios