Diferencia entre revisiones de «Importar/Exportar base de datos»

De FdIwiki SC
Saltar a: navegación, buscar
 
Línea 4: Línea 4:
 
== '''Exportar la base de datos (hosting web, servidor virtual / dedicado)''' ==
 
== '''Exportar la base de datos (hosting web, servidor virtual / dedicado)''' ==
  
=== Utilizando '''phpmyadmin''', principalmente para hostings compartidos (hostinger, etc..) o servidores en los que tengamos phpmyadmin instalado ===
+
=== '''Utilizando phpmyadmin, principalmente para hostings compartidos (hostinger, etc..) o servidores en los que tengamos phpmyadmin instalado''' ===
 
<p align="justify">Para acceder a phpmyadmin disponemos de varias alternativas:</p>
 
<p align="justify">Para acceder a phpmyadmin disponemos de varias alternativas:</p>
 
:*<p align="justify">Si se trata de un hosting dispondremos de un panel web donde podremos acceder a phpmyadmin.</p>
 
:*<p align="justify">Si se trata de un hosting dispondremos de un panel web donde podremos acceder a phpmyadmin.</p>
Línea 12: Línea 12:
 
:<p align="justify">Ahora simplemente pulsamos continuar y guardamos el archivo.</p>[[Archivo:Mysql4.PNG]]
 
:<p align="justify">Ahora simplemente pulsamos continuar y guardamos el archivo.</p>[[Archivo:Mysql4.PNG]]
  
=== Utilizando '''mysqldump''', servidor local/remoto con acceso local/remoto (ssh) ===
+
=== '''Utilizando mysqldump, servidor local/remoto con acceso local/remoto (ssh)''' ===
 
:<p align="justify">Muy sencillo, basta con abrir una consola cmd, situarse en el directorio donde se encuentra mysqldump(ver nota) y ejecutar la siguiente orden: <pre>mysqldump -u nombre_usuario_bd -p --default-character-set=utf8 nombre_base_datos > nombre_backup.sql</pre></p>[[Archivo:Mysql5.PNG]]<br>
 
:<p align="justify">Muy sencillo, basta con abrir una consola cmd, situarse en el directorio donde se encuentra mysqldump(ver nota) y ejecutar la siguiente orden: <pre>mysqldump -u nombre_usuario_bd -p --default-character-set=utf8 nombre_base_datos > nombre_backup.sql</pre></p>[[Archivo:Mysql5.PNG]]<br>
 
:<p align="justify">Comprobamos mediante la orden "dir" que se ha creado el backup.</p>[[Archivo:Mysql6.PNG]]
 
:<p align="justify">Comprobamos mediante la orden "dir" que se ha creado el backup.</p>[[Archivo:Mysql6.PNG]]
Línea 23: Línea 23:
 
<p align="justify">Para no tener problemas con la importación de la base de datos de Drupal actualizaremos el valor de ''MAX_ALLOWED_PACKET'' en el fichero ''my.cnf'' antes de arrancarlo, si ya hemos arrancado mysql debemos reiniciarlo después de hacer el cambio para que el cambio se aplique. El nuevo valor será 10M.</p>[[Archivo:My.cnf.png]]
 
<p align="justify">Para no tener problemas con la importación de la base de datos de Drupal actualizaremos el valor de ''MAX_ALLOWED_PACKET'' en el fichero ''my.cnf'' antes de arrancarlo, si ya hemos arrancado mysql debemos reiniciarlo después de hacer el cambio para que el cambio se aplique. El nuevo valor será 10M.</p>[[Archivo:My.cnf.png]]
 
<p align="justify">Dado que al exportar no le hemos pedido que incluya las sentencias para la creación de la base de datos, tendremos que crear nosotros la base de datos.</p>
 
<p align="justify">Dado que al exportar no le hemos pedido que incluya las sentencias para la creación de la base de datos, tendremos que crear nosotros la base de datos.</p>
=== Importar la base de datos utilizando '''phpmyadmin''' en xampp ===
+
=== '''Importar la base de datos utilizando phpmyadmin en xampp''' ===
 
:<p align="justify">Para poder importar la base de datos vía ''http'' primero que nada debemos cambiar los valores de "upload_max_filesize" y "post_max_size". Estos cambios se realizan en el fichero ''php.ini''; no olvides reiniciar el servidor después de los cambios.</p>[[Archivo:Php.ini.png]]<br>[[Archivo:Php.ini2.png]]
 
:<p align="justify">Para poder importar la base de datos vía ''http'' primero que nada debemos cambiar los valores de "upload_max_filesize" y "post_max_size". Estos cambios se realizan en el fichero ''php.ini''; no olvides reiniciar el servidor después de los cambios.</p>[[Archivo:Php.ini.png]]<br>[[Archivo:Php.ini2.png]]
 
:<p align="justify">Creamos una nueva base de datos utilizando phpmyadmin.</p>[[Archivo:Importar2.PNG]]
 
:<p align="justify">Creamos una nueva base de datos utilizando phpmyadmin.</p>[[Archivo:Importar2.PNG]]
Línea 29: Línea 29:
 
:<p align="justify">Pulsamos continuar, si la importación se realiza de forma correcta veremos lo siguiente:</p>[[Archivo:Importar4.PNG]]
 
:<p align="justify">Pulsamos continuar, si la importación se realiza de forma correcta veremos lo siguiente:</p>[[Archivo:Importar4.PNG]]
 
:<p align="justify">En el caso de bases de datos muy grandes deberíamos ampliar el límite de memoria que php permite utilizar a un script, además de ampliar el tiempo máximo de ejecución.</p>
 
:<p align="justify">En el caso de bases de datos muy grandes deberíamos ampliar el límite de memoria que php permite utilizar a un script, además de ampliar el tiempo máximo de ejecución.</p>
=== Importar la base de datos utilizando la consola de comandos ===
+
=== '''Importar la base de datos utilizando la consola de comandos''' ===
 
:<p align="justify">Más '''rápido''' que el anterior y más '''fiable'''. Nos situamos en la carpeta donde se encuentra ''mysql.exe'' (xampp/mysql/bin) con el comando cd en la consola de comandos y accedemos al servidor, orden ''mysql -u usuario -p'' (-p si tenemos contraseña, nos la pedirá al ejecutar el comando). Introducimos la orden: <pre>CREATE DATABASE nombre_base_de_datos;</pre></p>[[Archivo:Importar5.PNG]]
 
:<p align="justify">Más '''rápido''' que el anterior y más '''fiable'''. Nos situamos en la carpeta donde se encuentra ''mysql.exe'' (xampp/mysql/bin) con el comando cd en la consola de comandos y accedemos al servidor, orden ''mysql -u usuario -p'' (-p si tenemos contraseña, nos la pedirá al ejecutar el comando). Introducimos la orden: <pre>CREATE DATABASE nombre_base_de_datos;</pre></p>[[Archivo:Importar5.PNG]]
 
:<p align="justify">Salimos de mysql y ejecutamos la siguiente orden: <pre>mysql -u usuario -p --default-character-set=utf8 nombre_base_de_datos < nombre_backup.sql</pre></p>
 
:<p align="justify">Salimos de mysql y ejecutamos la siguiente orden: <pre>mysql -u usuario -p --default-character-set=utf8 nombre_base_de_datos < nombre_backup.sql</pre></p>

Última revisión de 00:42 30 ene 2017

En esta página encontrarás toda la información acerca de cómo importar o exportar una base de datos según las opciones que disponemos.


Exportar la base de datos (hosting web, servidor virtual / dedicado)

Utilizando phpmyadmin, principalmente para hostings compartidos (hostinger, etc..) o servidores en los que tengamos phpmyadmin instalado

Para acceder a phpmyadmin disponemos de varias alternativas:

  • Si se trata de un hosting dispondremos de un panel web donde podremos acceder a phpmyadmin.

  • Si estamos usando un servidor y lo hemos instalado accederemos a la url donde lo tengamos instalado, (ejemplo: http://midominio.info/dondeestephpmyadmin).

En el menú de la izquierda seleccionamos la base de datos de la cual queremos realizar la copia de seguridad, en la parte derecha pulsamos sobre "Exportar".

Mysql1.PNG

Pulsamos sobre avanzado y nos aseguramos que la opción "Conjunto de caracteres del archivo" sea "utf-8", para ahorrar ancho de banda podemos usar la opción de compresión, aunque si la vamos a importar desde la consola deberemos descomprimirla antes.

Mysql2.PNG

Ahora simplemente pulsamos continuar y guardamos el archivo.

Mysql4.PNG

Utilizando mysqldump, servidor local/remoto con acceso local/remoto (ssh)

Muy sencillo, basta con abrir una consola cmd, situarse en el directorio donde se encuentra mysqldump(ver nota) y ejecutar la siguiente orden:

mysqldump -u nombre_usuario_bd -p --default-character-set=utf8 nombre_base_datos > nombre_backup.sql

Mysql5.PNG

Comprobamos mediante la orden "dir" que se ha creado el backup.

Mysql6.PNG

*Nota: las utilidades mysql/mysqldump en windows se encuentran en la carpeta bin, dentro de la carpeta donde se encuentra MySQL instalado. en el caso de xampp estas se encuentran en xampp/mysql/bin.

Se puede dar el caso de que el hosting nos proporcione una copia de seguridad directamente desde el panel web, también es válida para importarla posteriormente, en caso de que durante la importación ocurriera algún error podemos probar las opciones 1.1 o 1.2 según el caso.

Importar la base de datos (xampp del campus virtual)

Para no tener problemas con la importación de la base de datos de Drupal actualizaremos el valor de MAX_ALLOWED_PACKET en el fichero my.cnf antes de arrancarlo, si ya hemos arrancado mysql debemos reiniciarlo después de hacer el cambio para que el cambio se aplique. El nuevo valor será 10M.

My.cnf.png

Dado que al exportar no le hemos pedido que incluya las sentencias para la creación de la base de datos, tendremos que crear nosotros la base de datos.

Importar la base de datos utilizando phpmyadmin en xampp

Para poder importar la base de datos vía http primero que nada debemos cambiar los valores de "upload_max_filesize" y "post_max_size". Estos cambios se realizan en el fichero php.ini; no olvides reiniciar el servidor después de los cambios.

Php.ini.png
Php.ini2.png

Creamos una nueva base de datos utilizando phpmyadmin.

Importar2.PNG

Seleccionamos la base de datos que acabamos de crear en el menú izquierdo y pulsamos sobre importar, entonces veremos un formulario, seleccionamos el fichero que contiene la base de datos y nos aseguramos que la opción "Conjunto de caracteres del archivo" esté en utf-8:

Importar3.PNG

Pulsamos continuar, si la importación se realiza de forma correcta veremos lo siguiente:

Importar4.PNG

En el caso de bases de datos muy grandes deberíamos ampliar el límite de memoria que php permite utilizar a un script, además de ampliar el tiempo máximo de ejecución.

Importar la base de datos utilizando la consola de comandos

Más rápido que el anterior y más fiable. Nos situamos en la carpeta donde se encuentra mysql.exe (xampp/mysql/bin) con el comando cd en la consola de comandos y accedemos al servidor, orden mysql -u usuario -p (-p si tenemos contraseña, nos la pedirá al ejecutar el comando). Introducimos la orden:

CREATE DATABASE nombre_base_de_datos;

Importar5.PNG

Salimos de mysql y ejecutamos la siguiente orden:

mysql -u usuario -p --default-character-set=utf8 nombre_base_de_datos < nombre_backup.sql

Esperamos a que la operación termine, si no aparece ningún error la importación habrá sido correcta.

Importar6.PNG

No olvides que si estas importando la base de datos a otro servidor de base de datos (ejemplo, mysql de xampp) es posible que el usuario/contraseña de mysql no corresponda con el que tenías en el servidor, debes cambiar estos datos en el fichero settings.php que se encuentra en la carpeta sites/default.