Ayer estuve migrando una red WordPress multisitio a un nuevo servidor, y como tiene algunos aspectos distintos a la migración de un WordPress único vamos a ver cómo se hace, pues aunque hay muchos pasos comunes con una migración de un sitio único también tiene sus peculiaridades.
Índice de contenidos
Por qué cambiar de servidor una red multisitio
Pueden ser varios los motivos, pero el motivo más habitual para cambiar de servidor una red multisitio suele ser por necesidades de memoria o espacio.
No olvidemos que una red multisitio es un entorno en el que ofrecemos sitios, normalmente gratuitos, con lo que hay múltiples instalaciones de WordPress, cada una con sus plugins, aplicaciones y scripts ejecutándose, y todos cargando toda esa actividad sobre una única (normalmente) base de datos.
Tampoco es para desestimar la cuestión del espacio en disco. En los ajustes de red puedes limitar el espacio disponible para cada sitio, pero si tu red tiene éxito solo tienes que multiplicar el espacio que concedes por la cantidad de sitios alojados para quedarte pronto sin los preciados y caros gigas que dispones en tu servidor.
En mi caso el problema fue la memoria disponible, pues en el servidor anterior no podía adaptar a mis crecientes necesidades los recursos disponibles, así que decidí que lo mejor era migrar a un hosting WordPress en condiciones, que me permitiese toda la libertad y potencia necesaria, sin que esto supusiese un agujero en mi economía.
Pero vamos a ello, a la migración de servidor. Los pasos son los siguientes…
0. Antes de empezar
Un paso previo a toda migración de una red multisitio es desactivar todos los plugins así que pásate por el escritorio de administrador de la red y desactívalos todos.
1. Descarga de archivos
Lo primero es tener una copia de los archivos de la red multisitio. Hay muchos plugins pero, en mi experiencia, para migrar una red multisitio es mejor hacerlo manualmente por FTP o desde el administrador de archivos de cPanel.
Los archivos y directorios a guardar son los siguientes:
- Directorio /wp-content/ y sus subdirectorios
- Archivo wp-config.php
- Archivo .htaccess
- Cualquier archivo propio de tu instalación que no sea de WordPress
Como la descarga de archivos puede ser de un tamaño importante mi consejo es que hagas la copia de archivos por cPanel, que te permite crear un archivo comprimido de los archivos y directorios elegidos, que se descargará mucho más rápidamente, ya que la descarga archivo a archivo por FTP puede ser casi eterna.
Igualmente será la opción más rápida para la posterior restauración de los archivos.
2. Descarga de la base de datos
Lo siguiente – y último – que hay que descargar es la base de datos, así que accede al panel de tu alojamiento y carga phpMyAdmin. Una vez en tu base de datos ve a la pestaña Exportar y realiza la exportación de todas las tablas.
La mayoría de las versiones de phpMyADmin te permitirán elegir entre la exportación rápida y la personalizada; yo te recomiendo la personalizada pues podrás exportarla en un archivo comprimido, de descarga más rápida y también de restauración más rápida posteriormente.
3. Instalar WordPress en el nuevo alojamiento
Una vez tengamos contratado nuestro nuevo alojamiento lo primero es crear una instalación limpia de WordPress, que será la receptora posterior de nuestra red multisitio.
Esta instalación no debe tener nada especial, de hecho puedes usar el instalador automático de tu hosting (que supongo que a estas alturas lo ofrecerá, sino busca otro). Si tu proveedor de hosting te lo ofrece sería buena idea especificar que la instalación será multisitio, con lo que te ahorrarás un paso posterior que ya veremos.
4. Sube tu copia de los archivos de la red a la nueva instalación
Ahora es el momento de restaurar los archivos y directorios que copiamos de nuestra red, así que súbelos por FTP o cPanel, sustituyendo los directorios y archivos de la instalación nueva por los que copiaste, excepto el archivo wp-config.php sin tener antes en cuenta estas dos posibilidades:
- Si tu hosting te permitió crear la nueva instalación multisitio no sustituyas el nuevo archivo wp-config.php por el antiguo, pues el actual tendrá la información de conexión a la base de datos. El nuevo archivo wp-config.php ya tendrá la configuración de red multisitio.
- Si no pudiste hacer que la nueva instalación fuese multisitio no sustituyas el nuevo archivo wp-config.php por el antiguo, pues el actual tendrá la información de conexión a la base de datos. Abre para editar el nuevo archivo wp-config.php y copia la configuración de red multisitio del antiguo y guarda los cambios.
Vamos, que en ningún caso sustituyas el archivo wp-config.php nuevo por el anterior.
Igual que en el paso 1 de esta guía te recomiendo que uses cPanel para subir los archivos, pues te permite subir un archivo ZIP y descomprimirlo, lo que acelerará enormemente el proceso. Puedes hacerlo por FTP pero el proceso es largo y lento.
5. Elimina las tablas de la nueva base de datos
Accede de nuevo a phpMyAdmin desde el panel de tu flamante y nuevo hosting y una vez en tu nueva base de datos selecciona todas las tablas en la casilla que hay debajo del listado de tablas y, en el desplegable a su derecha denominado «Para todos los elementos seleccionados» haz clic en la opción «Eliminar«.
De inmediato se te mostrará una pantalla en la que debes confirmar el borrado.
6. Importa tu copia de la base de datos
Ahora que hemos vaciado la nueva base de datos es momento de subir las tablas de la base de datos de nuestra red que previamente exportamos.
Ve a phpMyAdmin, selecciona tu nueva base de datos y ve a la pestaña Importar, donde tendrás que seleccionar el archivo de la base de datos que descargamos en el paso 2.
El proceso es rápido y automático, y tus tablas se importarán en la nueva base de datos fácilmente. El único problema que podrías encontrar en este paso es el tamaño admitido por tu hosting para importar bases de datos. Si lo superase tendrás que pedir a tu proveedor de alojamiento que te importen ellos el archivo o hacerlo tú mismo, por ejemplo con WP-CLI o SSH.
7. Cambia los servidores DNS
Una vez hecha la migración física solo te queda ir a la gestión del dominio, normalmente en el panel de dominios del proveedor anterior, y realizar el cambio de servidores DNS de los anteriores a los nuevos y esperar a que se difundan.
¿Cuánto tarda esto? Pues depende. Me ha pasado de todo. Como norma general, cualquier dominio que no sea un .es tardará mucho menos, minutos incluso, y los dominios .es pueden tardar de 1 hora en los mejores casos a varias horas o incluso días en algunas ocasiones. La brecha digital le llaman (sic).
Un truco que suelo usar para saber cuándo se ha realizado el cambio de servidores DNS es subir al nuevo alojamiento un archivo de texto del tipo hola.txt con un texto que diga «Hola, ya estoy en el nuevo hosting» y teclear su url de vez en cuando hasta que vea el texto de bienvenida.
Reflexiones finales
Una vez se difundan las DNS deberías tener tu red multisitio en el nuevo servidor sin problemas y con todo funcionando como antes. Además, como no ha habido cambio de domino no tendrás problemas de URLs ni redirecciones.
En cualquier caso es posible que tengas algún problema de compatibilidad de plugins – principalmente – pues cada servidor utiliza versiones distintas de PHP y MySQL, y el plugin que funcionaba bien en el servidor anterior puede tener problemas en el nuevo o viceversa.
Esto es connatural con cualquier migración, no solo con redes multisitio, y recuerda que siempre debes realizar migraciones para mejorar, para tener un servidor más seguro y actualizado, así que si el plugin es el problema, por no ser compatible con versiones más actuales de PHP o MySQL, cambia de plugin, no te niegues una migración a un servidor mejor por un plugin anticuado y vulnerable.
Ya solo te quedará ir a los ajustes de tu red multisitio y, si lo crees conveniente, ampliar el espacio disponible para los sitios, instalarles nuevos plugins, temas más avanzados o lo que quieras para que tus usuarios disfruten de las ventajas del nuevo servidor.
¿Alguna duda o consejo adicional?
He realizado varias migraciones de redes multisitio, y sinceramente con este método nunca he tenido ningún problema, pero si sabes de algún modo mejor de hacerlo no te prives y cuéntanoslo en los comentarios.
Igualmente, si no entiendes algún paso o tienes alguna duda plantéala y trataré de ayudarte.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Hola Fernando, ¿no tendrás un tutorial donde indiques los pasos para «extraer» un blog de una instalacion multisite para aislarlo y configurarlo con su propia base datos y configuración independiente? Gracias.
Yo también ando buscando esa solución. De un multisite de 5 blogs quiero instalarme uno de ellos en local con Mamp para trabajar su nuevo diseño y no lo consigo ¿sería posible un tutorial? Muchas gracias
Hola Fernando, yo tambien me uno al pedido de Paul y Gus de un tutorial donde indiques los pasos para «extraer» un blog de una instalación multisite para aislarlo y configurarlo con su propia base datos y configuración independiente, sería muy productivo.
Gracias
Encontraron alguna solución ?
Hola Fernando, desde hace algunos días me vengo planteando hacerte esta pregunta que aunque no tenga que ver mucho con la migración multisitio me gustaría saber tu opinión, o bien recomendación.
He creado una instalación multisitio la cual se desarrollara en mi comunidad por lo que no espero grandes cantidades de trafico al menos por el momento, cuando digo que no espero altas cantidades de trafico me refiero a unas 100 visitas diarias cuando mucho. En fin la idea de crear el multisite se basa en crear 5 sectores de comercio cada uno con su sitio en la red y los cuales estarán instalados en subdirectorios y no subdominios, por ejemplo sector médico, sector estético y asi sucesivamente abarcando los sectores más desarrollados en la zona donde vivo.
Cada sector tendrá su directorio de empresas que ofrecen servicios en ese sector valga la redundancia y a lo cual no espero tener más de 20 empresas en cada sector, para cada empresa dare un usuario con un plugin llamado Ultimate Member que honestamente me encanta después de haber experimentado con BuddyPress, sin embargo al dia de hoy no me he animado a echar el proyecto a andar por miedo a que el plan de hosting que tengo actualmente no aguante por ejemplo 50 usuarios simueltaneos por ejemplo editando su perfil y estas cosas,lo que pasa también es que todas estas empresas entraran gratis , mis fines para mantener el sitio son con patrocinios y landings que creare para cada usuario y otras cosas pero esto no se puede dar hasta que tenga una buena cantidad de personas, el hosting que uso es el Plan GrowBig de SiteGround…se que eres una persona con bastantes años de experiencia en Wordpress y por otra parte se que estas en SiteGround porque por alla te he visto…a tu criterio y creeme que no te echare culpa alguna …crees que en mi plan actual resista este proyecto..mi idea mas adelante es ir escalando si eso me funciona y el equipo de SiteGround me ha dicho que pueden migrar mi web multisitio sin problemas a un plan siguiente o incluso a cloud…sin embargo este miedo no me deja avanzar , hasta me ha pasado por la cabeza crear un sitio a aquellas empresas por un pequeño costo dentro de la red, pero igual no se si esto consumirá demasiados recursos… que me aconsejas
Que hay @disqus_rarWGq9Lwn:disqus
Te hablaré desde mi experiencia, que es lo mejor …
Yo tengo un multisitio en un GrowBig, cada sitio con WooCommerce y un sistema de cursos online en cada uno y va perfectamente.
Varios usuarios interactuando en BuddyPress no es nada comparado con varias instalaciones de WooComerce y el LMS, que consumen muchísimos más recursos y memoria, así que no creo que vayas a tener problema con tu configuración en ese plan. Si te recomiendo activar el Memcached del plugin SG Cachepress, nada más.
Un abrazo
Hola Fernando estuve tratando de enviarte esto en privado pero no encontre la opcion, antes que nada muy buenos Webinars que tienes con siteground, espero que logres ver lo siguiente con respecto a la pregunta que te deje en esta entrada acerca de mi proyecto en un multisitio, mira que me han dicho en SiteGround que solo se pueden tener 10 usuarios conectados en un sitio de miembros como el que planeo hacer , pues yo planeaba hacer paginas privadas para empresarios con tutoriales y otras cosas , por tanto creo que mi proyecto no se va poder dar ..pero me prguntaba si en este sitio que dices tener con BuddyPress con usuarios , haz experimentado algun problema con este limite ? te dejare la conversasion que tuve con Miguel de soporte, por favor si esto compromete en algo te pido elimines este comentario, dejo claro que SiteGround sigue siendo para mi lo mejor ..Saludos
Miguel : En efecto en tu plan puedes tener todos los
dominios que quieras, no hay un límite para eso
Miguel : El límite en la cantidad de páginas vendrá dado
por tu espacio web ocupado
Miguel : Es decir de los 20GB de tu plan, puedes usar la
cantidad que desees, para una página o para miles de páginas de 1MB, por
ejemplo
Miguel : En cuanto a las visitas, en efecto esto puede
llegar a ser algo confuso y te explico un poco
Miguel : Las visitas son tomadas en cuenta como visitas
reales, ya que hay por ejemplo bots, que hacen hits a tus páginas y aún cuando
consumen recursos, no son tantos como las visitas reales
Miguel : Adicionalmente, tu plan en efecto está pensado
para 25.000 visitas, sumando todas las páginas que tengas
Miguel : Finalmente
Miguel : En cuanto a sitios con membresía, ya esto es un
tema diferente, porque los usuarios que ingreses a la página no solo están
viéndola sino conectándose con el servidor
Miguel : Y 10 conexiones simultáneas es el máximo permitido
en el plan que tienes de momento
Angelo Aguilar: Diablos eso lo cambia todo
Miguel : Por otra parte, llegar a tener mas de 25.000
visitas, por ejemplo, quiere decir que tu proyecto va muy bien y podrías pensar
en ampliar el plan
Miguel : El tema con las conexiones es que el servidor en
el que estas es un servidor compartido y aunque los recursos son de primera,
hay que garantizar la cantidad justa para cada usuario
Angelo Aguilar: Es decir , que si se conectan 10 usuarios a
mi sitio y todos inician sesion para ver por ejemplo mi perfil, mi cuenta y
esas cosas , al ingresar mas mi sitio caera ?
Miguel : En efecto, puede sufrir una caída porque tendrías
a 10 personas conectadas al servidor desde diferentes puntos y utilizando
recursos
Miguel : Entonce
Miguel : Entonces*
Angelo Aguilar: Habi escuchado esto pero me habian dicho
que solo si esos 10 usuarios venian desde una misma ip .
Miguel : Si las membresías son la parte más importante de
tu negocio, yo particularmente te recomendaría un plan Cloud
Miguel : Donde los recursos son tuyos exclusivamente
Miguel : Y los puedes incrementar a medida que incrementen
tus necesidades
Miguel : E incluso se hace de manera automática
Miguel : Ahora
Miguel : Lo de las conexiones de la misma IP es también
cierto
Miguel : Porque entra en las reglas de nuestras Firewalls
Miguel : Considerándolo un ataque de bruteforce y se
bloquearía la dirección IP desde la que provienen estas conexiones para que tu
sitio no caíga
Angelo Aguilar: Ok veamos , si por ejemplo en una oficina
donde toods los usuarios estan conectados al mismo wifi por ejemplo y todos
inician sesion en mi sitio , esto va afectar bastante …eso era lo que creia
anteriormente o almenos lo que pensaba
Miguel : SI claro que afectaría
Miguel : Serían, por ejemplo 10 conexiones desde la misma
IP
Miguel : Que es la forma en que ls hackers atacan
comunmente
Angelo Aguilar: Per me dices que si diez usuarios inician
sesion , esten donde esten , esto tambien afectara ?
Miguel : Por lo que nuestras firewalls bloquean dichas IP
Miguel : Claro, porque en ese caso no se bloquean las IPs
Miguel : Por lo que cada uno de los usuarios estaría
utilizando los recursos del servidor
Miguel : Es como si tu usaras tu cuenta 10 veces
Angelo Aguilar: Diablos esta noticia si que jode mi
proyecto
Miguel : Como te dije, tenemos planes que te ofrecen
recursos exclusivos
Miguel : Así que podrías considerarlos
Angelo Aguilar: es decir , solo podre tener 10 usuarios ?
eso es todo ?
Miguel : 10 usuarios conectados al mismo tiempo
Miguel : Puedes tener un millón registrados
Miguel : Si se conectan de 9 en 9, no hay problema
Angelo Aguilar: En pocas palabras por ejmplo no podriamos
iniciar sesion 20 usuarios en un foro privado e iniciar un debate en tiempo
real ?
Miguel : Exactamente, de hecho para conexiones en tiempo
real, ningún servidor compartido en le mercado te va a funcionar
Miguel : Porque las aplicaciones de chats consumen muchos
recursos
Angelo Aguilar: Ushh ahora si me jodi …levo meses
trabajando en un proyecto 🙁
Miguel : Porque están constantemente conectando con el
servidor
Miguel : No tiene por que ser así
Miguel : Puedes tener tu proyecto perfectamente
Miguel : Utilizando una solución dedicada como lo es el
Cloud
Miguel : Donde puedes crear «Eventos» en el
servidor (por ejemplo) para que en caso de conectarse muchas personas y
necesitar mas recursos que los que tiene tu plan, el servidor los toma
automáticamente
Miguel : Así que no se trata de que no puedas llevar a cabo
el proyecto, sino que necesitas las herramientas adecuadas
Miguel : Para que sea exitosos
Miguel : Exitoso*
Angelo Aguilar: Si claro pero no tengo presupuesto ahun
para esto , mi plan era crear secciones privadas para usuarios con tutoriales y
esas cosas , y la primera etapa era gratis , por lo que posiblemente ingresrian
mas de 10 de hecho
Miguel : Puedes tener video tutoriales enlazados a youtube,
con cuentas privadas
Angelo Aguilar: de ahi en adelante deciden o decidian pasar
a un plan de pago , pero con esto la cosa cambia
Miguel : Eso te ayuda a evitar la carga del servidor
Miguel : Si quieres piensa en las opciones que te he
recomendado
Miguel : Y si necesitas algo más puedes volver y te
ayudamos
Angelo Aguilar: Si pero el usaurio tendria una pagina llamada
mi cuenta , un enlace a los tutoriales gratuitos y un boton llamado actualizar
a plan de pago …por eso era necesario el inicio de sedion
Angelo Aguilar: sesion
Miguel : Bueno, como te comentaba es cuestión de que lo
analices
Miguel : Si necesitaras algo mas, aqui estamos 24/7
Angelo Aguilar: Eliminar mi proyecto es mi única opción
ahora 🙁
Angelo Aguilar: Estas totalmente seguro de lo que me dices
Miguel?
Angelo Aguilar: De verdad que esto me aflige bastante…
Miguel : Claro, prefiero decirte todo lo que necesitas
saber antes de arriesgar que empiece a correr tu página, tengas las múltiples
conexiones y se caiga el servidor
Hola, Fernando.. gracias por el tutorial.. tengo una consulta.
Tu que tienes muchas mas experiencia en esto.. de los plugins conocidos hay alguno que cause problemas o no funcione correctamente con una instalación multisite.. Eh odio en algunos blog que el W3 Total Cache no funciona correctamente, nosé si es cierto.. Ojala que no, por que pensaba usar su configuración para Memcached.
Gracias, quedo atento a tus comentarios 😀
Es que son muchos plugins, y sí, los hay que no van bien en multisitio, tendrías que especificar
Hola Fernando, tengo un dilema con multisitio, tal como se plantea por defecto al implementarlo mete todos los contenidos de cada uno de los sitios hijos en una misma base de datos, llegado a un momento esa BD va a tener unos cuantos MB de peso y eso puede llegar a crear conflictos de rendimiento a la hora de entregar una web, y mas cuando esta tenga quizás múltiples visitas. Mi pregunta es la siguiente. ¿Es posible implementar WP Multisitios y que por cada uno de ellos se cree una base de datos independiente? cosa que no sean todos en una misma BD?. Gracias.
Hola Fernando, me pareció muy buena tu explicación anterior. Soy un poco nuevo con wordpress, en realidad lo que quiero saber como migrar mi red multisitio que he creado en local a un hosting en linea. Sería de gran ayuda, gracias.
WOW! Funcionó perfectamente. Muchísimas gracias, me has salvado la vida. :3
Hola, tengo una duda en relación a una migración. Tengo un wordpress y para hacer un rediseño monté otro wordpress en un subdomio. Por error no cree una base de datos nueva para ese otro wordpress y le puse la bbdd del wodrpess ya existente. Cuando ahora he ido a hacer la migración me he dado cuenta que en la única base de datos están mezcladas la información de los dos wordpress. Por ejemplo, tengo dos archivos wp_25options. He hecho la migración pero me pasan cosas extrañas de no cargar bien los estilos y creo que puede ser por no tener la bbdd en condiciones. La pregunta es:
¿Cómo podría diferenciar las celdas de uno y otro wordpress, para borrar las del antiguo, o aislar las del nuevo y exportar la bbdd con las celdas del nuevo wordpress y ponerlo en una instalación limpia?