Upgrade Instructions
Safely upgrade your Piler installation to a newer version with complete step-by-step instructions.
Critical: Backup Before Upgrading
It's strongly recommended to backup your configs including piler.key, piler.conf, piler.pem, sphinx.conf and config-site.php before the upgrade.
Essential files to backup:
piler.keypiler.confpiler.pemsphinx.confconfig-site.phpWhen upgrading across multiple versions, apply all intermediate database scripts sequentially.
Version-Specific Upgrade Paths
Follow the instructions for your version upgrade path
0.1.18 → 0.1.19
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.18-vs-0.19.sqlAdd the following variables to config.php:
define('TABLE_GROUP', 'group');
define('TABLE_GROUP_USER', 'group_user');
define('TABLE_GROUP_EMAIL', 'group_email');0.1.19 → 0.1.20
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.19-vs-0.20.sql0.1.20 → 0.1.21 ⚠️ Breaking Changes
⚠️ Important Warning
Backup the 'tag' and 'note' tables, then drop them. The new version has a modified schema.
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.20-vs-0.21.sqlAdd the following to config.php:
define('TABLE_FOLDER', 'folder');
define('TABLE_FOLDER_RULE', 'folder_rule');
define('TABLE_FOLDER_MESSAGE', 'folder_message');
define('TABLE_FOLDER_EXTRA', 'folder_extra');
define('TABLE_NOTE', 'note');
define('ICON_FOLDER', 'images/folder.png');
define('ICON_EMPTY_FOLDER', 'images/folder-open.png');0.1.21 → 0.1.22
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.21-vs-0.22.sqlRename in config.php:
LANG → DEFAULT_LANGAdd the following to config.php:
$config['MEMCACHED_ENABLED'] = 0;
$config['MEMCACHED_PREFIX'] = 'piler';
$config['MEMCACHED_TTL'] = 86400;
$config['TIMEZONE'] = 'Europe/Budapest';
$config['DB_CHARSET'] = 'utf8';
$config['ENABLE_DELETE'] = 1;Update search indices:
searchd stop
indexer --config /etc/piler/sphinx.conf note1
searchd startRemove folder related lines from sphinx.conf
0.1.22 → 0.1.23
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.1.22-vs-0.1.23.sqlRestructure the store directory:
From: $localstatedir/piler/store/
To: $localstatedir/piler/store/<SERVER_ID>
0.1.23 → 0.1.24
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.1.23-vs-0.1.24.sqlUpdate sphinx indexing scheme and cron jobs to new delta-delta structure.
0.1.24 → 1.1.0
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-0.1.24-vs-1.1.0.sql1.1.1 → 1.2.0
Execute the following sql script on the piler database:
mysql -u piler -p piler < util/db-upgrade-1.1.0-vs-1.2.0.sqlNote: All piler related configs moved to ${sysconfdir}/piler directory.
1.2.0 → 1.3.0
No additional steps required.
1.3.0 → 1.3.5
Optional: Upgrade MySQL encoding from utf8 to utf8mb4 for complete UTF-8 support (including emojis).
Alternatively, maintain current settings with specific charset configurations in three configuration files and execute ALTER TABLE statements.
1.4.5 → 1.4.6 (Docker)
Update file ownership:
chown -R 1001:1001 <volume_folder>Add audit1 index to manticore.conf
Update PHP version to 8.3 in nginx configuration
1.4.6 → 1.4.7 (Docker)
Note: Manticore index is moved to a separate container.
Add manticore service to docker-compose.yaml
Adjust piler service with environment variable:
MANTICORE_HOSTNAME=manticoreUpdate ownership:
chown -R 999:999 <manticore_volume>Configure hostname settings in piler.conf and config-site.php
Web UI Upgrade
Simple and straightforward web interface updates
Simple UI Updates
Upgrading the web interface is straightforward: simply overwrite the webui files.
✓ Your local configurations in config-site.php remain untouched and will be preserved.