Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When using MariaDB, the following initial database configuration is recommended. However, some of the options below may need to change over time as the work carried out by PhixFlow increases.

Sizing and tuning

Full guidance is given here: . Typically, MariaDB installations used for PhixFlow use InnoDB as the storage engine.

You can aslo get an insight into the memory requirements of your database by using database management tools like mysqltuner ( ). Note that mysqltuner can be installed from the standard repositories on many linux distributions.

However, as a very broad rule of thumb, we recommend that you allow at least 20% head room on top of the assigned buffer pool size, taking into account any other software that needs to run on the sever and an allowance for the operating system itself.

- the key setting is innodb_buffer_pool_size.

Roughly speaking, after tomcat, leave about 1GB memory space and allocate the rest to this setting. E.g. on an 8GB machine, if you assign 5GB to tomcat, then assign 2GB to MariaDB (although you can probably get away with leaving 0.5 GB spare).

innodb_buffer_pool_size = 2G

Restart the MySQL service:

sudo systemctl stop mysql sudo systemctl start mysql


Installation

Option

Setting

Version

See System Requirements and Compatibility.

Max Server MemoryAt least 2 GB

The following configuration parameters must be set in my.cnf

datadir

Ensure that the data dir being used has sufficient space for the initial period of PhixFlow operation.

This is in the [mysqld] section of the my.cnf file.

binlog_format

mixed

This must be added to the [mysqld] section of the my.cnf file.

wait_timeout

28800 (this is the default, but some installation processes set this to a much lower value)

This must be in the [mysqld] section of the my.cnf file.

The following configuration parameters can optionally be set in my.cnf
log_bin_trust_function_creators

1

If set in my.cnf, this must be added to the [mysqld] section of the file.

For details on why this setting is recommended - and the alternatives if you do not want to set in this my.cnf - see Running non-deterministic functions

...