Actualización de Magento de 1.7 a 1.9

43

Necesito actualizar mi tienda Magento de 1.7 a 1.9. Soy muy nuevo en Magento, SSH y MySQL. Me preguntaba cuál es la forma más fácil de actualizar sin romper mi sitio web.

Adam Allen
fuente
2
Lo que Praful escribió es demasiado corto. Puede tener muchos problemas con las extensiones, su tema, las partes faltantes en el tema, especialmente todos los form_keys en la versión 1.8. Realmente, si no conoce sus herramientas, tenga mucho cuidado ¡Y NO INTENTE SU ENTORNO EN VIVO!
Fabian Blechschmidt
Hice un clon de mi sitio web a través de cpannel (llamado: senore.com/ecommerce) y luego actualicé el sitio de clon, la actualización funcionó (bueno, dice en el backend que ahora es la versión 1.9.0.1), sin embargo, cuando abro mi original sitio web (senore.com) ninguno de los enlaces funciona, solo dice error 404 y tengo que agregar "/ ecommerce" para ver las páginas. ¿Alguna idea de por qué?
Adam Allen
Hola Adam, como creo, tampoco creaste un clon de base de datos. Para lo mismo, debe ejecutar el sitio web original en la base de datos anterior y el nuevo magento 1.9 en la base de datos recién creada. Así que ambos sitios web funcionan simultáneamente
Praful S Zaru
¡¡Casi 25k vistas y solo 4 votos!?!?!?!?!?! ??
SR_Magento
Honestamente, la mejor opción para contratar a un proveedor profesional de servicios de actualización de Magento como magecomp.com/magento-upgrade-service.html
Gaurav Jain el

Respuestas:

50

Hoja de ruta de actualización para CE 1.9.0.1 desde 1.7

  1. Realice una copia de seguridad de la base de datos actual y el código 1.7 actual. coloque el archivo maintenance.flag dentro de la carpeta de código 1.7 para poner el sitio web fuera de línea.
  2. Descargue la última versión de magento desde http://www.magentocommerce.com/download
  3. Elimine todas las carpetas y archivos de su código 1.7 excepto maintenance.flag(pero debe tener una copia de seguridad en algún lugar) y coloque todas las carpetas y archivos desde el 1.9.
  4. Ahora desde su 1.7 combine sus siguientes carpetas personalizadas en la 1.9
    • Comunidad app/code/community
    • Local app/code/local
    • Medios de comunicación
    • su tema o paquete ( app/design/frontend/default/<your theme>o app/design/frontend/<your package>)
    • carpetas personalizadas de Skin (tanto para adminhtml como frontend).
    • copia tus archivos xml personalizados de app/etc/modules/a actualapp/etc/modules/
    • cualquier carpeta de tema de administrador personalizada de adminhtml/default/yourtheme.
    • copie sus carpetas personalizadas de adminhtml/default/default/(1.7) a adminhtml / default / default / (1.9).
    • archivos js personalizados si hay alguno de app/js/.
  5. Ahora vaya a app/etc/local.xml.Edit detalles de la base de datos. Ingrese su nombre de usuario y contraseña de base de datos y el nombre de la base de datos.
  6. Elimine el maintenance.flagarchivo y verifique el sitio en el navegador. se hace.
Pradeep Sanku
fuente
2
No olvide la clave de cifrado de la versión anterior. Cuando actualice el sitio a una nueva instalación, asegúrese de usar la misma Clave de cifrado
Mohamed23gharbi el
Este método funciona bastante bien para mí. Sin embargo, algunas extensiones pueden necesitar ser reinstaladas.
yldziner
12
Yo diría que no es una guía completa sobre cómo hacerlo. Funcionará en algunos casos específicos, pero si su tema personalizado cambió la página de inicio de sesión, por ejemplo, sus clientes ya no podrán iniciar sesión. Consulte: stackoverflow.com/questions/20565688/... Además, mencionar el mantenimiento.flag sugiere que Está bien hacer esto en vivo. Nunca actualice Magento en un entorno en vivo. Siempre pruebe primero en un desarrollador / puesta en escena para detectar casos como el mencionado por mí, porque hay mucho más que puede salir mal.
Wiktor Jarka
1
Además, no olvide agregar las teclas de formulario a la nueva plantilla; de lo contrario, no podrá usar ninguno de los formularios. Consulte stackoverflow.com/a/20702053/564338 para obtener más información.
Daniel West
7

En primer lugar, cree la base de datos igual que el actual magento 1.7. Luego descargue magento 1.9.0.1 desde http://www.magentocommerce.com/download

Ahora ejecute la instalación de magento 1.9 y elija la base de datos de su sitio web anterior (magento 1.7.0.2)

Ahora puede llevar el tema y la máscara de la versión anterior a la nueva. Luego, después de verificar una por una extensión de terceros de la antigua a la nueva. Lo hice y funcionará para mí.

Praful S Zaru
fuente
4

Instrucciones de actualización de Magento 1.x usando SSH o línea de comando:

1) Vaya a su directorio raíz de Magento

cd /path/to/your/magento/folder

2) Habilite el modo de mantenimiento para su sitio de Magento

Para esto, debe crear un archivo vacío nombrado maintenance.flagen su directorio raíz de Magento.

touch maintenance.flag

3) Borrar caché y sesiones

rm -rf var/cache/* var/session/*

4) Verifique la compilación y desactívela si está habilitada

Comprobar estado del compilador

php -f shell/compiler.php -- state

Si Compiler Statuses Disabledasí, puede omitir este paso y pasar al siguiente.

Si Compiler Statuses Enabledasí, debe deshabilitarlo con el siguiente comando:

php -f shell/compiler.php -- disable

5) Dar permiso de escritura a todos los archivos y carpetas de Magento

chmod -R 777 .

6) Dar 550 permisos de archivo mage

El archivo Mage es un archivo de script de shell. Con el permiso 550, solo estamos haciendo que el archivo no se pueda escribir + pueda leerse y ejecutarse solo por usuario y grupo.

chmod 550 ./mage

7) Cambiar la configuración de configuración a estable

./mage config-set preferred_state stable

8) Actualiza Magento

Puede enumerar todos los paquetes instalados con el siguiente comando:

./mage list-installed

Puede enumerar todos los paquetes actualizables con el siguiente comando:

./mage list-upgrades

El siguiente comando actualizará todos los paquetes:

./mage upgrade-all --force

Tomará algún tiempo completar la actualización.

9) Reindexar datos

Después de completar la actualización, debemos reindexar todos los datos.

php shell/indexer.php reindexall

10) Luego, borre el caché y la sesión nuevamente.

rm -rf var/cache/* var/session/*

11) Habilite la compilación solo si se habilitó antes de la actualización

Verifique el paso 4) anterior.

Si la compilación no estaba habilitada en el paso 4), puede omitir este paso e ir al siguiente.

Si la compilación estaba habilitada para su sitio web y la había deshabilitado en el paso 4), debe habilitarla con el siguiente comando:

php -f shell/compiler.php -- enable

12) Cambiar permiso de archivos

Antes de la actualización, hemos cambiado el permiso de todos los archivos y carpetas a 777. También debe otorgar el permiso adecuado a todos los archivos y carpetas de su sitio Magento.

Convierta el permiso de archivos a 644 y el permiso de carpetas a 755

find . -type f -exec chmod 644 {} \; && find . -type d -exec chmod 755 {} \;

Otorgue permiso completo de lectura y escritura, es decir, 777 a las carpetas var y media.

chmod -R 777 var media

Otorgue permiso 550 al archivo de script de shell Mage

chmod 550 ./mage

13) Verifique la versión de los paquetes instalados

Verifique las versiones de los paquetes instalados. Los paquetes deben mostrar la última versión, ya que ya están actualizados.

./mage list-installed

14) Lista de paquetes actualizables

Enumere los paquetes actualizables (paquetes que necesitan una actualización). Esto debería dar como resultado un mensaje que dice No hay actualizaciones disponibles porque todos los paquetes ya se han actualizado a la última versión.

./mage list-upgrades

15) Deshabilite el modo de mantenimiento para hacer que el sitio esté vivo

rm -f maintenance.flag

Esto eliminará el archivo maintenance.flagy luego el sitio volverá a estar activo.

Ahora puede iniciar sesión en el administrador de Magento y ver la versión de Magento que se muestra en la sección de pie de página. Debería mostrar el último número de versión.

Fuente: Magento 1.x - Actualizar / Actualizar a la última versión a través del navegador y la línea de comandos

Mukesh Chapagain
fuente
3
Current Version Magento CE 1.7.0.2

Admin panel -> System -> Magento Connect -> Magento Connect Manager

Check for Upgrades

Mage_All_Latest -> select Upgrade to 1.9.0.1 

Asegúrese de tener en cuenta las extensiones de terceros y las personalizaciones locales, haga una copia de seguridad adecuada.

TBI Infotech
fuente
17
Nunca use Magento Connect Manager ... Hay muchos problemas con él ...
Simon
1
Además, al actualizar con Connect, no sabrá qué modificaciones hizo.
Mohamed23gharbi
1
@ Simon (o alguien más) ¿podría aclarar su declaración, tal vez con las fuentes? Hice una actualización de prueba de 1.7 a 1.9 todo funciona bien.
Akif
@Akif simplemente busca en Google. Consulte, por ejemplo, integer-net.com/… o magento.stackexchange.com/q/40359/142 .
Simon
1
@ Simon, gracias, no veo por qué uno no debería usarlo en base a los argumentos del primer enlace considerando que uno sabe lo que está haciendo. Para los no profesionales, creo que la mayoría de los argumentos son válidos. Espero que esto aclare su declaración con +12 para futuras referencias. Debería ser más como; "No lo use a menos que sepa lo que está haciendo".
Akif
1

¿Por qué alguien no sugiere la forma más fácil real, como lo exige la pregunta?

Solo ve a System >> Configuration >> Connect Manager

y use la llave http://connect20.magentocommerce.com/community/mage_all_latest

Magento1 Connect Manager

y si necesita una versión específica, puede descargarla y cargarla como un paquete en el mismo magento connect

Actualización del paquete Magento Connect Manager

Kumar A.
fuente
+1 Así es, literalmente, cómo actualizo las tres instalaciones de Magento por separado. Si no fuera por mí revisando y probando todo a fondo, literalmente tomaría tal vez 20 segundos para cada actualización. Comenzamos en 1.7 y hemos actualizado fácilmente (aparte de form_keys para 1.8) de forma incremental a 1.9.4.0. Solo tiene que borrar los directorios pkginfo / y var / package antes de comenzar el proceso de actualización a través de Magento Connect.
MagentoAaron
0

Siga estos pasos para actualizar su tienda Magento 1.7 a Magento 1.9:

  1. Compilación Magento desde Sistema> Herramientas> Compilación> Desactivar

  2. Magento Cache desde Sistema> Gestión de caché> Seleccionar todo> Acción: Desactivar> Enviar

  3. Elimine todos los archivos y carpetas de su directorio Magento v1.7 (asegúrese de mantener su copia de seguridad en un lugar seguro) y coloque todos los archivos y carpetas del paquete Magento v1.9.x.

  4. Abra su navegador web favorito, vaya a su enlace. Se le pedirá que instale una nueva tienda Magento v1.9.x, pero no se preocupe, continúe y cuándo llegará a la página de Configuración. Llénelo con la misma información que utilizó para su tienda Magento v1.7 anterior, que incluye el nombre de host del servidor SQL DB, el nombre DB de SQL, el nombre de usuario del servidor SQL, la contraseña del servidor SQL, la URL base y la ruta de administración.

  5. Una vez que termine la instalación, no visite la página frontend o backend. Desde su copia de seguridad de archivos y carpetas de Magento v1.7, copie y combine los siguientes archivos y carpetas en su nuevo directorio de tiendas Magento v1.9.x:

    • Carpeta de la comunidad: ROOT> aplicación> código> comunidad

    • Carpeta local: ROOT> aplicación> código> local

    • Carpeta de medios en el directorio raíz: ROOT> medios

    • Su carpeta de temas: ROOT> aplicación> diseño> frontend> predeterminado (nombre del paquete)> "your_theme" (Si está utilizando el paquete "predeterminado" para su tema, simplemente copie la carpeta del tema; de lo contrario, debe copiar todo el paquete que incluye su tema carpeta)

    • Carpeta de máscara en el directorio raíz: RAÍZ> máscara

    • Archivos XML personalizados del módulo: ROOT> aplicación> etc> módulos> "your_custom_XML_files"

    • Carpeta de temas de administración: ROOT> aplicación> diseño> adminhtml> predeterminado

    • Carpeta JS personalizada: ROOT> aplicación> js

    • Ahora finalmente elimine todo de ROOT> var> caché y de ROOT> var> sesiones para borrar todas las sesiones y caché.

Syed Muneeb Ul Hasan
fuente