¿Cómo copiar la base de datos MySQL de un servidor a otro?

2

¡Acabo de terminar de hacer un sitio web en Joomla! 1.6. Sitios web en Joomla! constan de dos partes básicas. Hay archivos que utiliza el servidor HTTP y existe la base de datos. Tengo acceso FTP al servidor y he copiado los archivos necesarios, pero no sé cómo copiar la base de datos MySQL.

Tengo acceso a la aplicación de terminal MySQL en la computadora remota y a MySQL en mi computadora. En el servidor, ya hay un nombre de usuario que puedo usar y hay una base de datos vacía que debo usar. El usuario tiene control total sobre la base de datos.

No tengo acceso físico al servidor remoto.

Este debería ser muy simple, pero Google no está conmigo hoy.

AndrejaKo
fuente

Respuestas:

2

Este enlace (tomado directamente de los documentos de MySql ...) le muestra cómo usar las utilidades con MySql para mover la base de datos a una ubicación diferente. Personalmente nunca he necesitado hacer esto, pero las instrucciones detalladas deberían ser suficientes.

g19fanatic
fuente
2

Hay dos formas básicas de lograr esto.

1) Volcar la base de datos a un archivo de texto e importar en el extremo remoto

2) Copie los archivos de datos sin procesar.

La opción uno suele ser la más confiable, especialmente si los dos sistemas son diferentes.

Primero, cree un volcado de la base de datos:

$ mysqldump -u <username> -p<password> <databasename> | bzip2 >mydatabase.sql.bz2

Esto volcará toda la base de datos y la comprimirá en un archivo. No tiene que hacer la compresión si no lo desea, pero hace que la transferencia del archivo a través de Internet sea mucho más rápida. Obviamente, reemplace el nombre de usuario, la contraseña y el nombre de la base de datos con sus datos reales.

Una vez que tenga el archivo mydatabase.sql.bz2, transfiéralo al servidor remoto con las herramientas que usaría normalmente (scp, por ejemplo);

Una vez transferido, debe crear la base de datos en el servidor remoto (o que los administradores del sistema / panel de control la creen para usted):

mysql> create database <databasename>;
mysql> grant all privileges on <databasename>.* to <username>@localhost identified by '<password>'

Obviamente reemplace los detalles con sus propios detalles.

Ahora para restaurar la base de datos:

$ bzcat mydatabase.sql.bz2 | mysql -u <username> -p<password> <databasename>

Después de unos momentos, debería tener su base de datos ahora instalada en el servidor remoto.

Majenko
fuente
1

He movido bastantes sitios de Joomla manualmente desde los servidores de desarrollo a sus hosts principales, pero ahora uso Akeeba Backup ya que crea un 'paquete' del sitio que puede cargarse en un servidor de destino y luego 'ejecutarse' (desde un navegador) para restaurar el sitio: es maravilloso, gratis y compatible con 1.6.

Vale la pena leerlo: http://www.akeebabackup.com/software/akeeba-backup.html

Linker3000
fuente