Starting from TKU September 2020 Database Schema node type and Database Table node type were updated to contain DB Server type. (DRDC1-14748) e.g. SQL Database Schema type was changed to Oracle Database Schema and SQL Database Table type was replaced with Oracle Database Table.
Changes to Oracle Database modeling
To support multitenancy introduced in Oracle 12c, the changes to modeling Database Details has been introduced: all the Database Details, like Schemas and Tables, are now linked to the logical databases instead of the Database Software Instance. For versions earlier that Oracle 12c, and for the root database in Oracle 12c and later, the Database Details are also linked to the Software Instance.
The old model, where the Database Details are only linked directly to the Software Instances, is outdated.
Pattern Goal
The goal of the Oracle RDBMS Database Detail patterns is to obtain a detailed mapping of a given Database structure. The Database pattern (Atrium Discovery 8.3 and later) creates a DatabaseDetail node that represents an instance of the Oracle Database Server which allows the CMDB sync mechanism to map it to the BMC_Database CI in Atrium CMDB. The SchemasAndTables pattern returns the list of Schemas managed by a given database (represented by a SID or a server_name), and, furthermore, it returns (optionally, and disabled by default) the list of all Tables within these Schemas. The TablespacesAndDataFiles pattern returns the list of Tablespaces for a given SID or service_name, and, furthermore, it can return (optionally, and disabled by default) the list of all DataFiles, for each Tablespace.
Note
The patterns will not by default return the list of all tables within schemas nor all datafiles within tablespaces as this can have a marked impact on discovery of hosts with large database installations
The Oracle schema and table information is then stored within the Atrium Discovery Model as DatabaseDetail Nodes.
The patterns with exception of the Database pattern connect to the Oracle DB Server using a JDBC connection.
There are several configuration options available for this Extended Discovery:
Non-CDB Oracle installations (All Oracles prior to 12c) had 1 default "Oracle Database <ORA_SID>" Database Details and another (Oracle Database Schemas, Oracle Tablespace) Database Details were linked directly to "Oracle Database Server" SoftwareInstance, like:
New DatabaseDetail hierarchy is used to match non-CDB and mulitenant(CDB) Oracle installations:
Note
New DatabaseDetails hierarchy could have impact on CAM models in ADDM and sync to CMDB since "Oracle Database Schema", "Oracle Tablespace" DatabaseDetails are now attached to correspondent 'Oracle Database' DatabaseDetail instead of 'Oracle Database Server' SI, though DatabaseDetail's keys (for default non-CDB instance / CDB$ROOT PDB) are left unchanged.
Pattern extracts list of pluggable database using methods:
The Database Detail Patterns require additional configuration before they can be used.
The pattern uses 'success_login_cred' attribute of related "Oracle Database Server" SI to run DB Query.
Note
The database query to Oracle Database Server will only run if the extended_sql_discovery option is enabled in the Oracle Database pattern configuration section. It is enabled by default.
In order for Atrium Discovery to retrieve the Database details, it will need to be able to access the Database as a legitimate user, with privileges sufficient to execute the SQL Queries below.
The pattern executes the following SQL Queries.
The pattern executes the following SQL Queries.
Note
The following pattern configuration options allow to filter out not needed schemas:
ignore_schemas - Ignore schemas which fully match,
ignore_schemas_substring - Ignore schemas which have substring
3 Comments
Marcin Cieslak
Setting of Database Integration Point
The above link seems to be 404 now...
Roland Brã¼gger
Hi all,
I need some clarification in order to get the list of pluggable databases. This chapter is too vage in my opinion.
But what we need to configure for "deep diving" into the CDB in order to get the PDB list?
Thanks for some hints.
Roland
Yahub Zeinalov
Official comment can be found here:
https://communities.bmc.com/thread/194925
Also in TKU October 2019 we added an option to try all service names to discover PDBs. Please note that this option is set to false by default and will only be used if the associated discovery method in success_login_credential is service. You may still need to ask the DBA to setup the Oracle user which can be used in BMC Discovery accordingly to get the tablespaces and schemas for them.