Versions Compared

Key

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

PhixFlow stores configuration, analysis and task data in any major JDBC compliant database however the core installation requirements for the most popular databases – of Oracle, SQL Server and or MariaDB (a dialect of MySQL) - are described below. For version compatability, please refer to Compatibility Guide and Upgrade Planning.

There are many issues to consider when installing a database, several of which will be concerned with your company’s own internal procedures, backup policies etc. The notes below describe just the core requirements which will enable the installation of PhixFlow to be completed. However, the DBA who carries out the installation should ensure that the database is configured to be performant for the volumes of data that PhixFlow is expected to process.

...

When using Oracle, 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.

General

12c (12.1)

Option

Setting

Oracle Edition

PhixFlow runs on all Oracle Database editions.

PhixFlow partitioned streams (optional) require the Enterprise Edition Partitioning option.

Version

11.2 (Support for earlier versions is available on request), or

See Compatibility Guide and Upgrade Planning.

Patches should be applied as advised by Oracle.

NLS_CHARACTERSET

AL32UTF8

NLS_LANG

american_america. AL32UTF8 (Not used by PhixFlow. For support purposes only)

NLS_SORT

BINARY

NLS_COMP

BINARY

NLS_NCHAR_CHARACTERSET

NCHARS are not used by PhixFlow however set to AL32UTF8

sga_max_size

At least 2 GB

For larger systems, this should be provided by the sizing process.

SID

cview

phixflow

Connection Type

Dedicated

Max Number of Connections

Variable, depending on system size and workload. Typically >100.

For larger systems, this should be provided by the sizing process.

Storage Type

Any, subject to throughput requirements.

Storage / Tablespaces

Tablespace Name

Size

I/O Rate (Mb/s sustained)

(Redo Logs)

3 x 0.5Gb

10Mb/s

CONFIG_DATA_01

2 GB

0.5Mb/s

ANALYSIS_DATA_01

100 GB

10Mb/s

UNDOTBS1 (UNDO)

10GB

10Mb/s

...


  1. The storage area sizes and I/O Rates are for a typical small server using conventional hard disk drives, and should be revised as part of the sizing process. Rates are quoted in Megabytes
  2. The I/O Rates are for sustained data transfers spanning many tens of minutes. Peak transfer rates, assuming transfers to/from fast memory buffers, may be much higher, but are not significant unless solid-state disks are used.

...

To support maintenance backups, the following datapump directory is required configured as:

CREATE DIRECTORY dpump_cview phixflow AS ‘/u02/phixflow/dbexport’;

...

The following Oracle user should be set up:

User

SQL Script

cview

phixflow

CREATE USER

cview

phixflow PROFILE DEFAULT

IDENTIFIED BY <password>

DEFAULT TABLESPACE CONFIG_DATA_01

QUOTA UNLIMITED ON CONFIG_DATA_01

QUOTA UNLIMITED ON ANALYSIS_DATA_01

ACCOUNT UNLOCK;

 


GRANT CREATE SESSION TO

cview

phixflow;

GRANT CREATE TABLE TO

cview

phixflow;

GRANT CREATE VIEW TO

cview

phixflow;

GRANT READ,WRITE ON DIRECTORY

cview

phixflow_dpump TO

cview

phixflow;

...


Microsoft SQL Server

When using SQL Server, 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.

Server

Option

Setting

SQL Server Edition

Standard or Enterprise

Version

2008 R2 or later

See Compatibility Guide and Upgrade Planning.

Service Name

(Please provide to PhixFlow installation consultant

)

Compatibility Level

SQL Server 2008 (100

)

Collation Character set

Latin1_General_CI_AS

Max Server Memory

At least 2 GB

Server Authentication

SQL Server and Windows Authentication Mode

Logins

Create a new login as follows:

Parameter

Setting

Login Name

cview

phixflow

Authentication

SQL Server

Password

Please provide to the PhixFlow installation consultant

Enforce password policy

No

Default database

Set to

cview

phixflow once the

cview

phixflow database has been created (below)

Default language

As appropriate

Database

Create a new database as follows:

Parameter

Setting

Name

cview

phixflow

Owner

cview

phixflow

Collation

Latin1_General_CI_AS

READ_COMMITTED_SNAPSHOT

ON

Filegroups

Name

Default

PRIMARY

Yes

ANALYSIS_DATA

 


Database Files

Logical Name

Setting

cview

phixflow

Type:                  Rows Data

Filegroup:           PRIMARY

Initial Size:         2000 MB

Autogrowth:       10% Unrestricted (or as per management policy)

Path:                    (As per management policy)

cview

phixflow_data_01

Type:                  Rows Data

Filegroup:                            ANALYSIS_DATA

Initial Size:         100,000 MB

Autogrowth:       10% Unrestricted (or as per management policy)

Path:                    (As per management policy)

cview

phixflow_log

Type:                  Log

Initial Size:         1000 MB

Autogrowth:       10% Unrestricted (or as per management policy)

Path:                    (As per management policy)

Anchor
mariaDBinstallationNotes
mariaDBinstallationNotes
MariaDB

MariaDB is a dialect of MySQL.

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.

...

Installation

Option

Setting

Version

MariaDB 10.0.14 or greater

See Compatibility Guide and Upgrade Planning.

Max Server MemoryAt least 2 GB

The following configuration parameters must be set in my.cnf

datadir

A directory on a partition set up to store the MySQL data files.

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

Example

If you add all parameters above to my.cnf, including the optional parameters, then the [mysqld] section of your my.cnf file should look something like this:

Code Block
[mysqld]
...
datadir = /var/lib/mysql
...
wait_timeout = 28800
...
binlog_format = mixed
log_bin_trust_function_creators = 1

Database

The following settings are required for the PhixFlow database.

Note

All of these parameters are reflected in the example MariaDB database creation command in Configure the Database.

You will need a database, and a login with all privileges on that database. The database must be created with the following options:

OptionSetting
character_set_serverutf8
collation_serverutf8_bin

Logins

Create a new login as follows:

Parameter

Setting

Login Name

cview

Password

Please provide to the PhixFlow installation consultant

Database

Create a new database as follows:

...

Parameter

...

Setting

...

Name

...

Anchor

...

Max Server Memory

...

At least 2 GB

mariaDBnonDeterministicFunctions
mariaDBnonDeterministicFunctions
Running non-deterministic functions

PhixFlow's migration scripts sometimes require the use of non-deterministic functions. To run, these require either a setting (log_bin_trust_function_creators) to be updated, or to be run with sufficient privileges.

Permanent setting change to allow non-deterministic functions

You can permanently allow non-deterministic functions to run in migration scripts by updating the setting log_bin_trust_function_creators in the my.cnf file. This is convenient, because you don't have to remember to make any changes to your session when running PhixFlow migration scripts. If you don't want to make this permanent change, see the following section.

Instructions for setting log_bin_trust_function_creators in the my.cnf file are given in MariaDB installation.

Session change to allow non-deterministic functions

If you do not update the log_bin_trust_function_creators setting in my.cnf, you must make sure that your session either has this setting updated, or that you run migration scripts with sufficient privileges. Full details for doing this are given in Upgrading PhixFlow.

Notes

Windows / Antivirus

MariaDB is not compatible with on-access anti-virus software so this must be disabled for the MariaDB data folder(s).