oracle.oci.oci_database_management_managed_database_actions (5.0.0) — module

Perform actions on a ManagedDatabase resource in Oracle Cloud Infrastructure

| "added in version" 2.9.0 of oracle.oci"

Authors: Oracle (@oracle)

preview | supported by community

Install collection

Install with ansible-galaxy collection install oracle.oci:==5.0.0


Add to requirements.yml

  collections:
    - name: oracle.oci
      version: 5.0.0

Description

Perform actions on a ManagedDatabase resource in Oracle Cloud Infrastructure

For I(action=clone_sql_tuning_task), clones and runs a SQL tuning task in the database.

For I(action=drop_sql_tuning_task), drops a SQL tuning task and its related results from the database.

For I(action=start_sql_tuning_task), starts a SQL tuning task for a given set of SQL statements from the active session history top SQL statements.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action clone_sql_tuning_task on managed_database
  oci_database_management_managed_database_actions:
    # required
    original_task_id: 56
    managed_database_id: "ocid1.manageddatabase.oc1..xxxxxxEXAMPLExxxxxx"
    task_name: task_name_example
    credential_details:
      # required
      password_secret_id: "ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx"
      sql_tuning_task_credential_type: SECRET
      username: username_example
      role: NORMAL
    action: clone_sql_tuning_task

    # optional
    task_description: task_description_example
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action drop_sql_tuning_task on managed_database
  oci_database_management_managed_database_actions:
    # required
    task_id: 56
    managed_database_id: "ocid1.manageddatabase.oc1..xxxxxxEXAMPLExxxxxx"
    credential_details:
      # required
      password_secret_id: "ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx"
      sql_tuning_task_credential_type: SECRET
      username: username_example
      role: NORMAL
    action: drop_sql_tuning_task
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action start_sql_tuning_task on managed_database
  oci_database_management_managed_database_actions:
    # required
    managed_database_id: "ocid1.manageddatabase.oc1..xxxxxxEXAMPLExxxxxx"
    task_name: task_name_example
    credential_details:
      # required
      password_secret_id: "ocid1.passwordsecret.oc1..xxxxxxEXAMPLExxxxxx"
      sql_tuning_task_credential_type: SECRET
      username: username_example
      role: NORMAL
    total_time_limit_in_minutes: 56
    scope: LIMITED
    action: start_sql_tuning_task

    # optional
    task_description: task_description_example
    statement_time_limit_in_minutes: 56
    sql_tuning_set:
      # required
      name: name_example
      owner: owner_example
    sql_details:
    - # required
      sql_id: "ocid1.sql.oc1..xxxxxxEXAMPLExxxxxx"
    time_started: time_started_example
    time_ended: time_ended_example

Inputs

    
scope:
    choices:
    - LIMITED
    - COMPREHENSIVE
    description:
    - The scope for the SQL tuning task. For LIMITED scope, the SQL profile recommendation
      is excluded, so the task is executed faster. For COMPREHENSIVE scope, the SQL profile
      recommendation is included.
    - Required for I(action=start_sql_tuning_task).
    type: str

action:
    choices:
    - clone_sql_tuning_task
    - drop_sql_tuning_task
    - start_sql_tuning_task
    description:
    - The action to perform on the ManagedDatabase.
    required: true
    type: str

region:
    description:
    - The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set,
      then the value of the OCI_REGION variable, if any, is used. This option is required
      if the region is not specified through a configuration file (See C(config_file_location)).
      Please refer to U(https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm)
      for more information on OCI regions.
    type: str

task_id:
    description:
    - The identifier of the SQL tuning task being dropped. This is not the L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
      It can be retrieved from the following endpoint L(ListSqlTuningAdvisorTasks,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/database-
      management/latest/ManagedDatabase/ListSqlTuningAdvisorTasks).
    - Required for I(action=drop_sql_tuning_task).
    type: int

tenancy:
    description:
    - OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if
      any, is used. This option is required if the tenancy OCID is not specified through
      a configuration file (See C(config_file_location)). To get the tenancy OCID, please
      refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm)
    type: str

api_user:
    description:
    - The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the
      value of the OCI_USER_ID environment variable, if any, is used. This option is required
      if the user is not specified through a configuration file (See C(config_file_location)).
      To get the user's OCID, please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

auth_type:
    choices:
    - api_key
    - instance_principal
    - instance_obo_user
    - resource_principal
    - security_token
    default: api_key
    description:
    - The type of authentication to use for making API requests. By default C(auth_type="api_key")
      based authentication is performed and the API key (see I(api_user_key_file)) in
      your config file will be used. If this 'auth_type' module option is not specified,
      the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use C(auth_type="instance_principal")
      to use instance principal based authentication when running ansible playbooks within
      an OCI compute instance.
    type: str

task_name:
    description:
    - The name of the SQL tuning task. The name is unique per user in a database, and
      it is case-sensitive.
    - Required for I(action=clone_sql_tuning_task), I(action=start_sql_tuning_task).
    type: str

time_ended:
    description:
    - The end time of the period in which SQL statements are running.
    - Applicable only for I(action=start_sql_tuning_task).
    type: str

cert_bundle:
    description:
    - The full path to a CA certificate bundle to be used for SSL verification. This will
      override the default CA certificate bundle. If not set, then the value of the OCI_ANSIBLE_CERT_BUNDLE
      variable, if any, is used.
    type: str

sql_details:
    description:
    - The details of the SQL statement on which tuning is performed. To obtain the details
      of the SQL statement, you must provide either the sqlTuningSet or the tuple of sqlDetails/timeStarted/timeEnded.
    - Applicable only for I(action=start_sql_tuning_task).
    elements: dict
    suboptions:
      sql_id:
        description:
        - The identifier of a SQL statement.
        required: true
        type: str
    type: list

auth_purpose:
    choices:
    - service_principal
    description:
    - The auth purpose which can be used in conjunction with 'auth_type=instance_principal'.
      The default auth_purpose for instance_principal is None.
    type: str

time_started:
    description:
    - The start time of the period in which SQL statements are running.
    - Applicable only for I(action=start_sql_tuning_task).
    type: str

sql_tuning_set:
    description:
    - ''
    - Applicable only for I(action=start_sql_tuning_task).
    suboptions:
      name:
        description:
        - The name of the SQL tuning set.
        required: true
        type: str
      owner:
        description:
        - The owner of the SQL tuning set.
        required: true
        type: str
    type: dict

original_task_id:
    description:
    - The identifier of the SQL tuning task being cloned. This is not the L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm).
      It can be retrieved from the following endpoint L(ListSqlTuningAdvisorTasks,https://docs.cloud.oracle.com/en-us/iaas/api/#/en/database-
      management/latest/ManagedDatabase/ListSqlTuningAdvisorTasks).
    - Required for I(action=clone_sql_tuning_task).
    type: int

task_description:
    description:
    - The description of the SQL tuning task.
    - Applicable only for I(action=clone_sql_tuning_task)I(action=start_sql_tuning_task).
    type: str

api_user_key_file:
    description:
    - Full path and filename of the private key (in PEM format). If not set, then the
      value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required
      if the private key is not specified through a configuration file (See C(config_file_location)).
      If the key is encrypted with a pass-phrase, the C(api_user_key_pass_phrase) option
      must also be provided.
    type: str

credential_details:
    description:
    - ''
    required: true
    suboptions:
      password:
        description:
        - The database user's password encoded using BASE64 scheme.
        - Required when sql_tuning_task_credential_type is 'PASSWORD'
        type: str
      password_secret_id:
        description:
        - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
          of the Secret where the database password is stored.
        - Required when sql_tuning_task_credential_type is 'SECRET'
        type: str
      role:
        choices:
        - NORMAL
        - SYSDBA
        description:
        - The role of the database user.
        required: true
        type: str
      sql_tuning_task_credential_type:
        choices:
        - SECRET
        - PASSWORD
        description:
        - The type of credential for the SQL tuning task.
        required: true
        type: str
      username:
        description:
        - The user name used to connect to the database.
        required: true
        type: str
    type: dict

config_profile_name:
    description:
    - The profile to load from the config file referenced by C(config_file_location).
      If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any,
      is used. Otherwise, defaults to the "DEFAULT" profile in C(config_file_location).
    type: str

managed_database_id:
    aliases:
    - id
    description:
    - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
      of the Managed Database.
    required: true
    type: str

api_user_fingerprint:
    description:
    - Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT
      environment variable, if any, is used. This option is required if the key fingerprint
      is not specified through a configuration file (See C(config_file_location)). To
      get the key pair's fingerprint value please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

config_file_location:
    description:
    - Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment
      variable, if any, is used. Otherwise, defaults to ~/.oci/config.
    type: str

api_user_key_pass_phrase:
    description:
    - Passphrase used by the key referenced in C(api_user_key_file), if it is encrypted.
      If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is
      used. This option is required if the key passphrase is not specified through a configuration
      file (See C(config_file_location)).
    type: str

total_time_limit_in_minutes:
    description:
    - The time limit for running the SQL tuning task.
    - Required for I(action=start_sql_tuning_task).
    type: int

statement_time_limit_in_minutes:
    description:
    - The time limit per SQL statement (in minutes). This is for a task with the COMPREHENSIVE
      scope. The time limit per SQL statement should not be more than the total time limit.
    - Applicable only for I(action=start_sql_tuning_task).
    type: int

realm_specific_endpoint_template_enabled:
    description:
    - Enable/Disable realm specific endpoint template for service client. By Default,
      realm specific endpoint template is disabled. If not set, then the value of the
      OCI_REALM_SPECIFIC_SERVICE_ENDPOINT_TEMPLATE_ENABLED variable, if any, is used.
    type: bool

Outputs

managed_database:
  contains:
    additional_details:
      description:
      - 'The additional details specific to a type of database defined in `{"key":
        "value"}` format. Example: `{"bar-key": "value"}`'
      returned: on success
      sample: {}
      type: dict
    compartment_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the compartment.
      returned: on success
      sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    database_status:
      description:
      - The status of the Oracle Database. Indicates whether the status of the database
        is UP, DOWN, or UNKNOWN at the current time.
      returned: on success
      sample: UP
      type: str
    database_sub_type:
      description:
      - The subtype of the Oracle Database. Indicates whether the database is a Container
        Database, Pluggable Database, Non-container Database, Autonomous Database,
        or Autonomous Container Database.
      returned: on success
      sample: CDB
      type: str
    database_type:
      description:
      - The type of Oracle Database installation.
      returned: on success
      sample: EXTERNAL_SIDB
      type: str
    db_system_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the external DB system that this Managed Database is part of.
      returned: on success
      sample: ocid1.dbsystem.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    deployment_type:
      description:
      - The infrastructure used to deploy the Oracle Database.
      returned: on success
      sample: ONPREMISE
      type: str
    id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the Managed Database.
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    instance_count:
      description:
      - The number of Oracle Real Application Clusters (Oracle RAC) database instances.
      returned: on success
      sample: 56
      type: int
    instance_details:
      contains:
        host_name:
          description:
          - The name of the host of the Oracle RAC database instance.
          returned: on success
          sample: host_name_example
          type: str
        id:
          description:
          - The ID of the Oracle RAC database instance.
          returned: on success
          sample: 56
          type: int
        name:
          description:
          - The name of the Oracle RAC database instance.
          returned: on success
          sample: name_example
          type: str
        status:
          description:
          - The status of the Oracle RAC database instance.
          returned: on success
          sample: UP
          type: str
      description:
      - The details of the Oracle Real Application Clusters (Oracle RAC) database
        instances.
      returned: on success
      type: complex
    is_cluster:
      description:
      - Indicates whether the Oracle Database is part of a cluster.
      returned: on success
      sample: true
      type: bool
    managed_database_groups:
      contains:
        compartment_id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
            of the compartment in which the Managed Database Group resides.
          returned: on success
          sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
            of the Managed Database Group.
          returned: on success
          sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        name:
          description:
          - The name of the Managed Database Group.
          returned: on success
          sample: name_example
          type: str
      description:
      - A list of Managed Database Groups that the Managed Database belongs to.
      returned: on success
      type: complex
    management_option:
      description:
      - The management option used when enabling Database Management.
      returned: on success
      sample: BASIC
      type: str
    name:
      description:
      - The name of the Managed Database.
      returned: on success
      sample: name_example
      type: str
    parent_container_compartment_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the compartment in which the parent Container Database resides, if the
        Managed Database is a Pluggable Database (PDB).
      returned: on success
      sample: ocid1.parentcontainercompartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    parent_container_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the parent Container Database if Managed Database is a Pluggable Database.
      returned: on success
      sample: ocid1.parentcontainer.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    parent_container_name:
      description:
      - The name of the parent Container Database.
      returned: on success
      sample: parent_container_name_example
      type: str
    pdb_count:
      description:
      - The number of PDBs in the Container Database.
      returned: on success
      sample: 56
      type: int
    pdb_status:
      contains:
        count:
          description:
          - The number of PDBs with this status.
          returned: on success
          sample: 56
          type: int
        status:
          description:
          - The status of the PDBs with this count.
          returned: on success
          sample: UP
          type: str
      description:
      - The status of the PDB in the Container Database.
      returned: on success
      type: complex
    storage_system_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the storage DB system.
      returned: on success
      sample: ocid1.storagesystem.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    time_created:
      description:
      - The date and time the Managed Database was created.
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    workload_type:
      description:
      - The workload type of the Autonomous Database.
      returned: on success
      sample: OLTP
      type: str
  description:
  - Details of the ManagedDatabase resource acted upon by the current operation
  returned: on success
  sample:
    additional_details: {}
    compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
    database_status: UP
    database_sub_type: CDB
    database_type: EXTERNAL_SIDB
    db_system_id: ocid1.dbsystem.oc1..xxxxxxEXAMPLExxxxxx
    deployment_type: ONPREMISE
    id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
    instance_count: 56
    instance_details:
    - host_name: host_name_example
      id: 56
      name: name_example
      status: UP
    is_cluster: true
    managed_database_groups:
    - compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      name: name_example
    management_option: BASIC
    name: name_example
    parent_container_compartment_id: ocid1.parentcontainercompartment.oc1..xxxxxxEXAMPLExxxxxx
    parent_container_id: ocid1.parentcontainer.oc1..xxxxxxEXAMPLExxxxxx
    parent_container_name: parent_container_name_example
    pdb_count: 56
    pdb_status:
    - count: 56
      status: UP
    storage_system_id: ocid1.storagesystem.oc1..xxxxxxEXAMPLExxxxxx
    time_created: '2013-10-20T19:20:30+01:00'
    workload_type: OLTP
  type: complex