create-subsetting-policy-create-schema-source-from-target-details¶
Description¶
Creates a new subsetting policy and associates it with a sensitive data model or a target database.
To use a sensitive data model as the source of subsetting schemas, set the schemaSource attribute to SENSITIVE_DATA_MODEL and provide the sensitiveDataModelId attribute. In this case, the target database associated with the sensitive data model is used for subsetting rules validations.
You can also create a subsetting policy without using a sensitive data model. In this case, you need to associate your subsetting policy with a target database by setting the schemaSource attribute to TARGET and providing the targetId attribute. The specified target database is used for subsetting rules validations.
After creating a subsetting policy, you can use the CreateSubsettingRule operation to manually add subsetting rules to the policy.
Usage¶
oci data-safe subsetting-policy create-subsetting-policy-create-schema-source-from-target-details [OPTIONS]
Required Parameters¶
-
--compartment-id,-c[text]¶
The OCID of the compartment where the subsetting policy should be created
-
--schema-source-target-id[text]¶
The OCID of the target database that’s used as the source of subsetting schemas
Optional Parameters¶
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags Example: {“Operations”: {“CostCenter”: “42”}} This is a complex type whose value must be valid JSON. The value can be provided as a string on the command line or passed in as a file using the file://path/to/file syntax.
The --generate-param-json-input option can be used to generate an example of the JSON which must be provided. We recommend storing this example
in a file, modifying it as needed and then passing it back in via the file:// syntax.
-
--description[text]¶
The description of the subsetting policy
-
--display-name[text]¶
The display name of the subsetting policy. The name does not have to be unique, and it’s changeable
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags
Example:
{"Department": "Finance"}
This is a complex type whose value must be valid JSON. The value can be provided as a string on the command line or passed in as a file using the file://path/to/file syntax.
The --generate-param-json-input option can be used to generate an example of the JSON which must be provided. We recommend storing this example
in a file, modifying it as needed and then passing it back in via the file:// syntax.
-
--from-json[text]¶
Provide input to this command as a JSON document from a file using the file://path-to/file syntax.
The --generate-full-command-json-input option can be used to generate a sample json file to be used with this command option. The key names are pre-populated and match the command option names (converted to camelCase format, e.g. compartment-id –> compartmentId), while the values of the keys need to be populated by the user before using the sample file as an input to this command. For any command option that accepts multiple values, the value of the key can be a JSON array.
Options can still be provided on the command line. If an option exists in both the JSON document and the command line then the command line specified value will be used.
For examples on usage of this option, please see our “using CLI with advanced JSON options” link: https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/cliusing.htm#AdvancedJSONOptions
-
--is-redo-logging-enabled[boolean]¶
Indicates if redo logging is enabled during a subsetting operation. It’s disabled by default. Set this attribute to true to enable redo logging. By default, subsetting disables redo logging and flashback logging to purge any original data from logs. However, in certain circumstances when you only want to test subsetting, rollback changes, and retry subsetting, you could enable logging and use a flashback database to retrieve the original data after it has been subsetted
-
--is-refresh-stats-enabled[boolean]¶
Indicates if statistics gathering is enabled. It’s enabled by default. Set this attribute to false to disable statistics gathering. The subsetting process gathers statistics on subsetted database tables after subsetting completes
-
--masking-policy-id[text]¶
The OCID of the masking policy to associate with this subsetting policy
-
--max-wait-seconds[integer]¶
The maximum time to wait for the work request to reach the state defined by --wait-for-state. Defaults to 1200 seconds.
-
--parallel-degree[text]¶
Specifies options to enable parallel execution when running data subsetting. Allowed values are ‘NONE’ (no parallelism), ‘DEFAULT’ (the Oracle Database computes the optimum degree of parallelism) or an integer value to be used as the degree of parallelism. Parallel execution helps effectively use multiple CPUs and improve subsetting performance. Refer to the Oracle Database parallel execution framework when choosing an explicit degree of parallelism
-
--post-subsetting-script[text]¶
A post-subsetting script, which can contain SQL and PL/SQL statements. It’s executed after the subsetting process. It’s usually used to perform additional transformation or cleanup work after subsetting data.
-
--pre-subsetting-script[text]¶
A pre-subsetting script, which can contain SQL and PL/SQL statements. It’s executed before the subsetting process. It’s usually used to perform any preparation or prerequisite work before subsetting data.
-
--recompile[text]¶
Specifies how to recompile invalid objects post data subsetting. Allowed values are ‘SERIAL’ (recompile in serial), ‘PARALLEL’ (recompile in parallel), ‘NONE’ (do not recompile). If it’s set to PARALLEL, the value of parallelDegree attribute is used. Use the built-in UTL_RECOMP package to recompile any remaining invalid objects after subsetting completes
-
--schema-source-schemas-for-subsetting[complex type]¶
The schemas to be subsetted This is a complex type whose value must be valid JSON. The value can be provided as a string on the command line or passed in as a file using the file://path/to/file syntax.
The --generate-param-json-input option can be used to generate an example of the JSON which must be provided. We recommend storing this example
in a file, modifying it as needed and then passing it back in via the file:// syntax.
Strategy to be applied for tables which are not impacted by any of the subsetting rules
-
--wait-for-state[text]¶
This operation asynchronously creates, modifies or deletes a resource and uses a work request to track the progress of the operation. Specify this option to perform the action and then wait until the work request reaches a certain state. Multiple states can be specified, returning on the first state. For example, --wait-for-state ACCEPTED --wait-for-state SUSPENDED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.
Accepted values are:
ACCEPTED, CANCELED, CANCELING, FAILED, IN_PROGRESS, SUCCEEDED, SUSPENDED, SUSPENDING
-
--wait-interval-seconds[integer]¶
Check every --wait-interval-seconds to see whether the work request has reached the state defined by --wait-for-state. Defaults to 30 seconds.
Global Parameters¶
Use oci --help for help on global parameters.
--auth-purpose, --auth, --cert-bundle, --cli-auto-prompt, --cli-rc-file, --config-file, --connection-timeout, --debug, --defaults-file, --enable-dual-stack, --enable-propagation, --endpoint, --federation-endpoint, --generate-full-command-json-input, --generate-param-json-input, --help, --latest-version, --max-retries, --no-retry, --opc-client-request-id, --opc-request-id, --output, --profile, --proxy, --query, --raw-output, --read-timeout, --realm-specific-endpoint, --region, --release-info, --request-id, --version, -?, -d, -h, -i, -v
Example using required parameter¶
Copy the following CLI commands into a file named example.sh. Run the command by typing “bash example.sh” and replacing the example parameters with your own.
Please note this sample will only work in the POSIX-compliant bash-like shell. You need to set up the OCI configuration and appropriate security policies before trying the examples.
export compartment_id=<substitute-value-of-compartment_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/data-safe/subsetting-policy/create-subsetting-policy-create-schema-source-from-target-details.html#cmdoption-compartment-id
export schema_source_target_id=<substitute-value-of-schema_source_target_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/data-safe/subsetting-policy/create-subsetting-policy-create-schema-source-from-target-details.html#cmdoption-schema-source-target-id
oci data-safe subsetting-policy create-subsetting-policy-create-schema-source-from-target-details --compartment-id $compartment_id --schema-source-target-id $schema_source_target_id