Menu

Advanced Update Guide

Ghislain Bidaut

Version

This guide was originally written for a Djeen 1.X to 1.Y version update.
If you want to follow a simple update guide (1.X.x to 1.X.y), please follow this guide.

Pre-update

Important: this part of the process shall not be neither skipped nor underestimated at all.

Database backup

This step is just a safety measure, since database restoration is fully managed by the update system (see below for more details). But it's a database, so caution is never a bad thing.

For the sake of an example, say our Djeen database has the following associated characteristics:

  • Host localhost
  • Name djeen_db
  • User connecting to the database test
  • Password of said user qwerty

There is an example name for our backup file: djeen_dump.sql. And an example path to create this backup into: tmp/.

Case A: MysQL database

Let also define an example port:

  • Port 3306

Under the prompt, type the following command:

$ mysqldump -h localhost -P 3306 -u test -p qwerty -r tmp/djeen_dump.sql djeen_db

Notice the difference between the uppercase P (for the port option) and the lowercase p (for the password option).

Case B: PostgreSQL database

Example port:

  • Port 5432

Under the prompt, type the following command:

$ pg_dump -h localhost -p 5432 -U test -f tmp/djeen_dump.sql djeen_db

Notice the uppercase U (for the user option).

Component backup

Connect into your Joomla! website administration part with an admin account.

Then, go into the 'System information' section of Djeen component. You should see a 'Tools' title frame on the right, with a 'Component backup' line.

Click on the 'Create and download' button; this should trigger the download of the backup:

Save it.

Component Update

Stay into Joomla! administration, and go into the 'Extension manager' section. Upload the Djeen archive of the new version you want to install.

  • Success

If all goes as planned, you should see the following message:

Djeen Component Updated

Otherwise, you should see an error message.

Normally, when an update fails, the system automatically restores your database in its pre-update state.

If not, it should be indicated in the error message, and it's a more serious problem; in this last case, there is nothing to do except waiting for the development team to intervene.

For information:

  • In PostgreSQL, restoration is made via the use of transactions and rollback.
  • In MySQL, it's done via a pre-update dump injection.

If the database was successfully restored, just go into the 'Extension manager' section again, and upload the Djeen archive of the component backup you created earlier. If you forgot to perform such a backup (big mistake) but you have an internet connection, you still can go at http://djeen.sourceforge.net to get the proper archive (don't forget to choose the archive corresponding to the pre-update version).

Once the archive uploaded, Djeen should be fully restored in its pre-update version, and should at least be usable this way.


MongoDB Logo MongoDB