在 OEM 监控的所有数据库上运行 SQL 语句

Moh*_*fat 2 oracle oracle-enterprise-manager

我想编写一个选择 SQL 语句,但我希望它在 Oracle 企业管理器监视的所有数据库上运行。

我还想知道如何在 OEM 监视的所有数据库上运行“更改语句”。例如。我想从数据库中阻止/删除所有离开公司的用户。

Bal*_*app 8

首先,您需要为目标设置首选凭据。之后,您可以emcli为此使用。在下面的示例中,我有一个名为的组,sandbox_databases其中包含 3 个数据库:

$ emcli login -username=sysman
$ emcli execute_sql -sql="select count(*) from dba_users" -targets="sandbox_databases:group"
Run Code Online (Sandbox Code Playgroud)

输出是:

*******************************************************************************
* Target: XXXXX1:oracle_database
* Execution Status: Succeeded
*******************************************************************************

  COUNT(*)
----------
         9


*******************************************************************************
* Target: XXXXX2:oracle_database
* Execution Status: Succeeded
*******************************************************************************

  COUNT(*)
----------
        12


*******************************************************************************
* Target: XXXXX3:oracle_database
* Execution Status: Succeeded
*******************************************************************************

  COUNT(*)
----------
        10


*******************************************************************************
* Execution Summary
*     Targets Succeeded: 3
*         XXXXX1:oracle_database,XXXXX2:oracle_database,XXXXX3:oracle_database
*     Targets Failed: 0
*******************************************************************************
Run Code Online (Sandbox Code Playgroud)

ALTER 命令也有效,例如:

$ emcli execute_sql -sql="alter user bp account lock" -targets="another_group:group"
*******************************************************************************
* Target: XXXXX4:rac_database
* Execution Status: Succeeded
*******************************************************************************

PL/SQL procedure successfully completed.


User altered.


*******************************************************************************
* Execution Summary
*     Targets Succeeded: 1
*         XXXXX4:rac_database
*     Targets Failed: 0
*******************************************************************************
Run Code Online (Sandbox Code Playgroud)