Si planeas mover una base de datos muy grande, o una pagina web grande, de un servidor a otro, la forma más rapida es mediante SSH
Bajar todos los archivos y volver a subirlos por FTP sería muy tardado, cuando son muchos o muy grandes
En el caso de respaldo de una base de datos, por phpmyadmin podría fallar, debido a la restricción de la configuración en PHP del tamaño máximo del archivo.

COPIAR ARCHIVOS DE UN SERVIDOR A OTRO
Suponiendo que el directorio que vamos a copiar, fuera:
phpbb

EN EL SERVIDOR ORIGEN
Entonces en el servidor origen se comprime todo usando el comando tar, de la siguiente manera:



tar -cvvf respaldo-phpbb.tar phbbb/
(Aqui hay que notar, que la letra c despues de tar, indica la creación de un archivo tar)
El archivo creado debe asegurarse que este en una ruta publica dentro del dominio u hospedaje, como www.dominioforo.com/respaldo-phpbb.tar
 

 

EN EL SERVIDOR DESTINO
Luego en el servidor destino, descargar el archivo con wget:
wget http://www.dominioforo.com/respaldo-phpbb.tar
 

En SHELL me marco el siguiente ERROR:
HTTP request sent, awaiting response... 403 Forbidden
ERROR 403: Forbidden

Este error sucede porque el comando wget tiene un limite en el tamaño de descarga, que es como de 2 Gigas, cuando se usa el comando split sin ningún otro parámetro adicional

 

SOLUCIÓN 1 - USAR SPLIT (LA SOLUCIÓN 2 ES LA RECOMENDADA)

Por lo que una solucion es usar el comando SPLIT, el cual divide un archivo comprimido en varios de menor tamaño
split --bytes=1500000000 nombredetuarchivo.tar nombredetuarchivo.tar.
(NOTA: Es importante dejar el punto al final)
Esto hará que se creen varios archivos de tamaño de 1.5 Gigas, con terminación .aa .ab .ac etc....
 

SERVIDOR ORIGEN:
En nuestro caso quedaría algo como:
split --bytes=1500000000 respaldo-phpbb.tar respaldo-phpbb.tar.
Lo cual crearia los archivos:
respaldo-phpbb.tar.aa
respaldo-phpbb.tar.ab
respaldo-phpbb.tar.ac

SERVIDOR DESTINO:
Volviendo a nuestro servidor destino, ya podremos transferir esos archivos con wget sin problemas, uno por uno
wget http://www.dominioforo.com/respaldo-phpbb.tar.aa
wget http://www.dominioforo.com/respaldo-phpbb.tar.ab
wget http://www.dominioforo.com/respaldo-phpbb.tar.ac

Después de eso, usamos el comando CAT para volver a obtener un solo archivo comprimido:
cat *.tar.* > respaldo-phpbb.tar
y despues extraemos el contenido:
tar -xvf respaldo-phpbb.tar
(Aqui hay que notar, que la letra x después de tar, indica la extracción de un archivo tar)

La ventaja de usar SSH será la rapidez en que se mueve la información, ya que la transferencia se hace solo dentro de los servidores, y no tendremos que descargar los archivos por FTP y luego volver a subirlos por FTP, lo cual es realmente mucho mas tardado, incluso con una velocidad de internet rápida.

 

SOLUCIÓN 2 (RECOMENDADA) - AGREGAR A WGET EL PARÁMETRO -U

Con esta opción, se le esta indicando el parámetro de Agente de Usuario, -U, e indicar que se esta usando el navegador FireFox, por lo que en el servidor destino, sin importar el tamaño del archivo, podremos ejecutar el comando

wget -U firefox http://www.dominioforo.com/respaldo-phpbb.tar

 

SSH ofrece enormes ventajas, cuando se transfieren archivos, en comparación con FTP, porque el metodo de FTP se vuelve más lento, cuando son muchos archivos, aunque estos sean de poco tamaño, debido a que cada que se transfiere un archivo, tiene que esperar una respuesta de datos, que indique que se transfirio correctamente cada archivo, adicionalmente, cada carpeta existente, tiene que ser creada en donde se esta bajando la información, y todo esto, multiplicado por un número alto de archivos y carpetas, puede hacer que la transferencia se tarde de 10 a 20 veces más, dependiendo del caso.

Ahora, con FTP, se repite el proceso, primero para bajar la información a nuestra PC, y luego para subir la misma información al otro servidor, mientras que por SSH y wget, la transferencia es directa entre los servidores.

Overall Rating (0)

0 out of 5 stars

Post comment as a guest

Attachments

Location

Share:
Rate this article :
0

People in this conversation