Upgrading modules

Last modified: November 19, 2009 - 16:24

Upgrading modules is a more involved process than installing or removing modules. The steps should be followed closely, as all these steps are necessary to ensure the stability of your website.

Backup your Files and Database

Your website's database contains all of its content, as well as all of its settings and configuration. As such, any operation which modifies it could, although unlikely, be potentially damaging. Backing up your website's files will ensure that you can revert back to the point when things were working. We highly recommend you take steps to back it up before performing this procedure. More information about taking backups may be found at http://drupal.org/node/250790.

Update Module

Update capabilities are not automatically available in Drupal. To keep track of updates to your installed modules, you may want to install the Update module, which is located here: http://drupal.org/project/update_status

Check Module status

  • The Update module can check your modules for updated status automatically to assist you with updates. It will provide you with download links and available versions. Once the Upgrade module is installed and enabled, you can reach a list of modules for update by either clicking on the “available updates” link on the main administration page or by going directly to example.com/admin/logs/update. This page checks the current and the installed versions of modules, and will give a report on their status. This will allow easy updates without having to manually check each module installed in your website.
  • In this example, the Views module is out of date. Any out-of-date module will be labeled in red, as shown above. We can upgrade this now.

Disable Module

You must first disable the module. Here is a tutorial that covers how to disable a module Follow only part of the instructions listed there. Stop at the section labeled “Uninstalling a module” and only perform the first section of steps for disabling a module.

Reinstall Module

Next is reinstalling the module. The Update module also provides a download link which may be used to download the updated version instead of going to Drupal.org. Delete the outdated module's files and upload the new ones as if you were installing the module for the first time.

Run update.php

Update.php is a script that is used to maintain websites after upgrades. A new version of a module may change the structure of the database. This script adjusts the database to fit the updated module. As the database contains all of the content and the settings of your website, this is an essential step to ensure its continued operation.

  • The update.php script can be called two different ways. You may go to the main administration page and click on the “update.php” link on the front page, or you may go directly to example.com/update.php in your browser.

  • You will require admin privileges to perform this upgrade. The first account created on your site will have the required privileges.

  • If you do not have the proper privileges, you will receive this screen. Either log in or follow the instructions on the page to perform the upgrade.

  • Once you have the proper privileges, you will see this screen. Click on the “Select versions” link to expand the section.

  • These dropdown boxes contain database updates specified by modules you have installed. If you are not developing your own module or troubleshooting, you should leave them alone and just click the “Update” button. The correct items should already be selected by default -- either “No updates available” if there have not been any database changes, or a number, which is simply an ID number of the database upgrade being applied.

  • This next page may take a small amount of time to load, as the server is modifying your database. This page will display any errors that may have occurred during the process. If none have occurred, your module upgrade is complete!

From TopNotchThemes.com

Details

kayaker - April 26, 2008 - 20:59

0. Test the new version of the module on your test site. (Goes without saying except when we don't have time.)

1. You must take your site offline during this process. If you have a multi-site installation, then that means all sites.

2. In Drupal 6, I believe Update status is in core and not a separate module

3. Under Reinstall modules, don't overlook

Delete the outdated module's files

If you don't remove the old modules, as I have learned the hard way, Drupal may continue to report that you need the update.

Note: If the old module contains 4th party programs like FCKEditor, TinyMCE, etc. then removing the whole module means that you have to re-install/re-configure these other programs.

4. On a multi-site with multiple databases, I believe you have to run Update.php on each site.

Why is experience so painful?
__________________________________________________________________________________

Aweigh - not all who wander are lost.

Between the "Reinstall

jlevis - November 8, 2008 - 23:05

Between the "Reinstall Module" step and the "Run update.php" step, there should be another step named "Re-enable Module".

When upgrading the CCK module just now, I ran update.php before re-enabling the module and it threw an error asking me to do so first, and then run update.php again.

This was upgrading cck-6.x-2.0-rc10 to cck-6.x-2.0.

Drush module automates some upgrade steps

happysnowmantech - November 30, 2008 - 03:54

The drush module automates a significant part of the module upgrade process and can be invoked from the command line. It is especially helpful if you are installing or upgrading a lot of modules on a regular basis.

best practice sequence for upgrading contribs

rsvelko - December 17, 2008 - 12:18

The docs team is discussing right now #346718: more discoverable info on update/upgrade of modules and core what is the best way to present the update/upgrade manual. So while we get it all right I give you the best practice update/sequence.

PS. It all started when I googled for "drupal update module" - and struggled to find the right page with the right update sequence - http://drupal.org/node/142767#comment-950446

So, to confirm, you would recommend the following?

Upgrading modules while doing a major Drupal version upgrade (e.g. Drupal 5 to 6):

1) Download the latest version.
2) Unzip it.
2.5) Disable old module through admin panel
3) Delete the old module + folder.
4) Replace old with new on server.
4.5) Re-enable the new module through admin panel
5) Run update.php to update the database

vs. Upgrading modules when not upgrading Drupal:

1) Download the latest version.
2) Unzip it.
(do not disable the old module)
3) Delete the old module + folder.
4) Replace old with new on server.
5) Run update.php to update the database

Link error: Backup your Files and Database

Ashford - August 7, 2009 - 02:08

The link in the paragraph about Backup your Files and Database doesn't go any where.

 
 

Drupal is a registered trademark of Dries Buytaert.