Last updated July 20, 2016. Created on July 19, 2011.
Edited by mrandy543, Gábor Hojtsy, rbilinda, neerajsingh. Log in to edit this page.

Introduction

These documents explain updating between minor Drupal versions, such as Drupal 7.5 to 7.12 or Drupal 8.0.3 to Drupal 8.1.2. For updating between major versions (Drupal 6 to 7/8 or Drupal 7 to 8), see the documentation on upgrading.

First steps and definitions:

  • If you are upgrading to Drupal version x.y.z, then x is known as the major version number, y is known as the minor version number, and z is known as the patch version number. The download file will be named drupal-x.y.z.tar.gz (or drupal-x.y.z.zip). Drupal 7 uses only x.y (MAJOR.MINOR) to designate versions.
  • All directories mentioned in these documents are relative to the directory of your Drupal installation.
  • Make a full backup of all files, directories, and your database(s) before starting, and save it outside your Drupal installation directory. Instructions may be found at http://drupal.org/upgrade/backing-up-the-db
  • It is wise to try an update or upgrade on a test copy of your site before applying it to your live site. Even minor updates can cause your site's behavior to change.
  • Each new release of Drupal has release notes, which explain the changes made since the previous version and any special instructions needed to update or upgrade to the new version. You can find a link to the release notes for the version you are upgrading or updating to on the Drupal project page (https://www.drupal.org/project/drupal).

Update problems

If you encounter errors during this process:

  • Note any error messages you see.
  • Restore your site to its previous state, using the file and database backups you created before you started the update process. Do not attempt to do further updates on a site that had update problems.
  • Consult one of the support options listed on http://drupal.org/support

Update Process

The standard process for updating is as follows:

  1. Take backups of all files and database
  2. Put site in Maintenance Mode (under Configuration / Development)
  3. Delete all files except the Sites folder and any files such as ".htaccess" and "robots.txt" that have been customized. (This assumes any contributed modules, custom themes etc. that you use are in the sites directory)
  4. Upload the new files except the sites directory or the .htaccess or .robots.txt files.
  5. If changes have been made to robots.txt or .htaccess in the new version ensure these are incorporated into your version. The release notes should tell you whether this is required.
  6. Run Update.php by visiting yourdomain.com/update.php
  7. Switch off maintenance mode by reversing step 2
  8. Take some time to test the site is functioning as expected.

More in-depth information on updating and upgrading can be found at http://drupal.org/upgrade

Looking for support? Visit the Drupal.org forums, or join #drupal-support in IRC.

Comments

nigelw’s picture

For those of you that are complaining about the update process of Drupal. Stop whining and start helping to work on #606592: Allow upgrading core with the update manager for Drupal 8

Furthermore, updating Drupal is not that complicated. The steps above are meant for the total newbie and cover each step in depth just to make sure you don't blow up your site.

To update your site:

1. Put site in Maintenance Mode
2. Backup your site (Files and DB)
3. Delete Core files (Everything except the 'sites" folder)
4. Replace core files with latest version (less the 'sites' folder)
5. Run Update.php

Simple. :)

maki3000’s picture

Just one question concerning the minor Drupal8 core update:

Delete Core files (Everything except the 'sites" folder)

What would that be for D8?

  • core
  • vendor
  • .csslintrc
  • .editorconfig
  • .eslintignore
  • .eslintrc
  • .gitattributes
  • .htaccess
  • autoload.php
  • composer.json
  • composer.lock
  • example.gitignore
  • index.php
  • LICENSE.txt
  • README.txt
  • robots.txt
  • update.php
  • web.config

right?

in https://api.drupal.org/api/drupal/core%21UPGRADE.txt/8 it is said:

Sometimes an update includes changes to default.settings.php (this will be noted in the release notes). If that's the case, follow these steps...

sorry, but i don't want to read all the release notes everytime. is there an easy solution for that?

i'm looking foreward for: https://www.drupal.org/node/606592
THX for your work!!!

gle’s picture

If it's so simple, why isn't a simple update.sh script provided?

This is 2016 and I still need to search the documentation on drupal.org (there isn't even a link on the release notes!) in order to update by deleting and copying files manually. WTF?!

I'm not whining, I'm just telling this poor UX is not on par with the quality of drupal.

mlncn’s picture

In which case the update process is as follows:

composer update

That will update composer.lock files, so changes to those should also be committed, and other people working on the project (or yourself from another environment) will get that version of Drupal and dependencies when running composer install.

See Greg Anderson's answer to this Stack Overflow question.

benjamin, Agaric

Quint’s picture

I ran Drupal 3, 4, and 5. The updates and upgrades became such a huge hassle after doing them a dozen times. They were not really that complicated if all the modules were compatible with the new Drupal version, but with 3 sites I got to dread every update.

And years ago, according to the 'experts' in the forum it was supposedly "not possible" to auto-update Drupal. I didn't see why. And Wordpress has been doing it for a long time.

Well, I didn't update my Drupal 5 sites for a couple weeks and one of them got some infected with some malware. I'd had enough, and I moved everything over to Wordpress. I have eight sites in Wordpress now. Minor updates are automatic and have never broken anything. Even major updates just take a couple clicks, and only once did I have to fix the plug-ins.

Now five years later I thought I'd check back on Drupal because I have a new site perfect for Drupal, but seriously?, Drupal still has manual updates?! Like GLE says, it's 2016! What a shame. I'm surprised and disappointed, but back to Wordpress (and their painless clicky-click updates) I guess. ... :( ... Or even HTML that never needs an update.

F.E.M’s picture

All the latest updates no matter how small get pushed from upstream directly into my install.

Quint’s picture

Interesting. Does Pantheon take care of the updates and upgrades? Is it $25/month?

waqariz’s picture

That's well pretty process. It has worked for me.

thursday_bw’s picture

The process of updating a code base by extracting a downloaded tar.gz or zip in a development settings is far from best practice.

This is what version control is for.

The update procedure that professional teams have been using for years is as described here: https://www.drupal.org/node/803746#updatecore

however this no longer works.

on an existing code base for 8.0.6 apply

git checkout 8.1.0

And we are now presented with a pile of conflicts, presumably because parallel development has happened across the relevant branches.

What is the correct procedure now for Drupal 8 updating minor versions using git?

musicaltrades’s picture

This article is vague to say the least. There are no updating instructions, only suggestion to backup first, then update. How do we install the updates? This post offers no information whatsoever toward updating Drupal.