如何在脱机模式下载新的Oracle Cloud Control 12c的Agent软件

从OEM 12c开始,agent无法直接通过互联网可以下载,而需要在Self Update (自行更新)下载。但通常在生产环境中部署的OEM,出于安全考虑是没法直接连接互联网的。那么问题就来了,如果OEM是安装在Linux平台下,那么即只有对应平台的Agent软件。如果想要监管AIX或者HP-UNIX平台呢?本文就是为了解决此问题,如何在脱机模式中仍然使用self-update和补丁管理特性。

其他版本的下载可参考:http://www.oracle.com/technetwork/oem/grid-control/downloads/agentsoft-090381.html

1、首先,在OEM中通过“Setup(设置)”>“Extensibility(可扩展性)”>“ Self Update (自行更新)”。进入“ Self Update (自行更新)”配置页,查看“Connection Mode(连接模式)”的显示结果,必须是设置为”Offline”模式。

如下图:

OEM2

OEM1

2、返回“Self Update(自行更新)”配置页,点击“ Check Updates(检查更新)”,此时弹出“ Check updates in offline mode(在脱机模式中检查更新)”提示框,根据提示框,到可与Internet连接的主机上,先下载更新目录:

OEM3

比如:https://updates.oracle.com/Orion/Download/download_patch/p9348486_112000_Generic.zip

根据Use the following link to download the latest updates catalog 提供的网址,下载相应的文件后上传至OEM主机。

3、我们将使用emcli工具来导入catalog,emcli工具本身就已经安装在Manager Cloud Control server中的。如果没法正常使用,可以采用以下方式来安装emcli工具:

  1. 下载和安装最新的Java 1.6.x
  2. 下载emclikit.jar https://emcc_host:emcc_port/em/faces/core-emcli-emcliDownload
  3. 安装:java -jar emcliadvancedkit.jar -install_dir=<em_cli_home_dir>
  4. 配置:/u01/app/oracle/emcli/emcli setup -url=https://192.168.56.241:7802/em/ -username=SYSMAN

使用以下命令,登陆emcli并导入catalog:

4、再次检查“ Self Update (自行更新)”配置页:

EMCC01

此时可以看到,虽然仍然是在Offline模式下,但是已更新catalog内容,可以看到Agent Software有50个Available Updates。

5、点击”Agent Software “,进入agnet列表,选择所需的agent,然后点击”Download”:

EMCC02

然后使用emcli导入agent软件:

6、再次检查“ Self Update (自行更新)”配置页,可以看到新的agent已经下载完毕: EMCC03 点击”Apply”使之可以给部署使用。此时会有一个后台作业呗创建,在几秒之后,可以看到状态被改变为”applied”。EMCC04

此时我们就可以开始部署此平台。
参考文档:

http://docs.oracle.com/cd/E24628_01/install.121/e22624/install_agent.htm#EMBSC292

12c New Feature:Temporary Undo

背景:

本文是学习12c新特性的笔记,主要来源于官方文档和OU教材汇总而成。

什么是临时undo?

Temporary Undo是12c的新特性,如下图所示:

Temporary Undo verview

临时表广泛的被用作于为暂存中间结果分配区域,这是因为改变哪些表是比用非临时表快很多的。性能提升主要是因为实际上修改临时表没有redo条目直接产生。然而,在临时表(和索引)上操作的undo任然记录到redo log。临时表的undo,在该临时对象的其生命期的一致性读和事务回滚是有用的。超出此范围的undo是多余的。因此它在redo流中不需要持续。举例来说,事务恢复只是丢弃临时对象的undo。

从12c开始,可以通过把临时表的事务产生的undo,直接在临时表空间中存储独立undo流,来避免在redo流中记录undo。

注意:临时undo segment是会话私有的。它存储属于相应会话的临时表改变的undo

默认情况下,undo记录临时表是存储在undo表空间中,且记录到redo中,这是与undo管理永久表相同的方式。然而,你可以使用TEMP_UNDO_ENABLED初始化参数来从永久表的undo分离临时表的undo。当此参数设置为TRUE,临时表的undo调用temporary undo。
Continue reading 12c New Feature:Temporary Undo

12c New Features:使用RMAN连接CDB


Making RMAN Connections to a CDB
本节描述在12c中如何使用RMAN客户端连接CDB和PDB。它包含以下主题:
  • 关于CDBs的备份和恢复
  • 限制连接到PDB(Restrictions When Connected to a PDB)
  • 连接Root为目标(Connecting as Target to the Root)
  • 连接PDB为目标(Connecting as Target to a PDB)
关于CDBs的备份和恢复
你可以对整个CDB、只有root、单个或多个PDB执行RMAN操作。你可以根据以下规则让RMAN连接CDBs:
  • 在整个CDB上执行操作(例如,备份整个CDB)你需要连接到root作为目标。
  • 只对root执行操作(例如,备份root)你需要连接到root作为目标。
  • 对单个PDB执行操作,你可以连接到root或直接的连接PDB作为目标
    • 如果你通过root连接,必须使用PLUGGABLE DATABASE语法使用RMAN命令。例如,备份一个PDB,可以用BACKUP PLUGGABLE DATABASE命令
    • 如果你是直接连接到一个PDB,你可以使用和连接到非CDB一样的命令。例如,备份一个PDB,你可以使用BACKUP DATABASE命令。
  • 通过一个命令在两个或更多的PDBs上执行操作,你需要连接到root作为目标。例如,备份sales和hr的PDB,你可以连接到root,然后提交以下命令:BACKUP PLUGGABLE DATABASE sales,hr;
注意:如果你连接CDB为目标是通过操作系统认证,你就是连接为root。
限制连接到PDB(Restrictions When Connected to a PDB)
当你是直接连接PDB为目标,以下操作是不允许:
  • 备份archive logs
  • 删除archive logs
  • 删除archive logs备份
  • 恢复归档日志(RMAN在media recovery期间需要恢复archived logs)
  • 时间点恢复 Point-in-time recovery (PITR)
  • 表空间时间点恢复(TSPITR,Tablespace Point-in-time Recovery)
  • 表恢复 Table recovery
  • 副本数据库 Duplicate database
  • 闪回操作 Flashback operations
  • 运行数据恢复指导 Running Data Recovery Advisor
  • Report/delete obsolete
  • Register database
  • Import catalog
  • Reset database
  • 配置RMAN环境(使用CONFIGURE命令)
注意:当你连接目录为PDB,你不能连接到恢复目录(recovery catalog)
连接Root为目标(Connecting as Target to the Root)
有多种方法可以连接到root作为目标,以下三个是最常见的方法:
  • 通过普通用户本地连接(Connecting locally as a common user)
  • 通过操作系统认证连接( Connecting with operating system authentication)
  • 普通用户通过Oracle Net Services使用网络服务名连接
在所有的情况下,你连接的用户必须要有SYSDBA货SYSBACKUP权限。
例1使用SYS用户在本地连接到root,这是一个常见的用户,建立连接使用的是SYSDBA权限
例1: Connecting Locally to the Root
[oracle@db12c ~]$ rman target sys
connected to target database: DB12C (DBID=1279217785)
RMAN>
例2: Connecting to the Root with Operating System Authentication
[oracle@db12c ~]$ rman target /
connected to target database: DB12C (DBID=1279217785)
例3:Connecting to the Root with a Net Service Name
rman target c##bkuser@sales
target database Password: password
connected to target database: CDB (DBID=659628168)
连接PDB为目标(Connecting as Target to a PDB)
连接到一个PDB作为目标,你必须:
  • 连接到一个网络服务名称必须解析PDB的数据库服务。
  • 连接到拥有SYSDBA权限的一个本地用户或公共用户
  • 你想要执行RMAN操作的PDB名称
  • 解析对应的网络服务名到对应的PDB数据库服务
  • 在hrpdb PDB上创建对应的local user hrbkup并且授予sysdba权限。
例4:Connecting As Target to a PDB
rman target hrbkup@hrpdb
target database Password: password
connected to target database: CDB (DBID=659628168)

12c New Features:备份CDBs和PDBs


关于备份CDBs和PDBs
在12c中RMAN和Oracle Enterprise Manager Cloud Control对多租户环境提供完整的备份和恢复支持。多租户体系结构能够使一个Oracle Database作为CDB功能。你可以对整个CDB、或仅仅root、一个或多个PDB做备份和恢复。你也可以在PDB中的单个表空间和数据文件做备份和恢复。
你可能想要通过使用增量备份策略在夜间执行备份整个CDB,或者你可能想要经常对个别PDB进行备份和很少对整个CDB或者root做备份。
从对数据丢失的恢复能力,单独备份root和所有的PDB等同于备份整个CDB。两者的主要区别是在你输入RMAN命令的数量和恢复时间。恢复整个CDB比恢复root加上所有的PDB需要的时间更少。
备份整个CDB
备份整个CDB和备份非CDB类似,但你备份整个CDB,RMAN会备份root和所有的PDB,还有archived redo logs。你可以从CDB备份中恢复整个CDB,或只有root,一个或多个PDB。
备份整个CDB
按照说明在“Backing Up a Whole Database with RMAN”,使用有sysbackup或sysdba权限的公共用户(common user)连接root。
使用RMAN备份Root
你可以使用RMAN只针对root做备份。因为在整个CDB中root包含关键元数据。Oracle推荐定时备份root或备份整个CDB。
使用RMAN备份root:
  1. 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的共有用户(common user)连接到root。
  2. 输入下面的命令:BACKUP DATABASE ROOT;
使用RMAN备份PDBs
RMAN可以支持对CDB中的一个或多个PDBs备份。有两种方法使用RMAN来备份PDB:
  • 连接到root和使用BACKUP PLUGGABLE DATABASE命令,这种方法能够使用一个命令备份多个PDB。

当你连接到一个PDB使用root,这种备份只对root和特定的PDB,而且不是其他的PDBs。

  • 连接到PDB和使用BACKUP DATABASE命令。这种方法只备份单一的PDB,而且你也可以使用相同的命令来备份non_CDB。

创建备份的时候,通过root连接,则可以连接到任意可见的PDB。

当你备份单独的PDB,archived redo log是不会被备份的。
连接到root备份一个或多个PDB:
  1. 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的共有用户(common user)连接到root。
  2. 在RMAN提示符里发送BACKUP PLUGGABLE DATABASE命令。

 

连接到PDB备份单个PDB:

  1. 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的本地用户(local user)连接到PDB。
  2. 在RMAN提示符里发送BACKUP DATABASE命令。
备份在PDB中的表空间和数据文件
因为表空间在不同的PDB中可以有相同的名字,为了消除歧义,你必须直接的连接到PDB来备份一个或多个表空间。相比之下,因为数据文件的序号(numbers)和路径(paths)在CDB中是独一无二的,你可以连接到root或者PDB来备份PDB的数据文件。如果你连接到root,你可以使用一条命令来备份多个PDB的数据文件。如果你连接到PDB,你只能可以备份这个PDB的数据文件。
备份PDB中的表空间:
  1. 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的本地用户(local user)连接到PDB。
  2. 发送 BACKUP TABLESPACE命令,详细描述参看 “Backing Up Tablespaces and Data Files with RMAN”

备份PDB中的数据文件:
  1. 执行下列操作之一:
  • 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的共有用户(common user)连接到root。
  • 启动RMAN并且使用有SYSBACKUP或SYSDBA权限的本地用户(local user)连接到PDB。
 2. 发送BACKUP DATAFILE命令。