Upgrading Kentico manually
Note: We strongly recommend using the automatic upgrade described in Upgrading to Kentico 12.
If you already have Kentico 12 and wish to apply Kentico 12 Service Pack, you only need to apply hotfix version 12.0.29 or newer to your project. See the Hotfix instructions to learn how to install the service pack via the hotfix.
If necessary, you can perform the upgrade from version 11 to 12 manually.
Installing the upgrade procedure
- Download the Kentico 12 upgrade.
- Run Upgrade_11_0_12_0.exe.
- Install the upgrade procedure (the installer places the upgrade into the C:\Program Files\Kentico\12.0\Upgrade110_120 folder by default).
Preparing your project for the upgrade
- Set up a local copy of your Kentico 11 web project.
- Go through the required Steps before the upgrade.
Creating the project files
The recommended way to create an upgraded project is to start with a new clean installation of Kentico 12 and then transfer custom file content from your original project.
Download the Kentico 12 Installer (without the Service Pack).
Important
This download link is for the original Kentico 12 Installer, which does not include the Service Pack (hotfix 12.0.29). This is required to succesfully complete the manual upgrade procedure. If you already have the Kentico 12 Service Pack setup files installed on your local machine, you need to uninstall them before you can install the original Kentico 12 setup files.
You can apply the Service Pack after you completely finish the upgrade by following the Hotfix instructions.
Install a new Kentico project (use the Custom installation option in the installer).
- Select the Portal Engine development model (even if you have an MVC site – you only need the Kentico administration project for the upgrade).
- Select the same project type as your original Kentico 11 project (web site or web application).
- Do not install a database (clear the Installation with database option on the installer’s Database tab).
- If you have removed any of the default modules from your Kentico 11 project, do the same on the installer’s Components tab.
Transfer files and customizations from your Kentico 11 project into the new Kentico 12 project:
Copy all files that were added into your Kentico 11 project (including media files, custom pages and controls, etc.).
Tip: We recommend using a differencing or merging tool to compare the project folders.
If you have customized any of the default files, you need to compare the new and old file versions and manually transfer the customizations.
Open the new Kentico 12 project in Visual Studio:
- If your original solution contained custom projects, add these projects.
- Add references from the Kentico web project (CMSApp or CMS) to your custom projects as required.
- Update all Kentico library references from custom projects to use the libraries of the new project.
- Install any custom NuGet packages that were present in your Kentico 11 web project.
- If your original solution contained custom projects, add these projects.
Open the upgrade installation directory (C:\Program Files\Kentico\12.0\Upgrade110_120 by default), and copy the CMS\CMS\CMSSiteUtils\Import\Upgrade_110_120.zip file into the CMS\CMSSiteUtils\Import folder of the new Kentico 12 project.
Upgrading the Web.config
Transfer all required configuration from your Kentico 11 project’s web.config file into the web.config of the new Kentico 12 project:
- Copy the connection string (the entire <connectionStrings> section) to connect the upgraded project to your database.
- Transfer all keys from the <appSettings> section (including the values of default keys such as CMSApplicationGuid and CMSHashStringSalt).
- Manually transfer any other custom configuration elements.
Upgrading the database
Important: Before you start the database upgrade, create a backup of your database.
- Launch Microsoft SQL Server Management Studio.
- Connect to the Kentico database that you wish to upgrade.
- Open the upgrade installation directory (C:\Program Files\Kentico\12.0\Upgrade110_120 by default) and expand the SQL folder:
- If you have a standard Kentico database, run the upgrade.sql script.
- If your project uses a separated on-line marketing database, expand the Separation subfolder and run the scripts in the following order:
- separated.sql (against the separated on-line marketing database)
- default.sql (against your main Kentico database)
If you encounter any errors, please send them to Kentico support (include the error log in the message).
Database schema
Kentico uses database objects with the dbo schema. If your database uses a different or no schema, you need to modify the schema occurrences in the script accordingly.
Finishing the upgrade
If your site is built using the MVC development model, you also need to update the Kentico code used by your MVC application. See Upgrading MVC projects in the main upgrade instructions.
Continue with the Steps after the upgrade.