I am trying to perform core update to site that was installed from backup of another Drupal 6.16 website with content and modules. Guides suggest to disable all contributed modules during update and enable them after. (Can this be skipped?) I know that modules can be disabled by changing their "status" in system table. I was thinking that contributed modules has different path value so they might be filtered somehow. Is it a good idea to export status column of the system table, set their status to 0, and import after?


It is not necessary to disable all contrib modules during a minor update of Drupal. If you are planning on exporting and importing your database anyway, I would recommend using Drush to do the update on a local development copy of your site. That way, you can test the result of the update before moving it back to the live site. It is not advisable to update your live site directly.

You might also want to give serious consideration to finding a better hosting service. If you had ssh access, you could migrate your database from live to dev with drush sql-sync, which is a great time-saver.

Edit: If you do want to disable all of your modules via Drush, here is a shell alias that will do it (from examples/example.drushrc.php in Drush-5):

# $options['shell-aliases']['dis-all'] = '!drush -y dis $(drush pml --status=enabled --type=module --no-core --pipe)';

If you want to enable all of the contrib modules from the live site on the dev site, you could do something like this:

drush @dev -y en $(drush @live pml --status=enabled --type=module --no-core --pipe)

I don't recommend disabling modules by manipulating the SQL directly; it's much more reliable to use Drush.


I would suggest using Drush to do the update. Specifically, the drush up command. In general, Drush will be a huge time saver for you.

  • Yeah, Drush is definitely greate tool for greate sites! But unfortunately this one is on shared hosting without any SSH feature
    – ijujym
    Mar 30 '12 at 0:24
  • In that case, I'd suggest pull down the website and the database to your local dev server, do drush up locally, then put the updated files and the database online.
    – Beebee
    Mar 30 '12 at 15:14

If you don't have drush installed on the server you can run this on the database:

UPDATE system SET status=0 WHERE filename LIKE '%sites%'

Remember that this will only disable the modules, it won't uninstall them.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.