Skip to main content

 Configuration

Configuration manual for PageSeeder

Database properties

The database properties specify how PageSeeder connects to the database.

The values vary depending on the location of the database engine and the JDBC Driver used.

The DB monitor service can be used to check the health of the PageSeeder server and database connection.

To change the database password, stop PageSeeder and change it in your database engine, then replace the EncryptedPassword property with LoginPassword=[new password] and start PageSeeder. PageSeeder will encrypt the password and change the property back to EncryptedPassword.

Database properties

PropertyDescription
DBDriverThe name of the class implementing the JDBC Driver interface
DBURLThe JDBC URL to access the database. If empty then PageSeeder will start without connecting to the database but only the Setup servlet will be enabled.
HostNameThe name of the machine hosting the MySQL database server
LoginPasswordThe password to access the MySQL database – can only be used to reset the EncryptedPassword
EncryptedPasswordThe encrypted password to access the MySQL database
LoginNameThe login to access the MySQL database
DatabaseNameThe name of the MySQL database
DatabaseTypeThe type of database used
MaxConnectionsThe maximum number of connections in the database pool* – default 100

Use the JDBC URL to define driver specific parameters.

If using MySQL JDBC Connector/J v8 or higher do not include?useSSL=false in the DBURL property as it is deprecated. This defaults to sslMode=PREFERRED, meaning it tries to connect with SSL, but will use non-SSL if it's not available.

For extra security on Connector/J v8, use SSL by adding ?sslMode=REQUIRED to the custom database URL on the Database settings page. This will usually work on Linux servers with OpenSSL (Windows and Linux without OpenSSL require extra configuration of MySQL).

PageSeeder uses the same properties regardless of the driver implementation.

* If MaxConnections > 140 (and  <  990), it is recommended to add the following to /etc/my.cnf on Linux, under [mysqld], and restart MySQL.

max_connections=1000
open_files_limit=8192

If using CentOS, append these two lines to /etc/security/limits.conf

mysql hard nofile 8192
mysql soft nofile 8192

On some CentOS systems, you might need to create a file /etc/systemd/system/mysqld.service.d/override.conf (or limits.conf) with the contents:

[Service] 
LimitNOFILE = 8192

After creating the file reload systemd with:

$ systemctl daemon-reload

and restart mysqld and pageseeder to enable the change:

$ systemctl restart mysqld
$ service pageseeder restart

To check that the limit has been increased enter the following to find the process ID number:

ps -ef | grep mysqld

and then enter:

cat /proc/[process ID]/limits | grep files

To see how many open files a process currently has enter:

lsof -p [process ID] | wc -l

Other Linux servers might require different configuration to increase the open file limit.

If you find the Too many open files error in the PageSeeder logs you can also increase its limits using the same process but substituting pageseeder for mysqld.

Implementation specific values

MySQL Connector/J

PropertyValue
DBDrivercom.mysql.cj.jdbc.Driver
DBURLjdbc:mysql://[host]/[database]
DatabaseTypeMySQL

PostgeSQL driver

PropertyValue
DBDriverorg.postgresql.Driver
DBURL jdbc:postgresql://[host]/[database]
DatabaseTypePostgreSQL
Created on , last edited on