这是我们本系列的教程的第五讲,也是本系列教程的最后一讲,在今天的内容中,将为大家介绍数据库配置与合规性管理。关于合规性,我们在之前的文章中介绍过Oracle Data Safe(Oracle Database 20c与DATA SAFE),使用Oracle Data Safe可以帮助大家检测数据库当中的合规性是否满足您的组织标准或者其他国际标准,Oracle Data Safe可以监控云端数据库,也可以监控大家本地的数据库。它是一个运行在OCI上的云端产品,如果您的数据库环境被严格限制访问公共网络,您可以使用EM13c当中的合规性管理,来检测和诊断您数据库的合规性。

EM13c 基础教程Workshop(5)_Java

实验5-1:Inventory与详细用量

作为运维人员,经常要统计当前所管理的所有数据库的清单,包括数据库的版本、各版本数据库实例的数量,这样做的目的是为了减少不同配置集的数量,并提高数据中心标准化水平。在EM13c当中,可以使用Inventory and Usage Details获取当前EM管理的对象信息。

EM13c 基础教程Workshop(5)_Java_02

在Inventory and Usage Details主页上,默认显示的是EM当前所管理的主机信息,我们可以通过下拉菜单获取其他受管理对象的详细信息。比如我们选择Database,将显示当前EM所管理的所有数据库,并在表格当中显示每个版本的数据库实例数量,各个数据库所在的操作系统等信息。

EM13c 基础教程Workshop(5)_Java_03

我们可以将当前的表格导出成Excel文件进行保存与分享。


EM13c 基础教程Workshop(5)_Java_04

EM13c 基础教程Workshop(5)_Java_05

实验5-2:数据库比较

在很早之前,我们想比较两个数据库的配置情况可能是一件比较麻烦的事情。就拿比较两个数据库的初始化参数来说,我们首先从要比较的数据库中将初始化参数文件导出成pfile,然后再使用文本比较工具或者自己写的脚本进行比较。效率较低,而且比较出来的结果也不方便阅读,更谈不上美观。在EM13c当中,我们可以使用Configuration & Drift Management对多个数据库在多种维度上进行比较,而且比较的结果内容丰富、报告直观易懂。在本实验当中,我们比较emrep与finance这两个数据库,看看他们在配置上有何不同。

EM13c 基础教程Workshop(5)_Java_06

接下来我们创建一个数据库比较,按照下图所示操作即可。

EM13c 基础教程Workshop(5)_Java_07

接下来我们选择源数据库,大家通过下图中②所示的下拉菜单可以了解到,我们能够比较的不只是Database instance,还有好多管理对象可以进行比较。

EM13c 基础教程Workshop(5)_Java_08

接下来我们选择比较所使用的比较模板,如下图①所示下拉菜单。然后在②所示位置给出比较名称,接下来添加比较对象即可。最后提交这个比较任务。

EM13c 基础教程Workshop(5)_Java_09

稍等片刻就会出现比较结果,可以通过左侧的比较过滤器对比较结果进行选择,比如我们只关心初始化参数,那么就可以在左侧的过滤器中选择 Initialization Parameters。您也可以将结果导出成Excel文件进行保存与分享。

EM13c 基础教程Workshop(5)_Java_10

EM13c 基础教程Workshop(5)_Java_11

EM13c 基础教程Workshop(5)_Java_12

EM13c 基础教程Workshop(5)_Java_05

实验5-3:Database Configuration Drift Management

有时我们想持续监控数据库配置的变化,我们之前可能需要将数据库告警日志上传到文本处理软件当中,根据关键字找出配置变化。这样操作起来比较繁琐,而且容易出现遗漏的情况。在EM13c当中可以轻松实现数据库配置的持续监控。我们只需要选择一个基准数据库,然后定制一个监控模板,之后添加受监控的对象即可。而且系统当中提供了丰富的监控模板,我们只需要直接选取或者对其进行修改即可使用。

在接下来的实验中,我们将emrep作为基准数据库,将finance作为受监控数据库,并且我们只对初始化参数进行持续监控。

EM13c 基础教程Workshop(5)_Java_14


EM13c 基础教程Workshop(5)_Java_15

来到主页之后,我们可以看到系统为我们提供的比较监控模板,我们找到Database Instance Template然后使用Create Like创建出我们自己的监控模板叫做Demo1225.

EM13c 基础教程Workshop(5)_Java_16

如我们在上面所说,我们只想针对初始化参数进行监控和比较,所以我们要对刚才创建的Demo1225这个模板进行修改。

EM13c 基础教程Workshop(5)_Java_17

在模板设定当中,我们只选择左侧的三项,并确定右侧的详细设定部分,当中的比较选项都已经按照下图中中部红框所示已经被勾选,然后按保存按钮即可。


EM13c 基础教程Workshop(5)_Java_18

接下来我们创建Drift Definition。

EM13c 基础教程Workshop(5)_Java_19


EM13c 基础教程Workshop(5)_Java_20

接下来我们给出Drift Definition的名字如下图①所示,然后在③所示的位置选择emrep作为source database,也就是我们比较的基准。然后点击“Save and Associate Targets”去添加比较目标。

EM13c 基础教程Workshop(5)_Java_21

EM13c 基础教程Workshop(5)_Java_22

稍等片刻,在仪表盘首页可以看到比较结果。

EM13c 基础教程Workshop(5)_Java_23

我们可以来到Drift Result页面,查看具体比较信息。

EM13c 基础教程Workshop(5)_Java_24


EM13c 基础教程Workshop(5)_Java_25

EM13c 基础教程Workshop(5)_Java_26

EM13c 基础教程Workshop(5)_Java_05

实验5-4:数据库及主机安全合规检查

如我们在本文开始向大家介绍的,如果大家无法使用Oracle Data Safe对您的数据库进行合规性检查,可以使用EM13c当中的合规性检查中关于数据库部分的规则进行检查,虽然Oracle Data Safe相比功能略少,但也满足了无法访问公有云时对数据库合规性检测的要求。

EM13c 基础教程Workshop(5)_Java_28

我们通过create like的方式创建出一个属于我们自己的合规性检查模板,然后对emrep这个数据库做标准的合规性检查。

EM13c 基础教程Workshop(5)_Java_29

EM13c 基础教程Workshop(5)_Java_30

如果您不想对其进行修改,只要点击Save进行保存即可。

EM13c 基础教程Workshop(5)_Java_31

选择我们刚刚创建的合规性模板,然后为它分配被检测对象。

EM13c 基础教程Workshop(5)_Java_32

EM13c 基础教程Workshop(5)_Java_33

点击下面绿色箭头所指的数字,查看具体检测状态。如果发现已经是successfully done就表明已经检测完成。

EM13c 基础教程Workshop(5)_Java_34

EM13c 基础教程Workshop(5)_Java_35

接下来我们查看检测结果。因为EM13c的更新速度与Oracle Data Safe存在差异,如果想获取更详细的合规性检查或者符合最新的国际或区域标准,请使用Oracle Data Safe,它已经支持本地数据库和云端数据库。

EM13c 基础教程Workshop(5)_Java_36

EM13c 基础教程Workshop(5)_Java_37

EM13c 基础教程Workshop(5)_Java_38

我们可以按照相同的方式对主机进行检查。

EM13c 基础教程Workshop(5)_Java_39

EM13c 基础教程Workshop(5)_Java_40

EM13c 基础教程Workshop(5)_Java_41

EM13c 基础教程Workshop(5)_Java_42

EM13c 基础教程Workshop(5)_Java_43

EM13c 基础教程Workshop(5)_Java_44

我们本系列教程到这里就全部完成了,感谢各位的点阅,谢谢。

最后通过一段视频遥祝各位在即将到来的2021年,身体健康,诸事顺利!

看视频



相关链接:
EM13c 基础教程Workshop(1)

EM13c 基础教程Workshop(2)

EM13c 基础教程Workshop(3)

EM13c 基础教程Workshop(4)


编辑:殷海英