This can be a tricky thing to do depending on what version of xoops you are upgrading from and to.
July 2006: NOTE: For upgrades from 2.0.10 ... 220.127.116.11 to 2.0.14 please refer to the 2.0.14 release notes
Here are some instructions to assist with the process. If you need to upgrade through a series of xoops versions - say from 2.0.9 to 2.0.13 then it is advisable to take the time to do them one at a time.
A basic approach:
1- Find out which xoops version you have
2- Identify the correct upgrade files package and download
3- Deccompress package and check readme files.
4- Backup existing site: that is your database and files.
5- Close your site to visitors.
6- Optional: Set up a rollback. You can do this by noting each new file in the upgrade file set, then go to your existing files on your server and rename them to something different.
upgrade file: header.php
existing file on server: old-header.php
Do this for each file that is part of the upgrade. The purpose of this will obvious, if your upgrade goes wrong. You still have the old files available to rollback to.
It can be a long process.
7- Copy your upgrade files into your xoops directories maintaining identical structure.
This can be achieved in 2 ways. Either opening each directly and manually copying files over, OR drag and drop the whole contents of the upgrade patch into your xoops main directory. This needs to be done with caution.
Make sure that the upgrade files are packed in correct relative directories first. Also make sure your FTP settings are correct for updating/overwriting newer files.
If you opted for a rollback you will not be overwriting any files as your existing files will be already renamed... right?
If in any doubt, practice upgrades first on a test site or local server.
HACKS !!! Note, if you have hacked any files that are included in an upgrade, you will lose the hacks as they will be overwritten or deprecated. Keep notes of all hacked files.
Finally, there will usually be a requirements to UPDATE the system modules and other modules. Again refer to upgrade instructions.
For a visual tutorial on upgrading your site please see System Upgrade Tutorial
Additional details submitted by Rabideau
on 13-Jan-2005 22:16
I have just drafted this Update Procedure, I hope people find it useful.
This procdure may be worth following if you use any of the following:
If you use non-standard themes be certain that these work with the new version!
(beta, RC, etc.) , especially from the development site which may not be ready for prime time (in otherwords, modules that may not be part of the overall XOOPS release package.
modules or any modules which are behind the XOOPS release cycle. Not all modules run on all versions of XOOPS!
Low-risk, but time costly, XOOPS upgrade procedure.
1. Copy a full version of the latest XOOPS release to your local (development) machine.
2. Do a full backup of your complete online (production) site to your local (development) machine.
3. Identify EVERY
template change you have made to the XOOPS standard set. (I recommend keeping them in a local directory structured identically to match your production XOOPS site).
4. Export your production database (using phpMyAdmin?) to your local (development) machine. Be certain to check the variables for "Strucure" such that you can easily recreate a duplicate image of your production system on your local (development) machine. (I recommend selecting all of the following:
Add DROP TABLE
Add IF NOT EXISTS
Add AUTO_INCREMENT value
Enclose table and field names with backquotes
Add into comments
5. Create a separate (new?) directory on your local development machine and load the latest complete version of XOOPS there.
6. Perform an Install of XOOPS on your local machine (just as if you were building a site for the first time).
7. Login to the newly created XOOPS blank site.
8. Make certain that your new blank XOOPS (new version) site functions. (It will NOT look like your production site).
9. Log off the site.
10. This will seem odd (but it is an excellent preventative set of activities). Copy all of your desired modules into the newly created XOOPS site modules area. Re-login to the new XOOPS site and access Admin==>Modules; make certain everything is visible and accessible. (Create or re-create missing module components as required).
11. Load the phpMyAdmin (even if you don't plan on using it on your production site; this will make the following steps much easier).
12. Install and then Login to your MySql (phpMyAdmin?) database and drop all tables from your new XOOPS database (this will make duplication of your production database quite easy).
13. Having dropped all your tables, go to SQL and browse to your production database backup (there should be an sql file somewhere on your machine that contains the contents of your production database; this was downloaded in step 4 above. Note: Steps 4 and 11 may need to be updated if your production database has been updated during this upgrade process-- it is best to perform this entire update process while your production site is closed for upgrade.
14. This step is extremely important:
save your production site mainfile.phpfile-- do not lose it or over-write it; else the rest of this process will not succeed!
15. Next make certain all of the following are copied onto the newly created XOOPS installation (on your development machine)
modules (all of your current, in use modules)
themes (all unique and non-standard themes)-- very important!
customizations (hacks to Xoops)
16. Once you are able to access XOOPS go to the Admin==>Modules page and update all of your Modules.
17. Once all Modules are Updated, update System.
18. Test your new and now updated XOOPS system. If everything works like you had hoped for, you may now upload a copy of your local development site to your live website. Remember to upload your original mainfile.php.
19. Once you have uploaded (copied) your XOOPS directories from your local development machine to your website, you can try to access your site.
20. If it works great... if not, you may need to do any or all of the following:
-Go back to step 6 and repeat everything through step 22 again, except this time you performing those operations on your live site.
-Upload your old (original) mainfile.php (to gain site access) and go from there to repeat Steps 19-22 on your newly uploaded 'live' website.