Migration in itself is a very broader area. One has to keep in mind the Technology, Hardware, Operating System, Settings, Application Server, Web Server, Code compatibility and many other things, before starting the Migration process. And yes lastly, how much effort is needed. When you are dealing with Production websites or even the Testing/Development websites, you should have an action plan in place, even before you actually start migrating the website. So, I thought of making that easier and divide the entire process into different segments. IMO, an ideal migration (rather migration+ upgrade) involves the following phases:-
- Installation of new CF version
- Migrating the CF Settings
- Migrating the web repository
And I will briefly discuss this below. Again, if you are simply migrating the site on the same server to a newer version, then you may not need the third step. If you changing the webserver, then first step is not required and likewise. Let us have a glance on these.
Installation of new CF version (say CF9 to CF 10/11)
This section talks about installing the version of CF you are upgrading to. Say you are upgrading from CF9 to CF11. So you will install CF11 first. The new CF installation can be on the same server or on a different server as well. During the installation, do not configure the connector with the same website (if on the same server). There could be a conflict, as there would be two different connectors (one from the older CF server and one from the new CF server) configured to the same website. So, you can configure it with the built-in server of ColdFusion and complete the installation. Once, your installation is complete, you can remove the connector, disable the built-in server and recreate the connector between ColdFusion and the webserver, say IIS, Apache etc.
Migrating the CF Settings
In this section, we are referring to the CF settings within the CF Admin, such as Datasources, Scheduled Tasks, Webservices etc. If you are installing the new CF server on the same server (where you already have the older CF server), then, you will be prompted to “Migrate” the settings during the install itself. In case the new CF server installation is on a different server then, you can create CAR file. This feature is only available in Enterprise/Developer version of ColdFusion, till version 10. ColdFusion 11 onward, its available in all editions. In case you missed the migration wizard and now can’t migrate the settings, please refer to this blog.
Migrating the web repository
This is actually the process of migrating your server repository or the website files. If the migration involves, setting up a new Server/webserver, then the easiest way is to copy the web files from the older webroot to the new webroot, under the new website. You can also use any third party utility to migrate the files and the settings (if any at the webserver level), if your webserver supports the utility. In case, the website resides on the same server and the installation only involves, CF server up gradation/migration, then recreate the connector. Remove the connector from the older CF server and create the connector to the new CF server.
Voila!!! Test your website. 🙂
This article is just to give all an overview about the migration process and as mentioned above, may vary from environment to environment. This is a strong recommendation to test your website on the Testing/Development environment, before moving it on Production.
Hope this gives a better picture of the migration process.