加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle 12C EM Express配置及问题处理

发布时间:2020-12-12 16:38:25 所属栏目:百科 来源:网络整理
导读:Oracle的EM是EnterpriseManager的缩写,可翻译为Oracle数据库的企业管理器。在Oracle10g以后,可以通过oracle EM使用Web界面来监控,管理,维护Oracle数据库。DBA可以从任何可以访问web应用的位置通过OEM来对数据库行各种管理和监控。 在11g中,OEM分为Grid

Oracle的EM是EnterpriseManager的缩写,可翻译为Oracle数据库的企业管理器。在Oracle10g以后,可以通过oracle EM使用Web界面来监控,管理,维护Oracle数据库。DBA可以从任何可以访问web应用的位置通过OEM来对数据库行各种管理和监控。

在11g中,OEM分为Grid control和Database control,他们都可以用来做DB的管理。从DB管理的角度,二者最大的差别在于Grid可以监控和集中管理多个数据库,而database control只能管理监控一个数据库,不能用于监控多个数据库,它只在数据库上运行。

(Gridcontrol可以监控整个Oracle生态环境,它具有一个中心存储仓库,用于收集有关多个计算机上的多个目标的数据,并且提供一个界面来显示所有已发现目标的共同信息。)

关于EM Express

在12c中,12c数据库的管理可以通过使用cloud control或者Database Express来实现,12c不再支持database control。EM express是一个非常简化版本Database control,仅提供最基本的数据库管理和性能监控管理。例如如果你想做备份恢复,你只能通过cloud control(EMCC)来做,通过EM Express你可以view数据库的基本参数信息,存储信息,添加数据数据文件,表空间,用户管理等。

在EM express上没有中间件或者中间层,这样保证了它在oracle数据库server上的运行开销非常非常小。它是通过使用oracle的XDB server构建在oracle数据库内部的,具体参考oracle XDB的一些内容。

EM Express的配置

(一)自动配置

在dbca创建数据库的时,默认会选择配置EMX,如果你不想使用EMX,可以在这个时候去掉这个默认的选择。后面再想使用的话也可以手动去配置。EM Express不是安装的,我的理解,就像社区的光纤,已经拉到你家门外了,你可以选择不去使用它,这样你不拉线,不去营业厅申请开通就行。它不是一个独立安装卸载的东西,这点与之前的11g的Database control不同,关于EM Express的管理,也没有专门的命令行命令去控制它的关闭和开启。像之前的比喻,如果你不想使用你把线拉掉就好了。

dbca配置EM Express:dbca创建结束后会显示一个访问EM Express的URL。

(二)手动配置

手动配置在官方文档上有详细的说明,其实我们一般数据库都是使用1521端口,用不到文档上说明的情况,可以在DB中直接去执行命令配置就ok,下面我简单说下步骤,具体参见官方文档:

–Step1.Configure and start the Oracle Net Listener (the listener).
–Step2.init.ora(when the listener is running on a non standard port )
init.ora local_listener=inst1

where inst1 is a TNSNAMES entry defined in tnsnames.ora that points to the listener.

For example :tnsnames.ora
inst1= (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=service_name)(SERVER=DEDICATED)))

–Step3. Enable the TCP dispatcher by adding the following entry to the init.ora file for the database you want to manage using EM Express:
dispatchers="(PROTOCOL=TCP)(SERVICE=<sid>XDB)"

例如:dispatchers="(PROTOCOL=TCP)(SERVICE=ORCLXDB)"For example:

-Step4. Restart the database so that the changes made in the init.ora file take effect.
Configure 5500 for EM Express
netstat -aon|findstr "5500" --检查确定该端口没有被占用

SQL> show parameter dispatchers;

SQL> exec DBMS_XDB_CONFIG.SETHTTPSPORT(5500);

该操作会更改在oracle XML DB Repossitory中xdbconfig.xml中相关的https端口信息,关于http端口也可以类似设定。

(三)访问EM Express

--访问格式

https://database-hostname:portnumber/em

--查询EM Express的访问端口

SQL>SELECTdbms_xdb_config.gethttpsport FROM DUAL

例:https://mydbhost.example.com:5500/em/

When prompted for your username and password,log in as a user with DBA privilege(such as SYSTEM).
EM Express使用Shockwave Flash文件,所以浏览器必须安装flash插件,同时在你访问EM Express的时候监听必须是启动的。

特别注意:要访问的地址的操作系统防火墙是否关闭,或将访问端口添加到防火墙允许访问端口。

关于其访问有两个角色EM_EXPRESS_BASIC(view权限)和 EM_EXPRESS_ALL(all权限)
普通用户赋予以上角色后即可访问EM Express。

(四)关于CDB&PDB上的EM Exprss
Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB)。CDB全称为Container Database,中文翻译为数据库容器,PDB全称为Pluggable Database,即可插拔数据库。在ORACLE 12C之前,实例与数据库是一对一或多对一关系(RAC):即一个实例只能与一个数据库相关联,数据库可以被多个实例所加载。而实例与数据库不可能是一对多的关系。当进入ORACLE 12C后,实例与数据库可以是一对多的关系。下面是官方文档关于CDB与PDB的关系图。

12c中提出了关于CDB,PDB的概念,

在CDB上配置EMX与前面讲的手动配置EMX的过程是一样,每个continer(root或者pdb)需要配置一个不同端口。

我们采用下面的两种模型:

root:针对整个CDB的data和actions,是整个CDB或实例的一个代理。可以成为一个Container

PDB:针对单一某个pdb的data和actions。也可以成为container

我们会说为某个container配置EM Express,而不是某个CDB或者PDB。

Oracle企业管理器(EM)

1.企业管理器Enterprise Manager Database Control(Oracle 11g)
emctl status dbconsole
emctl start dbconsole
emctl stop dbconsole


使用浏览器连接到Database Control,注意打开防火墙端口,默认端口是1158。
https://hostname:port/em


2.企业管理器Enterprise Manager Database Express(Oracle 12c)
使用EM Express:
打开em:
exec dbms_xdb_config.sethttpsport(5500); -- https
exec dbms_xdb_config.sethttpport(5505); -- http


关闭em:
exec dbms_xdb_config.sethttpsport(0); -- https
exec dbms_xdb_config.sethttpport(0); -- http


查看em端口:
select dbms_xdb_config.gethttpsport from dual; -- https
select dbms_xdb_config.gethttpport from dual; -- http


使用浏览器连接到Database Express:
https://hostname:port/em


浏览器应该使用支持html5的高版本的浏览器,如Google Chrome,低版本IE,Firefox似乎不能连接。


3.手动配置Enterprise Manager Database Express端口(Oracle 12c)
如果用dbca创建数据库时没有选择或配置Enterprise Manager Database Express,则需要手动配置EM Express.
·注册监听器
如果监听器listener运行在非标准端口(1521),则初始化参数local_listener需注册正确的监听:
select value from v$parameter where name = 'local_listener'; -- LISTENER_SID,名称在tnsnames.ora中配置
alter system set local_listener=inst1;


tnsnames.ora:
inst1= (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1234))
(CONNECT_DATA=(SERVICE_NAME=service_name)(SERVER=DEDICATED)))


·配置dispatchers
修改初始化参数dispatchers
select value from v$parameter where name = 'dispatchers';
alter system set dispatchers='(PROTOCOL=TCP) (SERVICE=<sid>XDB)';
alter system set dispatchers='(PROTOCOL=TCP) (SERVICE=salesXDB)';


·设置EM Express访问端口
non-CDB:
exec dbms_xdb_config.sethttpsport(5500);


CDB:
alter session set container=CDB$ROOT;
exec dbms_xdb_config.sethttpsport(5501);


PDB:
alter session set container=PDB1;
exec dbms_xdb_config.sethttpsport(5502);

·确认端口是否已注册到监听器
$ lsnrctl status | grep -i 5500

·使用EM Express(non-CDB,CDB,PDB): https://database-hostname:portnumber/em/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读