x

Main chapters

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. LimeSurvey Cloud - Quick start guide
  3. LimeSurvey CE - Installation
  4. How to design a good survey (Guide)
  5. Getting started
  6. LimeSurvey configuration
  7. Introduction - Surveys
  8. View survey settings
  9. View survey menu
  10. View survey structure
  11. Introduction - Questions
  12. Introduction - Question Groups
  13. Introduction - Surveys - Management
  14. Survey toolbar options
  15. Multilingual survey
  16. Quick start guide - ExpressionScript
  17. Advanced features
  18. General FAQ
  19. Troubleshooting
  20. Workarounds
  21. License
  22. Version change log
  23. Plugins - Advanced
 Actions

Upgrading from a previous version: Difference between revisions

From LimeSurvey Manual

Han (talk | contribs)
mNo edit summary
Marked this version for translation
 
(89 intermediate revisions by 11 users not shown)
Line 6: Line 6:


<!--T:3-->
<!--T:3-->
<span style='color:#FF0000'>... read this because it is very important: '''Always backup the files and the database of your current installation!!'''</span>
<span style='color:#FF0000'>... read this because it is very important: '''Always backup the files and the database of your current installation!'''</span>


<!--T:4-->
<!--T:4-->
You can do this using a database adminstration tool like [http://www.phpmyadmin.net phpMyAdmin] etc. and a file manager! If you don't know how to do this you should better not proceed but ask someone who knows or use the [[ComfortUpdate]] instead.
You can do this using a database administration tool like [https://www.phpmyadmin.net phpMyAdmin] and a file manager!  
If you don't know how to do this, you should not proceed further and ask someone who knows.


=The quick way (for minor version changes)= <!--T:5-->
<!--T:28-->
==Recommendation to use ComfortUpdate==
'''The easiest/safest way to upgrade is to use our [[ComfortUpdate]] service.'''
 
=Upgrade instructions (from 2.x or newer to any later version)= <!--T:5-->


<!--T:6-->
<!--T:6-->
You can use these instructions if you are doing a minor upgrade  (for example from 2.00 to 2.01)
Please follow these steps:
*Backup your files and database (did we already mention that?)
</translate><translate>
*Delete all the old files/directory except for
 
**/application/config/config.php
<!--T:37-->
**/upload directory
#Log out of the administration
*Copy the new files from the new LimeSurvey package to the existing location.
#Backup your files and database
*'''After the upgrade: Clear your browser cache and cookies!'''
#Delete all the old files/folders except for:
##/application/config/security.php - '''Important!! This is the key to all encrypted data in LimeSurvey (version 4 and later)'''
##/application/config/config.php;
##/upload directory
#Copy the new files from the new LimeSurvey package to the existing location.
#Now clear your browser cache and cookies.
#Open the admin page in your browser (e.g. https://www.example.com/limesurvey/admin). If a database scheme upgrade is necessary you will be prompted to confirm it.
#Done!
 
<!--T:38-->
<div class="simplebox">[[File:help.png]]'''Note:''' Between major versions (for example from version 3 to 4) the template/design themes change usually completely. Old survey design templates/themes will usually not work anymore.</div>


=The thorough way (for big version jumps)= <!--T:7-->
= Upgrading using CLI = <!--T:25-->


<!--T:8-->
<!--T:26-->
Unfortunately there are a couple of things to consider, so please scan the following instruction closely.
You can upgrade the database via the PHP CLI: <code>php application/commands/console.php updatedb</code>. This allows you to set up an auto-upgrade system via command line (for example, in a crontab), although it is not recommended.


==Upgrading from version 1.50 or later to any later 2.xx version== <!--T:9-->
<!--T:29-->
#[http://www.limesurvey.org/download Download] the latest version of LimeSurvey.
= Failed database upgrade after manual update/ComfortUpdate=
# Prepare and backup the old installation
Sometimes, even though you did everything correct, things don't work out they are supposed to during database upgrade.
## Backup your installation directory files and SQL-based database just in case.
That may happen because of various reasons: Different database versions, unexpected data formats or contents, unusual configurations or anything else that did not show up in our tests (yes, we test a lot!)
### At the command-line level, make a '''.zip''' or similar archive of the whole installation directory tree of files. For example in Linux tar cvzf foo.tgz cps100 will tar and zip the whole of the cps100 directory.
### Using phpMyAdmin or similar to export all tables; or use the according '''LimeSurvey Administration''' button [[File:button-export-sql.png]] to backup the entire database
## Copy your '''config.php''' file, modified '''template''' directories and the /upload directory separately for quick access later.
# Replace all the installation directory files
## Delete all old files in the existing installation directory
## Upload and unpack the new code version into the same installation directory
## If your previous version was older than 1.90: Copy any customized templates to /upload/templates - you will also need to rename each template directory whose name matches an existing template in /templates.
## Copy your /upload directory back to the old location
## Double check the '''permissions''' set on the directories (write access to '''/tmp''', '''/upload''' and and their subdirectories is required) as described in [[Installation#Set_Directory_permissions|Installation]]
## Open http://<yourdomain>/<yourlimesurveydir>/admin in your browser and follow the instructions (you can use the old config.php as reference). The existing database will be automatically detected and , if necessary, upgraded after confirmation.
# Check if any special manual checks apply as listed below
# '''Now clear your browser cache and cookies!'''
# You are done (:biggrin:).


<!--T:10-->
<!--T:30-->
<div class="simplebox">'''Special checks after an upgrade''':
If you have an error during database update and your LimeSurvey instance ends up in an unusable state, you want to go back to the previous version.
*'''from any earlier version to 2.xx''': The '''templates''' have been changed in a lot of places. Please check your customized templates if they are still looking right. If not you will have to edit your templates accordingly (check out the original templates to see what was changed). The upgrade process tries to replace the template.js inclusion by the placeholder {TEMPLATEJS}. If you have javascript issue with your custom template, verify if your template have the placeholder {TEMPLATEJS} in startpage.pstpl.
This assumes that you still have the database and file backup, either from your regular backup or the one created by Comfortupdate.
*'''from a version earlier than v1.53''': When upgrading from a version before v1.53 to the latest version, please check the '''global user rights''' of each user. There was a new '''superadmin''' right introduced in v1.53 that can give a user the same privilege as the master administration account created during the install. The upgrade script is guessing who to give this right to in the older versions.  As this is not perfect, it should be carefully checked.</div>


==Upgrading from version 1.50 or later to any later 1.xx version== <!--T:11-->
<!--T:31-->
#[http://www.limesurvey.org/download Download] the desired version of LimeSurvey.
Please execute the following steps:
# Prepare and backup the old installation
## Backup your installation directory files and SQL-based database just in case.
### At the command-line level, make a '''.zip''' or similar archive of the whole installation directory tree of files. e.g. tar cvzf foo.tgz cps100 will tar and zip the whole of the cps100 directory
### Using phpMyAdmin or similar to export all tables; or using the '''LimeSurvey Administration''' button [[File:button-export-sql.png]] to backup the entire database
## Copy your '''config.php''' file ,modified '''template''' directories and the /upload directory separately for quick access later.
# Replace all the installation directory files
## Delete all old files in the existing installation directory
## Upload and unpack the new code version into the same installation directory
## Edit or replace the '''config.php''' file:
### If your previous version was < 1.70: Edit the new '''config.php''' to reflect changed settings in the backup '''config.php''' file. '''Do not just overwrite the new '''config.php''' with your old one!'''
### If your previous version was >= 1.70: Simply replace the new '''config.php''' with your backup '''config.php''' (as the file format has not changed).
## If your previous version was older than 1.90: Copy any customized templates to /upload/templates - you will also need to rename each template directory whose name matches an existing template in /templates.
## Copy your /upload directory back to the old location
## Double check the '''permissions''' set on the directories (write access to '''/tmp''', '''/upload''' and and their subdirectories is required) as described in [[Installation#Set Directory permissions|Installation]]
# Finishing the installation
## Once you open the URL to your LimeSurvey administration the database tables will be updated after confirmation
## Remove or rename the '''/admin/install''' directory as/if instructed by the installation script
## Check if any special, manual checks apply as listed below
# You are done (:biggrin:). If you notice any problems after the upgrade: Clear your browser cache and cookies!


<!--T:12-->
<!--T:32-->
<div class="simplebox">'''Special checks after an upgrade''':
*Backup the existing LimeSurvey directory and database (yes, again - we will call this the 2nd backup)
*'''from any earlier version to 1.92''': The '''templates''' have been changed in a lot of places. Please check your customized templates if they are still looking right. If not you will have to edit your templates accordingly (check out the original templates to see what was changed)<br />
*Restore files to the existing directory (just overwriting them is fine) from the original (1st) backup.
*'''from a version earlier than v1.53''': When upgrading from a version before v1.53 to the latest version, please check the '''global user rights''' of each user. There was a new '''superadmin''' right introduced in v1.53 that can give a user the same privilege as the master administration account created during the install. The upgrade script is guessing who to give this right to in the older versions.  As this is not perfect, it should be carefully checked.</div>
*Delete the old database and restore the database from the original (1st) backup.


==Upgrading from a version earlier than v1.50 (v1.0 through v1.44)== <!--T:13-->
<!--T:33-->
That's it. Everything should be back to normal.


<!--T:14-->
<!--T:34-->
Since the data structure and a lot of other things were changed, '''upgrading from any version previous to v1.50 is NOT possible'''.  If you have old survey structure files with a *.sql extension the only way to get these into a newer version is to install [http://www.limesurvey.org/en/archived-releases/289-limesurvey150zip version 1.50], import the .sql file(s) there, then upgrade that version to the most recent LimeSurvey version. See the also then page [[Transferring an installation]] for more details.
'''A note about reporting this issue:'''


=Upgrade FAQ= <!--T:15-->
<!--T:35-->
If you run into a problem like this, please always report this in our bug tracker at https://bugs.limesurvey.org


==What is the most actual LimeSurvey version that still supports PHP4?== <!--T:16-->
<!--T:36-->
A bug not reported is a bug not fixed. Please don't just rely on other people reporting it. If you see that the bug is already reported, you can also help to raise the bug priority by marking it as 'Yes, this bug affects me' in the bug tracker.


<!--T:17-->
=FAQ= <!--T:15-->
The last release offering PHP4 support was version 1.82+.


==Can I upgrade even if I have active surveys?== <!--T:18-->
==Can I upgrade even if I have active surveys?== <!--T:18-->
Line 94: Line 78:
Yes, you can. Exceptions may be mentioned in the thorough instructions above. We strongly advise to test your surveys after upgrade to check if your design templates still work alright.
Yes, you can. Exceptions may be mentioned in the thorough instructions above. We strongly advise to test your surveys after upgrade to check if your design templates still work alright.


==What is best way to port LimeSurvey *.sql survey structure files to the latest version?== <!--T:20-->
==How to convert *.sql/*.csv survey structure files to the latest LimeSurvey version?== <!--T:20-->


<!--T:21-->
<!--T:21-->
Install version 1.50, import the file and export the survey structure to the newer .csv format. The latest version still can read the .csv survey structure format.
Install version 1.50, import the file, and export the survey structure to the newer .csv format. Then install the latest Version 2.x and import the .csv format and export it to the current .lss format.
</translate>
</translate>
==Survey theme incompatibility==
With certain major version updates any custom survey themes will not be compatible, anymore:
* Update from LimeSurvey 2.6 or lower to LimeSurvey 2.50
* Update from LimeSurvey 5.x or lower to LimeSurvey 6.x
==Error "Multiple primary key defined" when updating MySQL database==
If you encounter this error, please check the setting ''sql_generate_invisible_primary_key'' in your MySQL server variables. This is most likely set to ''ON'', but should be set to ''OFF''. Then restore your database from the backup (as explained above) and try again.

Latest revision as of 18:08, 18 November 2024

Additional pages:{toc}

Before you start...

... read this because it is very important: Always backup the files and the database of your current installation!

You can do this using a database administration tool like phpMyAdmin and a file manager! If you don't know how to do this, you should not proceed further and ask someone who knows.

Recommendation to use ComfortUpdate

The easiest/safest way to upgrade is to use our ComfortUpdate service.

Upgrade instructions (from 2.x or newer to any later version)

Please follow these steps:

  1. Log out of the administration
  2. Backup your files and database
  3. Delete all the old files/folders except for:
    1. /application/config/security.php - Important!! This is the key to all encrypted data in LimeSurvey (version 4 and later)
    2. /application/config/config.php;
    3. /upload directory
  4. Copy the new files from the new LimeSurvey package to the existing location.
  5. Now clear your browser cache and cookies.
  6. Open the admin page in your browser (e.g. https://www.example.com/limesurvey/admin). If a database scheme upgrade is necessary you will be prompted to confirm it.
  7. Done!
Note: Between major versions (for example from version 3 to 4) the template/design themes change usually completely. Old survey design templates/themes will usually not work anymore.

Upgrading using CLI

You can upgrade the database via the PHP CLI: php application/commands/console.php updatedb. This allows you to set up an auto-upgrade system via command line (for example, in a crontab), although it is not recommended.

Failed database upgrade after manual update/ComfortUpdate

Sometimes, even though you did everything correct, things don't work out they are supposed to during database upgrade. That may happen because of various reasons: Different database versions, unexpected data formats or contents, unusual configurations or anything else that did not show up in our tests (yes, we test a lot!)

If you have an error during database update and your LimeSurvey instance ends up in an unusable state, you want to go back to the previous version. This assumes that you still have the database and file backup, either from your regular backup or the one created by Comfortupdate.

Please execute the following steps:

  • Backup the existing LimeSurvey directory and database (yes, again - we will call this the 2nd backup)
  • Restore files to the existing directory (just overwriting them is fine) from the original (1st) backup.
  • Delete the old database and restore the database from the original (1st) backup.

That's it. Everything should be back to normal.

A note about reporting this issue:

If you run into a problem like this, please always report this in our bug tracker at https://bugs.limesurvey.org

A bug not reported is a bug not fixed. Please don't just rely on other people reporting it. If you see that the bug is already reported, you can also help to raise the bug priority by marking it as 'Yes, this bug affects me' in the bug tracker.

FAQ

Can I upgrade even if I have active surveys?

Yes, you can. Exceptions may be mentioned in the thorough instructions above. We strongly advise to test your surveys after upgrade to check if your design templates still work alright.

How to convert *.sql/*.csv survey structure files to the latest LimeSurvey version?

Install version 1.50, import the file, and export the survey structure to the newer .csv format. Then install the latest Version 2.x and import the .csv format and export it to the current .lss format.

Survey theme incompatibility

With certain major version updates any custom survey themes will not be compatible, anymore:

  • Update from LimeSurvey 2.6 or lower to LimeSurvey 2.50
  • Update from LimeSurvey 5.x or lower to LimeSurvey 6.x

Error "Multiple primary key defined" when updating MySQL database

If you encounter this error, please check the setting sql_generate_invisible_primary_key in your MySQL server variables. This is most likely set to ON, but should be set to OFF. Then restore your database from the backup (as explained above) and try again.