Note: We strongly recommend using the automatic upgrade described in Upgrading to Kentico 10.
If you cannot directly access the environment hosting your Kentico instance, you can perform the upgrade from version 9 to 10 manually.
Step 1 - Backup
Back up your Kentico web project files and database. We recommend that you:
- Make a copy of the Kentico project.
- Upgrade the project locally.
- Deploy the project to the production environment once the upgrade is complete.
Important: If you do not create a backup, your project may get corrupted without a way to reverse the changes.
Step 2 - Site shutdown
Your site must be offline during the upgrade process. Copy App_offline.htm (available in the upgrade installation folder) into the root of your web project or use another approach to take your site offline.
Step 3 - Database upgrade
- Launch Microsoft SQL Server Management Studio.
- Connect to the Kentico database that you wish to upgrade.
- Open the upgrade installation directory 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).
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.
Please check whether the upgrade script is running against the correct database. Many upgrade problems are caused by launching the SQL script on a non-Kentico database.
Step 4 - Creating the upgrade file structure
Launch the Kentico Upgrade Utility from the command line with the /deploy parameter. Set the parameter’s value according to the project type that you wish to upgrade:
- net45site - web site using .NET version 4.5
- net45app - web application using .NET version 4.5
You can also add the optional /path parameter, which sets the target location for the upgrade file structure. This way you do not need to provide the path in the first step of the update process. The /path parameter value can be supplied in two different formats – relative, which represents a folder in the location from which the utility is executed; or absolute, which can be any path to a local disk.
Example: Upgrade.exe /deploy=net45site /path=Deploy
Launches the upgrade utility, which creates a folder named Deploy in the upgrade installation directory, and copies all files and folders necessary for upgrading to a .NET 4.5 web site project.
If you have removed some of the default modules from your Kentico 9 installation, you can use the following process to remove the given modules from the upgrade files:
- Open the CMS folder in the upgrade files.
- Rename web.config.new to web.config.
- Download the Kentico 10 Installer.
- Run Kentico_10_0.exe.
- Click Next on the installer welcome screen.
- Select your country from the drop-down list and agree to the license agreement.
- Click Next and then Custom installation.
- Select Install only program files and click Install.
- Navigate to the Kentico setup files (C:\Program Files\Kentico\10.0 by default).
- Run Bin\KenticoInstaller.exe.
- Select your country, accept the license agreement, and click Next.
- Click Modify.
- Click Select another and choose the folder containing the upgrade files.
- Remove the required modules and click Apply Changes.
- In the CMS folder of the upgrade files, add the new extension back to the name of the web.config file (web.config.new).
Step 5 - Project file upgrade
- Copy all customized and custom files from your Kentico 9 project to a backup directory.
- Open upgrade.xml in the upgrade installation directory and delete all of the listed files from your web project (you can prepare a batch file to automate the process).
- Copy the content of the upgrade file folder (created in step 4) into the root of your web project folder. Overwrite all files.
If you have customized any of the default files or have added custom files to the project, you need to compare your backup project with the upgraded project, and manually transfer the customizations.
If your solution contained custom projects, open the new Kentico solution in Visual Studio and add the projects. You also need to manually update the required references for both the custom and Kentico projects.
Kentico 10 web application installations no longer contain the CMSApp_AppCode project by default (it is considered a custom project after the upgrade). If you have not added custom files into the CMSApp_AppCode project, delete the CMSApp_AppCode.csproj file from the CMS folder.
For more information, see Customizations in the CMSApp_AppCode project in the main upgrade instructions (Steps after performing the upgrade section).
If your project is a web application, rebuild the Kentico solution in Visual Studio. You may need to upgrade your custom code to successfully rebuild the solution.
Step 6 - Web.config upgrade
The upgrade files contain the web.config.new file, which is the default web.config used by the upgraded version. You need to copy the connection string from your original web.config and then replace it with the new one.
If your original web.config contains any custom configuration, you need to manually transfer the changes to the new web.config.
Step 7 - Finishing and starting the site
To bring your site back on-line, remove or rename the App_Offline.htm file from the CMS folder after finishing the upgrade procedure.
Continue with the Steps after the upgrade.