Sergio Guerrero | Desarrollo web y Tiendas virtuales
Cómo actualizar Magento
Febrero 14th, 2010 - [Enlace local]

Actualizando Magento con un paquete completo o mediante SVN
A continuación presentaremos los pasos a seguir para actualizar Magento utilizando un paquete completo o mediante SVN (repositorio Subversion). Los pasos para actualizar mediante el Gestor MagentoConnect los veremos más adelante.
- Realizaremos una copia de seguridad de la base de datos
- Desde Magento: Admin, → Sistema → Herramientas → Copias de Seguridad
- También podemos realizar la copia de seguridad mediante PHPMyAdmin (esta opción puede fallar debido a los límites de ejecución en los scripts PHP)
- Podemos realizar una exportación vía Shell (SSH):
mysqldump -u USER -p DBNAME > dump.sql - Para volver a importar vía Shell, utilizaremos:
mysql -u USER -p DBNAME < dump.sql
- Realizaremos una copia de seguridad de todos los archivos de código modificados y deberemos no olvidarnos de mantener el archivo original de instalación
- No olvidemos guardar una copia del directorio media, donde se guardan todas las imágenes de los productos y de las categorías
- Realizaremos una copia de seguridad del archivo app/etc/local.xml
- Descargaremos un nuevo archivo de instalación o realizaremos una actualización mediante SVN siempre y cuando hayamos verificado antes el repositorio de Magento
- Extraeremos todos los archivos del paquete y los subiremos a nuestro servidor
- Borraremos los directorios var/cache y var/sessions
- Accederemos a alguna de las páginas de la tienda mediante nuestro navegador
- La actualización de la base de datos se realizará automáticamente
- Ya hemos terminado!
Actualizando Magento mediante MagentoConnect
- Nos dirigiremos a: http://
/downloader - Accederemos al Gestor MagentoConnect utilizando un usuario que tenga todos los permisos
- Debemos asegurarnos de marcar la opción "Limpiar todas las sesiones después de instalar o actualizar"
Cómo actualizar desde los paquetes fuente de instalación
Es posible que al acceder al Gestor MagentoConnect veamos que no existe ninguna extensión. Esto significa que acabamos de subir los archivos sin utilizar el sistema PEAR. En ese caso, introduciremos: magento-core/Mage_All_Latest dentro del campo Clave de la extensión y presionaremos el botón de instalar. Esto instalará las últimas versiones de los principales paquetes de MagentoConnect y permitirá realizar futuras actualizaciones mediante MagentoConnect.
Si justo después de completar la instalación y refrescar la página, obtenemos un error 500, y nos sucede lo mismo tanto al acceder a la página principal del admin, como a la parte frontal de la tienda, esto significa que debemos cambiar los permisos de algunos archivos PHP. Para cambiar los permisos de estos archivo, accederemos vía Shell (SSH) o vía FTP, navegaremos por los directorios de Magento y revisaremos los permisos de archivo index.php. Si durante la instalación se cambiaron los permisos de 644 (rw-rr) a 666 (rw-rw-rw), podemos utilizar el siguiente comando para cambiarlos los permisos de todos nuestros archivos .php a 644 (el parámetro -v hará que se muestren los detalles de los cambios que se realicen):
find -type f -name '*.php' -exec chmod -v 644 {} \;
Ahora, volveremos a abrir la página: downloader/index.php en nuestro navegador.
Cómo actualizar una extensión concreta
Por lo menos, deberemos tener una extensión marcada en amarillo, lo que significará que en el servidor MagentoConnect existe una versión superior.
-
Para cada una de las extensiones que queramos actualizar, deberemos seleccionar la opción "Update to X.X.X.X" en su correspondiente desplegable.
-
Para actualizar la módulos del núcleo de Magento deberemos escoger los siguientes paquetes, y todas las dependencias requeridas serán actualizadas de forma automática:
-
magento-core/Interface_Adminhtml_Default
-
magento-core/Interface_Frontend_Default
-
magento-core/Interface_Install_Default
-
magento-core/Mage_Core_Adminhtml
-
magento-core/Mage_Core_Modules
-
Cómo actualizar el Gestor MagentoConnect
-
El Gestor MagentoConnect no se instala, por defecto, como un paquete de PEAR . Si queremos actualizarlo, deberemos instalarlo como un paquete de PEAR.
-
Introduciremos
magento-core/Mage_Downloaderen el campo para la Clave de la extensión y presionaremos sobre Instalar. -
Después de esta primera instalación, MagentoConnect podrá ser actualizado de la misma forma que lo hacemos para el resto de extensiones.
El Gestor MagentoConnect no puede ser desinstalado
Utilizando acceso Shell (SSH)
-
Para inicializar el registro de comandos PEAR de Magento, deberemos ejecutar el siguiente comando en la consola. Antes de ejecutarlo, deberemos asegurarnos de estar situados sobre directorio raíz de Magento:
-
./pear mage-setup . -
No olvidemos incluir el punto final en el comando anterior
-
Seleccionaremos la versión de PHP (unix):
MAGE_PEAR_PHP_BIN=/usr/local/bin/php; export MAGE_PEAR_PHP_BIN-
Si nuestro hosting es 1and1.com, debemos utilizar el siguiente comando PHP5:
MAGE_PEAR_PHP_BIN=/usr/local/bin/php5; export MAGE_PEAR_PHP_BIN
-
Cómo actualizar desde los paquetes fuente de instalación
Si no hemos utilizado MagentoConnect o el sistema de comandos PEAR para instalar Magento, necesitaremos utilizar el siguiente comando para realizar la instalación inicial de los módulos del núcleo de Magento:
-
./pear install magento-core/Mage_All_Latest
Puede que antes de ejecutar este comando necesitemos actualizar las extensiones de PEAR mediante el comando que se expone en el siguiente punto.
Cómo actualizar todas las extensiones disponibles
-
./pear upgrade-all
Cómo actualizar una extensión concreta
-
./pear upgrade magento-core/Mage_Core_Modules magento-core/Mage_Core_Adminhtml -
./pear upgrade magento-core/Interface_Adminhtml_Default magento-core/Interface_Frontend_Default magento-core/Interface_Install_Default
Cómo actualizar el Gestor MagentoConnect
-
Si todavía no tenemos instalado el Gestor MagentoConnect como un paquete de PEAR:
-
./pear install magento-core/Mage_Downloader -
Una vez instalado, se actualizará como el resto de extensiones de Magento.