---
title: "Upgrading from version 5.6"
source: https://dev.pageseeder.com/guide/installation/upgrading/upgrading_5.6.html
description: "Instructions for upgrading PageSeeder from version 5.6 to newer versions on Windows and Linux systems, including MySQL configuration, database checks, and service management steps."
last_updated: 2026-09-14T15:19:55+10:00
tokens: ~1342
---

# Upgrading from version 5.6

> **Warning:** Before installing any upgrade, **make a backup** of the PageSeeder install folder and the PageSeeder database. To preserve the PageSeeder cache, stop the PageSeeder service before doing the backup.

> **Warning:** Before upgrading, **read** the NOTE sections in any [release notes](/guide/installation/release_notes.md) after the current version to ensure the project customizations are compatible with the new version.

Upgrading from versions lower than 5.6 is no longer supported.

To upgrade from 5.6 to 6.x first upgrade to 5.9913 and then follow the instructions on [Upgrading to version 6](/guide/installation/upgrading/upgrading_from_version_5.x.md).

## Windows

**To upgrade from version 5.6 or earlier, follow these steps:**

1. **Upgrade** MySQL to version 5.6.4 or higher (but not MySQL 8).
2. **Ensure** mysql-connector-java-5.1.32.jar or higher is in the pageseeder`/webapp/WEB-INF/drivers` and `lib` folders and **remove** older mysql connector .jar files.
3. **Modify** the `\ProgramData\MySQL\MySQL Server 5.6\my.ini` file by changing all instances of `utf8` to `utf8mb4` and then **restart** the MySQL service.
4. **Check** for duplicate MEMBER\_FOR\_DGROUP records using the MySQL command line using the following SQL and then **delete** one row in each duplicate pair, so that this SQL returns no results.
USE pageseeder;
SELECT DISTINCT t1.\* from MEMBER\_FOR\_DGROUP t1, MEMBER\_FOR\_DGROUP t2
WHERE t1.groupid = t2.groupid AND t1.memberid=t2.memberid AND
t1.memberforgroupid\<\>t2.memberforgroupid;


5. **Stop** the PageSeeder windows service.
6. **Double click** on the new `pageseeder-x.exe` installer.

> **Note:** It might take a few minutes to update the database after PageSeeder starts. To see the progress, or if PageSeeder fails to start, view the pageseeder/webapp/WEB-INF/logs/general/general.log file.

## Linux

**To upgrade from version 5.6 or earlier, follow these steps:**

1. **Upgrade** MySQL to version 5.6.4 or higher (but not MySQL 8).
2. **Ensure** `mysql-connector-java-5.1.39.jar` or higher is in the `pageseeder/webapp/WEB-INF/drivers` and `lib` folders and **remove** older mysql connector .jar files.
3. **Modify** the `/etc/my.cnf` file by changing all instances of `utf8` to `utf8mb4` and then **restart** the MySQL service. See [Configuring MySQL](/guide/installation/mysql.md) for any other configuration changes that might be required.
4. **Check** for duplicate MEMBER\_FOR\_DGROUP records using the MySQL command line using the following SQL and then **delete** one row in each duplicate pair so that this SQL returns no results.
USE pageseeder;
SELECT DISTINCT t1.\* from MEMBER\_FOR\_DGROUP t1, MEMBER\_FOR\_DGROUP t2
WHERE t1.groupid = t2.groupid AND t1.memberid=t2.memberid AND
t1.memberforgroupid\<\>t2.memberforgroupid;


5. If Java 8 or higher is not installed (see [which version of java](/guide/installation/new_installation/which_version_of_java.md)) **choose** one of the following options:


  - OpenJDK (JDK 8) [install](https://openjdk.org/install)
$ su -c "yum install java-1.8.0-openjdk"

  
OR 

  - 
Oracle (e.g. download Server JRE 64-bit) [Java Linux install](https://docs.oracle.com/javase/8/docs/technotes/guides/install/linux_server_jre.html)
$ cd /usr/java
$ tar zxvf server-jre-8u\<version\>-linux-x64.tar.gz
$ rm server-jre-8u\<version\>-linux-x64.tar.gz
$ cd /usr/bin
$ mv java java.bak
$ ln -s /usr/java/jdk1.8.0\_\<version\>/bin/java java


6. 
**Disable** any existing SMTP servers as follows:
service sendmail stop
chkconfig --del sendmail
service postfix stop
chkconfig --del postfix


7. 
**Stop** your existing PageSeeder by entering:
service pageseeder stop


8. 
**Install** the latest PageSeeder 5.7 production version as follows:
rpm -Uvh http://download.pageseeder.com/pub/rpm/pageseeder-repository-1.1-1.noarch.rpm
yum install pageseeder-5.9913-1

or to install a beta version use the following:
yum install xinetd
rpm -Uvh http://download.pageseeder.com/pub/rpm/beta/pageseeder-x.y-z.noarch.rpm


9. **Migrate** the existing PageSeeder data as shown following. **Press** Enter to accept the default values which are to be carried over from the existing PageSeeder.
sudo service pageseeder migrate


The Java Options default back to "-Xmx512m -XX:MaxPermSize=128m". If there were different options or memory settings, **enter** them when prompted.


10. If you chose a website port less the 1024 (e.g. 80 or 443 for SSL), **configure** a proxy from this port to the API port (e.g. 8282). To do this, see [Configuring a proxy](/guide/installation/configuring_a_proxy.md).
11. **Start** the PageSeeder service as follows:
sudo service pageseeder start


If error “This account is currently not available.” is displayed, **use** the following command but be sure either no password or a secure password are set for the `pageseeder` user: `sudo usermod -s /bin/bash pageseeder`


12. It might take a few minutes to update the database after starting. To see the progress, or if PageSeeder fails to start, **view** the `/opt/pageseeder/webapp/WEB-INF/logs/general/general.log` file.
13. **Check** that editing documents, adding comments, email notification and replying to emails works, and if everything is OK, delete the old `database.properties` files as follows:
rm /usr/old.pageseeder/webapp/WEB-INF/config/\*database\*



