Title: Upgrade From 2.2 to 2.3.2 Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. This page provides information on how to upgrade from VCL 2.2 to VCL 2.3.2. Please note it only applies for the upgrade from 2.2 to 2.3.2, this may or may not work for other versions. **The basic steps that will be performed** - Download and Extract 2.3.2 code - Shutdown httpd and vcld services - Create backup of vcl database - Update mysql schema - Update Web code, create a backup, copy in new, make changes - Restart httpd service - Update Management node vcl code, create a backup, copy in new, make changes - Restart vcld service # Detailed steps for upgrade from 2.2 to 2.3.2 # 1. follow instructions on the [VCL download](http://vcl.apache.org/downloads/download.cgi) page to download and verify apache-VCL-2.3.2.tar.bz2 and put in in /root 1. **extract VCL 2.3.2 code** :::BashLexer tar xjf apache-VCL-2.3.2.tar.bz2 1. **Shutdown** the httpd and vcld services :::BashLexer service httpd stop or /etc/init.d/httpd stop service vcld stop or /etc/init.d/vcld stop 1. We will **create a backup of the vcl database**. This will provide a restore point if necessary. :::BashLexer mysqldump vcl > ~/vcl-pre2.3.2-upgrade.sql 1. This step **updates the mysql schema**. *Note*: A new resource group is added in update-vcl.sql - **all profiles**. Access to manage the group is added to the VCL->admin node in the privilege tree if that node exists. If not, you will need to add it manually after starting httpd again. To add it manually, pick a node in the privilege tree, scroll to Resources, click Add Resource Group, select serverprofile/all profiles from the drop-down box, check available, administer, manageGroup, and manageMapping, and click Submit New Resource Group. :::BashLexer cd /root/apache-VCL-2.3.2 mysql vcl < mysql/update-vcl.sql 1. Grant CREATE TEMPORARY TABLES to mysql user The web code now requires access to create temporary tables in mysql. You need to grant the user your web code uses to access mysql the "CREATE TEMPORARY TABLES" permission. Look at the secrets.php file in your web code for the user and hostname. For example, if your web code is installed at /var/www/html/vcl, your secrets.php file would be /var/www/html/vcl/.ht-inc/secrets.php. Look for $vclhost and $vclusername. The secrets.php file might have something like: :::BashLexer $vclhost = 'localhost'; $vcluser = 'vcluser'; 1. Then, you need to issue the grant command to mysql. Using the values from above as examples, connect to mysql and then issue the grant command: :::BashLexer mysql GRANT CREATE TEMPORARY TABLES ON `vcl`.* TO 'vcluser'@'localhost'; exit 1. **Update the web code**. This step we will move the 2.2 web directory out of the way, so we can copy in the new web code base. After copying in the new code, we will migrate your configuration changes. These instructions assume that you installed the vcl web code at /var/www/html/vcl. If you installed it elsewhere, replace /var/www/html/vcl with your vcl web root. :::BashLexer cd /var/www/html mv vcl ~/vcl_2.2_web 1. **Copy the new code** in place :::BashLexer cd /root/apache-VCL-2.3.2 cp -r web /var/www/html/vcl 1. **Copy your 2.2 config files** :::BashLexer cd ~/vcl_2.2_web/.ht-inc cp conf.php secrets.php pubkey.pem keys.pem /var/www/html/vcl/.ht-inc 1. **Make the maintenance directory writable by the web server user**. Normally this is the apache user, if using a different user change below cmd accordingly. :::BashLexer chown apache /var/www/html/vcl/.ht-inc/maintenance 1. **Make changes to conf.php**: