Upgrading Apache Oozie is a complex process. Although the instructions are straightforward, set aside a dedicated block of time to upgrade oozie clients and servers.
Perform the following preparation steps on each oozie server host:
- You must restore oozie-site.xml from your backup to the conf directory on each oozie server and client. 
- Copy the JDBC jar to libext-customer. - Create the /usr/hdp/current/oozie-client/libext-customer directory. - cd /usr/hdp/current/oozie-client- mkdir libext-customer
- Grant read/write/execute access to all users for the libext-customer directory. - chmod -R 777 /usr/hdp/current/oozie-client/libext-customer
 
- Copy these files to the libext-customer directory - cp /usr/hdp/current/hadoop/lib/hadooplzo*.jar /usr/hdp/current/oozie/libext-customer- cp /usr/share/HDP-oozie/ext-2.2.zip /usr/hdp/current/oozie/libext-customer/![[Note]](../common/images/admon/note.png) - Note - If you do not have an LZO JAR file, you must enable LZO compression first. See Install Compression Libraries. 
- Extract share-lib. - cd /usr/hdp/current/oozie- tar xzvf /usr/hdp/current/oozie/oozie-sharelib.tar.gz- su -l hdfs -c "hdfs dfs -mkdir -p /user/oozie"- su -l hdfs -c "hdfs dfs -copyFromLocal /usr/hdp/current/oozie/share /user/oozie/."- You can expect to see complaints that some files already exist. Delete any exisitng /oozie/share and replace it with the newly-extracted files. - su -l hdfs -c "hdfs dfs -chown oozie:hadoop /user/oozie" su -l hdfs -c "hdfs dfs -chmod -R 755 /user/oozie"
- if a previous version of Oozie was created using auto schema creation, run the following SQL query: - insert into oozie_sys (name, data) values ('db.version', '2.5');
- As the Oozie user (not root), run the upgrade. - su $OOZIE_USER- /usr/hdp/current/oozie-server/bin/ooziedb.sh upgrade -run
- As root, prepare the Oozie WAR file. - sudo su -l oozie -c "/usr/hdp/current/oozie-server/bin/oozie-setup.sh prepare-war -d /usr/hdp/current/oozie/libext-customer"- Look for console output to indicate success. For example, if you are using MySQL you should see something similar to: - INFO: Adding extension: libext-customer/mysql-connector-java.jar New Oozie WAR file with added 'JARs' at /var/lib/oozie/oozie-server/webapps/oozie.war 
- Add the following property to oozie-log4j.properties: - log4j.appender.oozie.layout.ConversionPattern=%d{ISO8601} %5p %c{1}:%L - SERVER[${oozie.instance.id}] %m%n- where ${oozie.instance.id} is determined by oozie, automatically. 
- Start Oozie as the Oozie user: - sudo su -l <OOZIE_User> -c "export OOZIE_CATALINA_HOME='usr/lib/bigtop-tomcat'; $OOZIE_CATALINA_HOME/catalina.sh $OOZIE_CATALINA_HOME/setclasspath.sh /usr/hdp/current/oozie-server/bin/oozied.sh start” 
- Check processes. - ps -ef | grep -i oozie


