This is the Oracle user that connects to the source database.
The source destination user can be the same as the schema of the data. However, we recommend that you create a Tonic Structural-specific user that has more restricted or read-only access.
TheTONIC_ORACLE_DBLINK_ENABLED
environment setting is deprecated and eventually will be removed. When that happens, Structural will no longer create a database link between the source and destination databases during data generation runs.
The details for providing the required access are slightly different based on whether you use database links. By default, Structural assumes that database links are not enabled. If database links are enabled, then set the environment setting TONIC_ORACLE_DBLINK_ENABLED
to true
for both the worker and the web server. You can configure this environment setting from Structural Settings. For more information, go to Configuring environment settings.
If TONIC_ORACLE_DBLINK_ENABLED
is false
, then to create the source database user, you can use one of the following options to create the source database user and grant the required access:
One way to grant the required access is to grant the SELECT ANY DICTIONARY
privilege.
If you choose that option, then to create the source database user:
Instead of the SELECT ANY DICTIONARY
privilege, you can grant the SELECT_CATALOG_ROLE
role.
If you choose that option, then to create the source database user:
If for security reasons you cannot use either of the previous options, Structural can use the ALL_*
views that are provided automatically in Oracle.
By default, an Oracle installation uses a GRANT
to PUBLIC
to grant all users access to all tables that start with ALL_
. For example:
If you do not revoke the PUBLIC
access to the ALL_*
views, then Structural can use this access to connect to the source database. To create the source database user:
If you do revoke the PUBLIC
access to the ALL_*
views, then you must specifically grant access to the source database user for the required ALL_*
views. To create the source database user:
If TONIC_ORACLE_DBLINK_ENABLED
is true
, then to create the source database user:
If TONIC_ORACLE_DBLINK_ENABLED
is true
, then Structural must be able to create a database link between the destination database and the source database. Structural uses the network link to process a data generation job.
This is the Oracle user that connects to the destination database. This user cannot be the same user as the output schema of the data.
Structural does not create the schema or the tablespace in the destination database. You must create the schemas and tablespaces before you generate data.
By default, during each data generation job, Structural creates the database schema for the destination database tables, then populates the database tables based on the workspace configuration.
If you prefer to manage the destination database schema yourself, then set the environment setting TONIC_ORACLE_SKIP_CREATE_DB
to true
. You can add this setting manually to the Environment Settings list on Structural Settings.
When TONIC_ORACLE_SKIP_CREATE_DB
is true
, then Structural does not create the destination database schema. Before you run data generation, you must create the destination database with the full schema.
During data generation, Structural deletes the data from the destination database tables, except in the following cases:
Tables that use Preserve Destination mode
Upsert data generation
It then populates the tables with the new destination data.
Known limitations for schema objects
Limitations on how Structural creates schema objects in the destination database.
System requirements
Supported versions of Oracle for Structural.
Structural differences and limitations
Features that are unavailable or work differently in Oracle workspaces.
Required Oracle configuration
Set up the required database users and links.
Configure workspace data connections
Data connection settings for Oracle workspaces.
The following limitations apply when Tonic Structural creates the destination database:
For Oracle advanced queues:
Structural does not copy messages from the source database to the destination database.
Structural does not copy queue subscribers to the destination database. You must add them to the destination database manually.
In the destination database, Structural creates external tables as relational tables.
Structural does not create database links in the destination database. You must create any required database links manually.
In the workspace configuration, select Oracle as the connection type.
In the Source Settings section, provide the details about the source database:
In the Server field, provide the server where the database is located.
In the Service Name field, provide the name of the service for the source database.
In the Port field, provide the port to use to connect to the database.
In the Username field, provide the username for the account to use to connect to the database.
In the Password field, provide the password for the specified username.
In the Schema field, provide the schema for the source database.
To use TCPS instead of TCP:
Toggle Enable TCPS to the on position.
Select the Oracle Wallet file to use.
To test the connection to the source database, click Test Source Connection.
By default, data generation is not blocked as long as schema changes do not conflict with your workspace configuration.
To block data generation when there are any schema changes, regardless of whether they conflict with your workspace configuration, toggle Block data generation on schema changes to the on position.
By default, the database file preferences such as tablespaces and filegroups for the destination database are configured and stored in the destination database.
To instead use database file preferences from the source database, toggle Preserve source database disk storage preferences in destination database to the on position.
Oracle supports the upsert process. When you enable upsert for the workspace, the data generation process initially writes the transformed data to an intermediate database.
After the initial data generation is complete, the upsert job writes new records to the destination database, and updates existing records in the destination database. It does not touch any other records that are in the destination database.
In the Upsert section, when you enable upsert, you are prompted to configure the upsert processing and to provide the connection information for the intermediate database.
If the intermediate database is in the same location as the source database, then you can copy the connection and authentication details from the source database.
To copy the connection and authentication details from the source database:
Click Copy Settings from Source.
In the Password field, provide the password.
To test the connection to the destination database, click Test Intermediate Connection.
To provide the connection details for the intermediate database:
In the Server field, provide the server where the database is located.
In the Service Name field, provide the name of the service for the source database.
In the Port field, provide the port to use to connect to the database.
In the Username field, provide the username for the account to use to connect to the database.
In the Password field, provide the password for the specified username.
In the Schema field, provide the schema for the source database.
To use TCPS instead of TCP:
Toggle Enable TCPS to the on position.
Select the Oracle Wallet file to use.
To test the connection to the intermediate database, click Test Intermediate Connection.
In the Destination Settings section, provide the connection details for the destination database.
To copy the connection details from the source database:
Click Copy Settings from Source.
In the Password field, provide the password.
To test the connection to the destination database, click Test Destination Connection.
If you do not copy the source connection details, then to specify the connection information for the destination database:
In the Server field, provide the server where the database is located.
In the Service name field, provide the name of the service for the destination database.
In the Port field, provide the port to use to connect to the database.
In the Username field, provide the username for the account to use to connect to the database.
In the Password field, provide the password for the specified username.
In the Schema field, provide the schema for the destination database.
To use TCPS instead of TCP:
Toggle Enable TCPS to the on position.
Select the Oracle Wallet file to use.
To test the connection to the destination database, click Test Destination Connection.
When connecting to the source or destination database, Structural uses the connection details to populate the connection string as follows:
Where:
<SERVER>
is the value from the Server field.
<PORT>
is the value from the Port field.
<SERVICE NAME>
is the value from the Service name field.