Upgrade a Seafile cluster (binary)¶
Major and minor version upgrade¶
Seafile adds new features in major and minor versions. It is likely that some database tables need to be modified or the search index need to be updated. In general, upgrading a cluster contains the following steps:
- Upgrade the database
- Update symbolic link at frontend and backend nodes to point to the newest version
- Update configuration files at each node
- Update search index in the backend node
In general, to upgrade a cluster, you need:
- Run the upgrade script (for example, ./upgrade/upgrade_4_0_4_1.sh) in one frontend node
- Run the minor upgrade script (./upgrade/minor_upgrade.sh) in all other nodes to update symbolic link
- Update configuration files at each node according to the documentation for each version
- Delete old search index in the backend node if needed
Maintanence upgrade¶
Doing maintanence upgrading is simple, you only need to run the script ./upgrade/minor_upgrade.sh
at each node to update the symbolic link.
Upgrade from Seafile 11 cluster (all nodes)¶
Clean Database
If you have a large number of Activity
in MySQL, clear this table first Clean Database. Otherwise, the database upgrade will take a long time.
-
Stop Seafile server
Note
For installations using python virtual environment, activate it if it isn't already active
source python-venv/bin/activate
cd /opt/seafile/seafile-server-latest su seafile ./seafile.sh stop ./seahub.sh stop
cd /opt/seafile/seafile-server-latest su seafile ./seafile.sh stop ./seafile-background-tasks.sh stop
-
Install new Python libraries
-
Download and uncompress the package
-
Upgrade
seafile-pro-server-12.x.x/upgrade/upgrade_11.0_12.0.sh
-
Follow here to create the
.env
file inconf/
directory -
Start Seafile server
cd /opt/seafile/seafile-server-latest su seafile ./seafile.sh start ./seahub.sh start
cd /opt/seafile/seafile-server-latest su seafile ./seafile.sh start ./seafile-background-tasks.sh start
-
Refer here to upgrade notification server
-
Refer here to upgrade SeaDoc server