Oracle的企业管理器大家一定不会陌生,在十多年前,我们就使用Grid Control对主机、数据库、中间件等IT部件进行管理。在Grid Control之后,我们使用EM12c,EM13c以及现在的Oracle Management Cloud(OMC)对企业中的各种IT资源进行管理。
我们通过5个实验来了解一下如何使用EM13c进行基本的数据库生命周期管理、性能查看与数据库升级。这是一个面向初学者的基础Workshop,我们会在后续的文章中,详细为大家介绍更多的EM13c的相关内容。今天我们为大家介绍第一个实验。
准备环境
您可以在自己的服务器或者虚拟机上安装EM13c,安装方法可以参考docs.oracle.com当中的文档,文档内容细致,将通过step by step的方式为您提供安装说明。
我今天使用的是Oracle公有云为大家免费提供EM13c Workshop环境,您在OCI当中创建Compute instance的时候,按照下图显示,选择EM13c的Image即可。
根据您选择的compute instance shape不同,创建时间也会有些许差异,一般情况下5-10分钟即可创建完毕。当您使用ssh工具登录compute instance并转换到oracle用户之后,将看到下面的提示,表示您的环境已经准备完毕,可以开始使用了。
在今天我们使用的环境当中,配置了18c和19c多个版本的数据库,并创建测试使用的CDB与PDB,您在登录之后,可以在首页上查看当前环境的数据库版本情况。
实验1:多租户数据库生命周期管理
在本小节实验中,将为您介绍如何如何使用EM13c对多租户数据库进行生命周期管理,具体内容如下:
创建PDB
插入、拔出一个已经存在的PDB
克隆PDB
PDB的Compliance管理
使用PDBaaS实现自服务获取PDB
PDBaaS基础管理
实验1-1:创建PDB
我们创建PDB的方式有很多种,比如常见的使用命令行的方式创建,您也可以使用EM13c,通过图形界面方便地创建。比如我们现在想在CDB186这个CDB当中创建一个PDB,可以按照下图所示,在EM13c的菜单中选择“Database provisioning”。
在Database provisioning页面当中选择下图所示的Provision Pluggable Databases。
点击下图中红色框标识的放大镜,选择创建PDB的容器数据库。
本次要在cdb186这个容器数据库上创建PDB,所以在下面的选择界面,选择这个容器数据库即可。
然后选择创建新的PDB,如下图所示:
我们选择创建新的PDB,然后需要给出登录操作系统的首选身份证明,在当前的实验中,我们事先创建了一个首选身份证明叫做ORACLE,它带有操作系统上的oracle用户及对应的口令。如果您没有事先创建,您可以在这里新建,然后选择一个方便记忆且有意义的名字即可。
在下面的页面当中,给出您新创建的PDB的名字,PDB的命名规则遵循Oracle常规对象名的命名规则。大家注意到下面的界面中标记②的部分,这里可以为我们的PDB创建多个副本,默认情况下是不创建副本的。如果您选择创建副本,可以在后面的副本个数那里选择副本的数量。下页面底部,给出PDB的管理者口令。
接下来选择数据文件位置,您可以选择OMF或者文件系统,在本次的实验当中,我们选择了文件系统。然后在下图②所示的部分,选择一个账户解锁脚本,大家可以通过点击下图中③所指的放大镜,在弹出菜单中,以unlock为关键字进行检索,这样就可以在创建PDB的同时,将账户进行解锁,具体的脚本内容,可以通过查阅官方文档获得。
选择立即创建,然后点击下一步。
点击下图中的超链接,可以查看PDB创建过程。
稍等片刻之后,在主菜单当中选择Target,然后选择Database,之后就可以看到我们新创建的PDB了,因为我们在创建的时候,选择了创建两个副本,所以系统将自动为新创建的PDB进行编号。
实验1-2:插入/拔出PDB
对于PDB的插入和拔出是PDB经常要做的操作,我们现在通过例子为大家介绍在EM13c当中只需点几下鼠标就可以完成PDB的插入与拔出。比如我们先将本实验中CDB186这个CDB当中的一个PDB拔出,然后再用一个新的名字把它插入回来。
首先还是来到Database Provisioning如下图所示:
按照下图中序号,首先选择要拔出PDB所在的CDB,然后选择unplug选项。
接下来按照下图中所示,选择要unplug的PDB,在本次的实验中,我们将之前创建的PROV_PDB_HENRY2拔出。在这里需要注意的是,在下图中④和⑤的部分,选择的是操作系统上的首选身份证明,如果没有创建,在这里先创建一个也是可以的。
我们需要为unplug的PDB选择一个template以及保存这个template的位置,在本次实验中,我们选择
选择立即运行即可。
您可以点击图中的按钮,查看unplug job运行的情况。
在Job运行概要当中可以看到这个Job的执行步骤和使用时间。
通过观察Database列表,我们发现原来的PDB已经不在列表当中了。
接下来,我们将刚才unplug的PDB再重新插回来,但要给一个新的名字。首先还是来到Database Provisioning。
需要注意的是,我们想要将PDB插入到CDB,选择的是Create New Pluggable Databases,仔细看下面的说明就知道原因了。
在PDB Creation Options当中选择Unplugged PDB。
接下来给出要插入的PDB的名字,这个名字在当前的CDB中不重复即可,我们将Create as Clone前面的方框选中,这将为新插入的PDB提供新的PDB DBID、GUID以及其他用于识别该PDB的信息。
在PDB template location当中,我们依旧选择Software Library,然后将之前的我们创建的模板选中。
选择PDB数据文件的位置,本次选择了操作系统,然后给出临时工作路径。
大概等待一两分钟就可以在Database的仪表盘中看到新插入的数据库了。
实验1-3:克隆PDB
首先来到Database列表页面,找到打算克隆的PDB
然后右键点击要被克隆的PDB,在弹出菜单中选择创建完整的克隆PDB。
在克隆PDB的页面,首先给出登录该PDB所在CDB的身份证明,如下图①所示,然后给出克隆出的新PDB的名字,如下图②所示,并给出下图④所示的主机身份证明。
等待数据库创建完毕,就可以在数据库列表中看到新的数据库。
实验1-4:PDB合规性管理
合规性一直都是DBA和企业比较关心的问题,在EM13c当中可以方便地对数据库进行合规性审查。当然,如果您有更高级的合规性要求,比如要求满足某国际或地区的合规性要求,您可以使用Oracle Data Safe进行更细致的合规性审核。(参考我们之前发布的文章:Oracle Database 20c与DATA SAFE,Oracle Data Safe开始支持本地数据库)
选中下图②所示的合规性标准,然后添加检测目标。
来到数据库列表界面,找到刚才进行合规性检查的PDB,右键单击,调出菜单,然后按照下图所示,找到该PDB的最新配置信息。
然后点击刷新按钮,,刷新PDB的统计信息。
统计信息的时间与机器配置和数据库中的数据对象数量有关,一般在5分钟左右可以完成。
等待统计信息收集完成,就可以在Compliance Results当中进行查看了。
点击Violations可以查看具体合规性问题。
如果想解决这个问题,可以点击下图中红框标识的Submit from library
在弹出菜单中选择FIX OPEN CURSOR来修复这个问题。面对不同的合规性问题,这里的建议也是不相同的。
我们知道这个修改应该是和初始化参数相关,所以我们来到这个PDB查看一下和游标相关的初始化参数。发现open_cursors参数已经被调整到400。您在做实验之前,可以先来查询,然后进行比较。
实验1-5:使用PDBaaS实现自服务PDB申请
PDB非常适合私有云环境,现在我们就通过实验来了解,如何实现。
首先我们要更换登录的账号,之前我们使用的是sysman账户,是管理账户,我们事先已经创建好了PDB自服务模板。我们现在使用Self-Service User普通用户登录。我们使用普通用户登录之后,可以看到如下界面。
我们首先创建一个PDB实例
然后给出PDB的配置即可,这里的模板是我们事先预定好的,可以在管理端进行修改和配置。在这个界面当中,我们可以选择PDB的shape与我们在公有云当中的配置很相似。也可以在这个页面上设定PDB的生命周期,比如下方⑤所示。
可以通过下图中的云端标志,查看Request情况。
当PDB创建完毕,我们可以在主页上看到该PDB以及它的状态。
点击这个PDB可以进入详细页,并可以修改PDB的shape。
稍等片刻,刷新页面就可以看到新的配置。
关于PDB的连接方式,在首页上有显示。
我们可以随时将这个PDB在主页上删除。您可以在删除之前,保留该PDB的备份,以备日后使用。
实验1-6:管理PDBaaS
使用sysman用户登录,然后来到Cloud->Database页面。
在下拉菜单当中选择Pluggable Database
我们可以通过左侧的链接查看PaaS的基本配置情况,比如该zone当中的资源配置情况等。在今天的实验当中,我们只有一台主机。
接下来我们看看PDB pool,在详细页当中,可以看到PDB pool当中各个成员的运行情况。
我们在实验1-5当中申请创建PDB的时候,有两个PDB模板,在模板当中限制了该PDB的资源使用等。我们可以在Service Templates当中创建自己的模板,因为步骤比较简单,留给大家自己去探索。
今天的内容就到这里,我们将在本系列的第二个教程当中为您介绍数据库性能维护,期待您的关注,谢谢。
扫描下方QR Code即刻预约ADW演示
编辑:殷海英