The Datasource defines a connection to an external database. You need to define at least one of these in order to push and pull data to and from external database systems.
- It has a name and a driver class (which should match the kind of datasource you are connecting to, e.g. Oracle, MySQL, SQLServer etc.).
- The protect during import flag can be used to prevent this datasource being updated or deleted during import. T
To prevent orphaned datasources, when a parent application is deleted by the import, its datasources will also be deleted. - Remember to set the enabled flag to make the datasource active.
- Most importantly, ensure you have configured at least one datasource instance.
The toolbar has the standard icons and to show the list of tables visible for this datasource using the default login details; see the Table Details form.
For information about other property tabs, see Property Tabs.
Datasource Instances
A Datasource Instance defines connection details to a database. A number of instances can be defined to allow for several connections under a single Datasource. At least one Datasource Instance must be defined for each Datasource.
Field | Description |
---|---|
Name | Name of the Datasource Instance. Used to identify the datasource instance in collectors and exporters. |
URL | URL to connect to the datasource. See example connection strings below. |
Enabled | Flag whether this datasource is enabled or disabled. |
Anonymous Username | Username for connecting to the datasource when the credentials of the PhixFlow user should not or cannot be used, for example in a scheduled task plan. |
Password | Password for connecting to the datasource with the Anonymous Username. |
Advanced | |
Check Query | See Advanced Configuration. |
Datasource Profile | See Advanced Configuration. |
Description | A description of the datasource instance. |
A datasource instance must have a name, a URL, and a username and password used to connect to the external datasource. The URL should be in one of the following formats:
Platform | Connection String |
---|---|
Oracle | jdbc:oracle:thin:@hostname:1521:phixflow |
Oracle (> 12c with PDB containers) | jdbc:oracle:thin:@hostname:1521/phixflow |
Sql Server | jdbc:sqlserver://hostname\myservice;databaseName=phixflow |
MySQL | jdbc:mysql://hostname/phixflow |
Big Query | jdbc:bigquery://@hostname:@port;ProjectId=@Project; |
Advanced Configuration
There are two flags on the details tab that determine what credential the datasource sends when connecting to the external source.
When the Anonymous Export Allowed flag is ticked, the datasource can be used by an exporter as part of the work done in executing a task e.g. when processing a scheduled task. In this mode, the datasource will use the configured anonymous username and password. If anonymous export is not allowed, the datasource cannot be used by an exporter during the execution of a task. The datasource can only use the logged in user's credentials (see Use user credentials below).
When the Use User Credentials on Export flag is ticked, the current logged in user's own PhixFlow username and password will be used to connect to the target database when an exporter is used interactively. Note that this means that the username/password must be set up on the target system by a Database Administrator.
This is an advanced (optional) setting. Use this field when connections to the target database might go "stale", e.g. if the target database disconnects long running connections. Setting this field causes PhixFlow to run the query against the database just before each use of a "pooled" connection. If the query does not return a row, the connection is discarded and a new connection is created. To avoid any performance impact, the query should execute quickly. See also database collectors for guidance on writing SQL queries in PhixFlow.
This is an advanced (optional) setting. Use this field when connections to the target database have certain requirements that are not covered by PhixFlow's default external Datasource configuration. The value entered in this field will determine which external datasource connection profile that this datasource instance will use to connect to the target database.
Datasource behaviour is also determined by these parameters set elsewhere in PhixFlow:
- Privilege 'Allow anonymous updates on datasources'. Only a user with this privilege can modify the 'Anonymous export allowed' flag on a datasource.
- System Configuration. parameter 'Allow anonymous export by default'. This causes the 'Anonymous export allowed' to be true by default on all new datasources.