Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
installation:upgrades [2020-10-02 08:36]
Jens Gustafsson
installation:upgrades [2024-02-26 12:11]
Jonatan Folger Asu
Line 1: Line 1:
-====== Server upgrade ====== +====== Lime CRM Server Upgrade Guide ====== 
-This page describes how to upgrade an existing Lime CRM Server installation. The upgrade procedure differs depending on the version of Lime CRM Server that is currently installed.+This page describes how to upgrade an existing Lime CRM Server installation. The upgrade procedure might differ, depending on the version of Lime CRM Server that is currently installed. 
 + 
 +===== Upgrade Steps =====
  
-===== Upgrading from version 12 or newer ===== 
 Follow these steps: Follow these steps:
  
-  - Ensure that you have no version conflicts in your Lime python environment (you can do that by running ''pip check'')If you have any version conflicts you have to solve them before proceedingotherwise the installation will fail and you will end up in a state where half the server is uninstalled and half the server is installed+  - Perform [[installation:upgrades#pre-upgrade-preparations|pre-upgrade preparations]]. 
-  - Reboot the server +  - Depending on which version is currently installedsee if there are some [[installation:upgrades#extra-upgrade-steps|extra upgrade steps]] needed. 
-  - Stop all running lime-services in the services window +  - [[https://platform.docs.lime-crm.com/en/latest/on-premise/solutions/#upgrade-solution|Upgrade and build a new release of the solution]]. 
-  - Close all command prompts and directories+  - Back-up the database. 
-  - Click on the installer and follow the guide.+  - Do the steps in this guide: [[kb:10044|Uninstall Erlang and RabbitMQ When Doing Lime CRM Server Upgrade]] 
 +  - Restart the Windows server
 +  - Run the installer (''limecrm-server-<version>.exe'') as administrator
 +  - Restart the Windows server. 
 +  - [[installation:upgrade-database|Upgrade all registered databases]]. 
 +  - [[https://platform.docs.lime-crm.com/en/2.568.x/on-premise/solutions/#install-solution|Install upgraded solution]]. 
 +  - Re-enable [[configuration:supersearch|Super Search]] if it was in use earlier. 
 +  - Create or [[configuration:views#update-search-index|update search index]] (needed if the customer uses the Web Client)
 +  - Verify that the upgrade has succeeded. E.g. test some basic functionality and important solution customizations.
  
-====== If the installation fails ======+If the upgrade fails or something doesn't work as expected, check out the [[installation:troubleshoot|Troubleshoot Server Installation/Upgrades]] guide.
  
-1. Open task manager, go to the details tab. +===== Pre-upgrade Preparations ===== 
-2. Stop all processes that has the name "pythonservice.exe" or "python.exe" +The pre-upgrade preparations should be performed several days ahead of the actual server upgrade
-3. Do the steps described in "Upgrading from version 12 or newer" +Follow these steps to ensure that you're upgrade is successful:
-4. If this doesn't work, please contact support.+
  
-===== Upgrading from version 10.11 or earlier ===== +==== Server requirements ==== 
-Follow these steps:+The server requirements gets updated on a regular basis. Go to the [[https://docs.lime-crm.com/installation/server-requirements|server requirements]] page to make sure your customers server is still up to date.
  
-  - Completely uninstall **everything** Lime CRM related (server, client and tools, e.g. Citrus). +==== Lime CRM Server User Account Credentials ==== 
-  - Reboot the machine. +The installer application remembers the installation configuration (e.g. user and group informationspecified from the last time it was runHowever, no passwords are remembered. So make sure you know the password for the Lime CRM Server user account (a.k.aLime service user).
-  - If HTTPS is used (through ldcws/Lime CRM Data Component Services) existing URL reservation and certificate bindings must be removedRun these commands in an elevated command prompt:<code>netsh http delete urlacl url=https://+:<port>/ +
-netsh http delete urlacl url=http://+:<port>/ +
-netsh http delete sslcert ipport=0.0.0.0:<port></code> +
-NOTE: Windows might refuse to accept the deletions at first. If an error message is received and the URL reservation or certificate binding still exists, wait (empirically: at least 15 minutesand try again until it works. +
-  - Install according to the instructions in [[installation:server-installation|Server installation]] +
-  - First, register the database and then upgrade it, use [[configuration:limefu|Limefu]] and follow the instructions +
-  - Re-enable [[configuration:supersearch|Super Search]] if it was in use earlier.+
  
-<WRAP round important> +==== Go Through Release Notes ==== 
-=== Warning! === +Read up on the [[releases:pro:start|release notes]] for the server version you are upgrading to, and all the server versions you may be jumping over.
-Ignoring steps 1-2 above may lead to a severely broken Lime CRM Server installation. +
-</WRAP>+
  
-<WRAP round info> +==== Upgrade Add-ons ====
-=== Note! === +
-When limefu upgrades a database used with Lime CRM Server version 10.11 or earlier, it will automatically apply a fix for document performance problems. This may take 30 minutes or more depending on the amount of documents in the database.+
  
-If you want to run this prior to upgrading the database in order to cut down on installation time, you may manually apply the following SQL snippet:+Go through all the add-ons that are installed in the Lime CRM application. Check [[addons:start|their documentation]] and see if there are new versions that could or MUST be installed. There are mainly two good reasons to also upgrade installed add-ons:
  
-{{:installation:lime_stats_hotfix.zip|Hotfix #15090}} +  * The version that is installed for an add-on may not work anymore if the server is upgraded
-</WRAP>+  * Doing a server upgrade is the perfect time to also make sure the add-ons are up to date so the customer can enjoy the latest and greatest version of the Lime CRM software.
  
-===== Upgrading from version 12 or later ===== +==== Check If Super Search Is Enabled ==== 
-The installer application remembers the installation configuration (e.g. user and group information) specified from the last time it was run, however, no passwords are remembered so make sure you know the password for the user account that Lime CRM Server services are running under.+Check if Super Search is enabled in Lisa.
  
-Follow these steps:+==== Use Latest Compatible Python Version ==== 
 +  - Open cmd/terminal/windows powershell (not Lime Pro Command Prompt). 
 +  - Write ‘python -V’ and press enter key to see Python version. 
 +  - If not using latest compatible version. Run the Python installer and click "Upgrade Now".
  
-  - Back-up the database +===== Extra Upgrade Steps ===== 
-  - Perform pre-upgrade preparations +When upgrading from some versions there are extra steps needed to complete the upgrade.
-  - Run the installer (''limepro-server-<version>.exe''). +
-  - Upgrade databases. +
-  - Re-enable [[configuration:supersearch|Super Search]] if it was in use earlier. +
-  - (Re-index the database if needed)+
  
-===== Pre-upgrade preparations ===== 
-Follow these steps to ensure that you're upgrade is successful: 
  
-==== Close applications ==== +==== Upgrading From 2022.3 or Earlier ====
-Ensure that you don't have any of the following applications running: +
-  * Windows Task Manager +
-  * Services Console +
-  * Event Viewer +
-  * Microsoft Management Console (MMC)+
  
-==== Check port availability ==== +**Python 3.11** is required from version 2023.1 and later of Lime CRM server. Follow the instructions [[installation:python311|here]] before running the installerIf 3.11 isn't available the Lime CRM installer will detect this and stop.
-If you see that Lime CRM Webfront is having problems starting, it most probably is due to the fact the port 443 is already in use by another processOpen a command prompt, and run:+
  
-<code> +**.NET 4.7.2** or later is required to run Lime CRM. **Recommendation is to run 4.8**. You can check which version is running by following the instructions [[https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed|here]]. Install the runtime version before running the installer from [[https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48|here]] if you have a older version. If 4.7.2 or later isn't available the Lime CRM installer will detect this and stop.
-netstat -nao findstr LISTEN +
-</code>+
  
-Ensure that there is no entry using port 443. These show up as ''0.0.0.0:443''''127.0.0.1:443'', ''[::]:443'', or a specific IP-address followed by '':443''. If you see an entry like this, make a note of the process ID (PID) and see if you can find info about the corresponding process in Window's task manager. A PID of 4 means the System Process. We've seen the system process allocate port 443 if SQL Server Reporting Services is installed.+**Check SQL Server version** SQL Server 2014 or later is requiredLime CRM 2023.1 will __not__ work on SQL Server 2012
  
-==== Uninstall old versions ==== +**Remove the Elastic Search 5 data directory.** Prior to creating a new search index, it is necessary to manually delete the previous data directory associated with ElasticSearch 5 (''%LIME_HOME_PATH%\LIME Pro Server\Elasticsearch\data'')Otherwise, old indexes built for ElasticSearch 5 will remain on the server and take up disk space and interfer with the new installation.
-Though it shouldn't be necessary, this might help you ensure that no services are lingering during the installation processUninstall the following programs from the Control Panel:+
  
-  Lundalogik Lime CRM Server (Lundalogik LIME Pro Server on older installations) +**Create a new search index**. You have to create a new search index with help of the command ''limefu search index''. Remember that this is an operation that can take very long if the database associated with the solution contains lots of data.
-  Erlang OTP +
-  RabbitMQ+
  
-==== Install Python 3.7.3 if upgrading from version < 12.51 ==== 
-<WRAP round info> 
-**Python 3.7 is required from version 12.51** 
  
-From version 12.51 and later of Lime CRM Server, Python 3.7.3 needs to be installed prior to installation or upgrade of Lime CRM Server. 
  
-Instructions for how to install Python 3.7.3 is found [[installation:python37|here]].+==== Upgrading From 2022.2 or Earlier ==== 
 +**Tips for the web client when upgrading** 
 +  * The new start page is turned on by default. Make sure it looks good and that all widgets (especially info tiles) have been moved to the new start page[[https://platform.docs.lime-crm.com/en/latest/configuration/webclient/start-page/|How to configure the start page.]] 
 +  * Over delivery: Add multiple start pages if you think your customer needs them. 
 +  * Over delivery: Remove unnecessary fields from create new dialogs. Calculated fields, read only field, "inactive" and more do not provide any value when creating new records. Take a minute or two to disable them on new in the card view of the most common lime type. 
 +  * Over delivery: Does you customer have a lime type that hold hundreds of thousands or even millions of records? Is there no need to have that lime type searchable? [[https://platform.docs.lime-crm.com/en/latest/services/indexer/#exclude-lime-types|Disable indexing for certain lime types]] to make the index much smaller and reduce re-index time.
  
-</WRAP>+**Erlang and RabbitMQ Needs To Be Manually Uninstalled**
  
-===== Upgrading databases ===== +Erlang and RabbitMQ needs to be manually uninstalled to get upgraded correctly by the Lime CRM installerFollow this guide: [[kb:10044|Uninstall Erlang and RabbitMQ When Doing Lime CRM Server Upgrade]]
-All Lime CRM databases that are to be used after the upgrade must be migrated to the latest revision of the database schemaThis is done using [[configuration:limefu|limefu]] with the following command (from version 12.4): +
  
-<code> +==== Upgrading From 2021.1 or Earlier ==== 
-limefu database upgrade --application "DATABASE DISPLAY NAME" +  * Server version 2022.2.739 (2.308.3) and higher requires Lime CRM Desktop Client version of 10.18.962 or higher
-</code>+
  
-<WRAP round info> +==== Upgrading From 13.2 or Earlier ==== 
-=== Note! === +In older server versions, the packages for the [[https://lime-limepkg-gdpr.readthedocs-hosted.com/en/latest/|GDPR]][[https://lime-limepkg-consent.readthedocs-hosted.com/en/latest/|Consent]], [[https://lime-lime-newsletter.readthedocs-hosted.com/en/latest/|Newsletter]] and [[https://lime-addon-infotiles.readthedocs-hosted.com/en/latest/|Info Tiles (WC)]] were included in the server installation. Make sure to check these specifically if you are upgrading from a server version older than 2020.2.
-When upgrading databases, the user running the ''limefu'' command and who is thereby the user accessing the databasemust have ''dbo'' as the default schema in the database. +
-</WRAP>+
  
-===== Create search index ===== +==== Upgrading From 12.50 or Earlier ==== 
-If using the Lime CRM Web Clientthe search index might need to be re-created. Note that this might slow down the solution for the users, it is recommended to do this after work hours, especially if it is the first time or a big solution. This is done using [[configuration:limefu|limefu]] with the following command (from version 12.4): +From version 12.51 and later of Lime CRM ServerPython needs to be installed prior to installation or upgrade of Lime CRM Server.
  
-<code> +Instructions for how to install Python is found [[installation:python37|here]].
-limefu search index --application "DATABASE DISPLAY NAME" +
-</code>+
  
-==== Migrating file name data ==== +==== Upgrading From 12.7 or Earlier ====
-From Lime CRM Server 12.6, the file-API makes it possible to include the name of the document-file as a proper filename. When upgrading, already existing files do not have any filename, and if you want to set the filenames on the already existing files you need to run the following SQL-script. The script set the filename to the text in the field [description] on the document-table, but can be adjusted to suit the individual solution. +
- +
-{{:installation:filename-migration-lime.zip|}} +
- +
-==== Migrating lime-views and configuration ====+
 From Lime CRM Server 12.9, lime-views and some configuration is stored in the database instead of in files. From Lime CRM Server 12.9, lime-views and some configuration is stored in the database instead of in files.
 To migrate existing lime-views and configurations, run the following script from the Lime CRM Command Prompt on the server. To migrate existing lime-views and configurations, run the following script from the Lime CRM Command Prompt on the server.
Line 126: Line 99:
 {{:installation:migrate_config.zip|}} {{:installation:migrate_config.zip|}}
  
-===== Troubleshooting ===== +==== Upgrading From 12.4 or Earlier ==== 
-Some tips:+From Lime CRM Server 12.6, the file-API makes it possible to include the name of the document-file as a proper filename. When upgrading, already existing files do not have any filename, and if you want to set the filenames on the already existing files you need to run the following SQL-script. The script set the filename to the text in the field [description] on the document-table, but can be adjusted to suit the individual solution.
  
-  * Don't manually delete directories and files if you're not really sure what the consequences are. +{{:installation:filename-migration-lime.zip|}}
-  * Check out [[kb:10012|RabbitMQ cannot be started after an upgrade of Lime CRM]] or [[kb:10015|Lime CRM Server Installer may report that the installation failed]] or [[kb:10007|Installing Lime CRM Desktop Client on top of Lime CRM Server may cause problems]] or [[kb:10020|RabbitMQ may fail to start due to an invalid configuration file]] for specific symptoms +
-  +
- +
-===== Active Directory Integration ===== +
-A new feature has been added to the [[configuration:ladi|Lundalogik Active Directory Integration]] making it possible to map an AD group to the database itself. This allows AD users to be added as Lime CRM users without giving them login permission. +
- +
-Consider the following scenario: +
- +
->The AD group //Employees// is currently mapped to the Lime CRM group //Users// with the auto-create option enabled in order to add them as users in Lime CRM using the synchronization feature. The reason for this is to get all employees into Lime CRM so that they can be assigned e.g. a helpdesk ticket even though they don't use Lime CRM themselves. Another AD group //Lime CRM Users//, containing all users that should be able to use Lime CRM is then included in the //Distributed COM Users// Windows group which controls login permissions. This means that all members of //Employees// will be imported, but those not in //Lime CRM Users// will not be able to log in. +
- +
-Since authorization starting with Lime CRM Server version 12 no longer uses the //Distributed COM Users// group this means that the above setup will no work since all users in //Employees// will be able to log in to Lime CRM. To fix this some changes must be made to keep the previous behavior: +
- +
-  * The AD group //Employees// must be mapped to the database. This is done in the Security Overview in LISA. +
-  * The AD group //Lime CRM Users// must be mapped to the Lime CRM group //Users// with auto-create activated. +
- +
-Now everything will work in the same way as before, minus the extra complexity of the //Distributed COM Users// group.+
  • Last modified: 2 months ago
  • by Jonatan Folger Asu