emcli command-line interface可以执行几乎所有EMCC控制台界面的操作。之前工作中,在目标端服务器部署agent时,通过控制台图形界面进行配置目标端自动搜索时,偶尔会遇见无法搜索发现某些目标类型的情况。例如目标服务器上面存在oracle instance以及listener,配置自动搜索后无法发现此类型的目标,并且排查失败原因比较耗时。此时就需要通过emcli命令行接口登录OMS去执行添加操作。这里介绍的是命令行模式下的emcli的一些操作,此外还有交互脚本模式这里不做介绍。

1.环境要求

■ Enterprise Manager 12c Cloud Control framework
■ Sun Java JRE version 1.6.0_43 or greater
■ Workstation running Solaris, Linux, HPUX, Tru64, AIX, or Windows with NTFS

2.下载emcli,下载地址如下

https://xx.xx.xx.xx:7799/em/public_lib_download/emcli/kit/emclikit.jar ,ip为oms的服务器地址

3.安装jdk1.8,设置JAVA_HOME

[oracle@rptdb ~]$ tar -xvf jdk-8u231-linux-x64.tar.gz
[oracle@rptdb bin]$ /home/oracle/jdk1.8.0_231/bin/java -version
java version "1.8.0_231"
Java(TM) SE Runtime Environment (build 1.8.0_231-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)
[oracle@rptdb ~]$ export JAVA_HOME=/home/oracle/jdk1.8.0_231
[oracle@rptdb ~]$ env | grep JAVA_HOME
JAVA_HOME=/home/oracle/jdk1.8.0_231

4.创建安装目录,执行安装

[oracle@rptdb ~]$ mkdir emcli
[oracle@rptdb ~]$ $JAVA_HOME/bin/java -jar emclikit.jar -install_dir=/home/oracle/emcli
Oracle Enterprise Manager 12c Release 5.
Copyright (c) 2012, 2015 Oracle Corporation.  All rights reserved.
EM CLI client-side install completed successfully.
Execute "emcli help setup" from the EM CLI home (the directory where you have installed EM CLI) for further instructions.

5.使用emcli,登录oms

在非oms服务器本地上使用emcli登录oms,需要先进行setup配置。

–查看相关语法:

./emcli help setup
./emcli help sync

–执行初始化配置:

[oracle@rptdb emcli]$ ./emcli setup -url=http://10.10.201.152:7788/em -username="sysman" -dir="/home/oracle/emcli" -verb_jars_dir="/home/oracle/emcli" -trustall -autologin
Oracle Enterprise Manager 12c Release 5.
Copyright (c) 1996, 2015 Oracle Corporation and/or its affiliates. All rights reserved.
Enter password
Emcli setup successful

   注:-autologin参数的作用是,如果登录超时,emcli会自动进行登录。默认时noautologin模式,emcli超过45min没用执行操作,会超时,需要重新登录。

–执行同步操作:

[oracle@rptdb emcli]$./emcli sync
Synchronized successfully
[oracle@rptdb emcli]$

–查看状态:

[oracle@rptdb emcli]$ ./emcli status
Oracle Enterprise Manager 12c Release 5 EM CLI.
Copyright (c) 1996, 2015 Oracle Corporation and/or its affiliates. All rights reserved.
Instance Home          : /home/oracle/emcli/.emcli
Verb Jars Home         : /home/oracle/emcli/.emcli
Status                 : Configured
EM CLI Home            : /home/oracle/emcli/.
EM CLI Version         : 12.1.0.5.0
Java Home              : /home/oracle/jdk1.8.0_231/jre
Java Version           : 1.8.0_231
Log file               : /home/oracle/emcli/.emcli/.emcli.log
EM URL                 : http://10.10.201.152:7788/em
EM user                : sysman
Auto login             : true
Trust all certificates : true

6.添加,查看,删除主机上的目标

先在目标端主机上部署agent,这里不做介绍。

6.1.add_target语法如下:

emcli add_target
-name=“name”
-type=“type”
-host=“hostname”
[-properties=“pname1:pval1;pname2:pval2;…”]
[-separator=properties=“sep_string”]
[-subseparator=properties=“subsep_string”]
[-credentials=“userpropname:username;pwdpropname:password;…”]
[-input_file=“parameter_tag:file_path”]
[-display_name=“display_name”]
[-groups=“groupname1:grouptype1;groupname2:grouptype2;…”]
[-timezone_region=“gmt_offset”]
[-monitor_mode=“monitor_mode”]
[-instances=“rac_database_instance_target_name1:target_type1;…”]
[-force=true|false]
[-timeout=“time_in_seconds”]

–添加l类型为oracle数据库目标

[oracle@rptdb emcli]$ ./emcli add_target -name="ekpdev" -type="oracle_database" -host="ekptest" -prop="SID:ekpdev;MachineName:ekptest" -prop="OracleHome:/u01/app/oracle/product/11.2.0/db_1;Port:1521" -credentials="UserName:dbsnmp;password:oracle;Role:normal"
Target "ekpdev:oracle_database" added successfully

–添加类型为listener的目标的方法:

[oracle@rptdb emcli]$ ./emcli add_target -name="LISTENER_ekpdev" -type="oracle_listener" -host="ekptest" -prop="Machine:ekptest;OracleHome:/u01/app/oracle/product/11.2.0/db_1;ListenerOraDir:/u01/app/oracle/product/11.2.0/db_1/network/admin;LsnrName:LISTENER;Port:1521"
Target "LISTENER_ekpdev:oracle_listener" added successfully

6.2.获取目标状态信息
语法如下:

emcli get_targets
[-targets="[name1:]type1;[name2:]type2;…"]
[-alerts]
[-noheader]
[-script | -format=
[name:<pretty|script|csv>];
[column_separator:“column_sep_string”];
[row_separator:“row_sep_string”];
]
[-limit_rows=“maximum_targets_to_be_retrieved”]
[-config_search=“configuration_search_UI_name”]
[-unmanaged]
[-properties]
[-separator_properties=“properties_sep_string”]
[-subseparator_properties=“properties_subsep_string”]

[oracle@rptdb emcli]$ ./emcli get_targets -targets="ekpdev:oracle_database;"
Status  Status           Target Type           Target Name
ID
1       Up               oracle_database       ekpdev
[oracle@rptdb emcli]$ ./emcli get_targets -targets="LISTENER_ekpdev:oracle_listener;"
Status  Status           Target Type           Target Name
ID
1       Up               oracle_listener       LISTENER_ekpdev

登录emcc控制台,可以看见目标添加成功:

6.3删除目标
语法如下:

emcli delete_target
-name=
-type=
[-delete_monitored_targets]
[-async]
[-delete_members]

[oracle@rptdb emcli]$ ./emcli delete_target –type = "oracle_database" –name="ekpdev"
Target " ekpdev:oracle_database" deleted successfully
[oracle@rptdb emcli]$ ./emcli delete_target  -name="LISTENER_ekpdev" -type="oracle_listener"
Target "LISTENER_ekpdev:oracle_listener" deleted successfully

6.7 转移目标到新的target

当一个目标需要迁移到别的主机上时,常规的操作是先删除当前的目标,然后在新的目标端添加该目标。或者当前目标主机上在别的路径新部署了一个agent,需要删除老的agent的安装目录二进制文件,需要删除后重新添加目标。这样就会丢失该目标历史的相关度量信息。此时可以使用relocate targets,保证不丢失该目标历史的度量信息。

语法如下:
emcli relocate_targets
-src_agent=<source_agent_target_name>
-dest_agent=<dest_agent_target_name>
-target_name=<name_of_target_to_be_relocated>
-target_type=<type_of_target_to_be_relocated>
-copy_from_src
-changed_param=:
-input_file:dupTargets=<targets_contents>
-input_file:moveTargets=“complete path to file containing targets with
overridden property values”
-copy_from_src [-changed_param=:]*
[-ignoreRelatedTargets]
[-noHostColumnUpdate]
[-ignoreTimeSkew=yes]
[-changed_param=MachineName:mmmm ]
[-force=yes]

例如,我需要把crmmysql01主机上一个mysql迁移到一台新的服务器上,并进行监控。新的服务器prdmysql01安装好agent,mysql迁移完成后,就可以执行下面命令进行relocate target:

emcli relocate_targets
-src_agent="crmmysql01:3872"
-dest_agent="
prdmysql01
:3872"
-target_name="crmmysql01"
-target_type="mysql"
-copy_from_src

7.使用emcli管理agent

可以通过emcli远程管理,启停所有目标端服务器上的agent

7.1列出类型为agent的目标:

[oracle@rptdb emcli]$ ./emcli get_targets -targets="oracle_emd"
Status  Status           Target Type           Target Name
ID
1       Up               oracle_emd            crmmysql03:3872
1       Up               oracle_emd            ekptest:3872
1       Up               oracle_emd            EKPDB01:3872
1       Up               oracle_emd            zysf:3872
1       Up               oracle_emd            oms.oracle.com:3872
1       Up               oracle_emd            ngpdb02:3872
1       Up               oracle_emd            ngpdb01:3872
1       Up               oracle_emd            crmmysql02:3872
1       Up               oracle_emd            ngppdg:3872
1       Up               oracle_emd            rptdb:3872
1       Up               oracle_emd            crmmysql01:3872
1       Up               oracle_emd            crmngpstd:3872

7.2关闭agent

[oracle@rptdb emcli]$ ./emcli stop_agent -agent=ekptest:3872 -host_username=oracle
Host User password:
The Shut Down operation is in progress for the Agent: ekptest:3872
The Agent "ekptest:3872" has been stopped successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Stopping agent ..... stopped.

7.3启动agent

[oracle@rptdb emcli]$ ./emcli start_agent -agent=ekptest:3872 -host_username=oracle
Host User password:
The Start Up operation is in progress for the Agent: ekptest:3872
The Agent "ekptest:3872" has been started successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Starting agent ................ started.

–启动后查看agent状态

[oracle@rptdb emcli]$ ./emcli get_targets -targets="ekptest:3872:oracle_emd"
Status  Status           Target Type           Target Name
ID
1       Up               oracle_emd            ekptest:3872

7.4重启agent

[oracle@rptdb emcli]$ ./emcli restart_agent -agent=ekptest:3872 -host_username=oracle
Host User password:
The Restart operation is in progress for the Agent: ekptest:3872
The Agent "ekptest:3872" has been restarted successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Stopping agent ..... stopped.Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Starting agent ................ started.

7.5查看agent的配置信息

[oracle@rptdb emcli]$ ./emcli get_agent_properties -agent_name=ekptest:3872
Name                            Value
agentVersion                    12.1.0.5.0
agentTZRegion                   Asia/Shanghai
emdRoot                         /home/oracle/agent/core/12.1.0.5.0
agentStateDir                   /home/oracle/agent/agent_inst
perlBin                         /home/oracle/agent/core/12.1.0.5.0/perl/bin
scriptsDir                      /home/oracle/agent/core/12.1.0.5.0/sysman/admin/scripts
EMD_URL                         https://ekptest:3872/emd/main/
localListeningHost
localListeningPort
REPOSITORY_URL                  https://oms.oracle.com:4903/empbs/upload
externalProxyPort
EMAGENT_PERL_TRACE_LEVEL        INFO
UploadInterval                  15
Total Properties : 13

7.6 删除agent

–停止agent

[oracle@rptdb emcli]$ ./emcli stop_agent -agent=crmmysql01:3872 -host_username=crmuser
Host User password:
The Shut Down operation is in progress for the Agent: crmmysql01:3872
The Agent "crmmysql01:3872" has been stopped successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Stopping agent ..... stopped.
[oracle@rptdb emcli]$ ./emcli stop_agent -agent=crmmysql02:3872 -host_username=crmuser
Host User password:
The Shut Down operation is in progress for the Agent: crmmysql02:3872
The Agent "crmmysql02:3872" has been stopped successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Stopping agent ..... stopped.
[oracle@rptdb emcli]$ ./emcli stop_agent -agent=crmmysql03:3872 -host_username=crmuser
Host User password:
The Shut Down operation is in progress for the Agent: crmmysql03:3872
The Agent "crmmysql03:3872" has been stopped successfully.
---------------------
Operation Output
---------------------
Oracle Enterprise Manager Cloud Control 12c Release 5
Copyright (c) 1996, 2015 Oracle Corporation.  All rights reserved.Stopping agent ..... stopped.

–删除主机上agent和监控的target

[oracle@rptdb emcli]$ ./emcli delete_target -type="oracle_emd" -name="crmmysql01:3872" -delete_monitored_targets -async;
Target "crmmysql01:3872:oracle_emd" deleted successfully
[oracle@rptdb emcli]$ ./emcli delete_target -type="oracle_emd" -name="crmmysql02:3872" -delete_monitored_targets -async;
Target "crmmysql02:3872:oracle_emd" deleted successfully
[oracle@rptdb emcli]$ ./emcli delete_target -type="oracle_emd" -name="crmmysql03:3872" -delete_monitored_targets -async;
Target "crmmysql03:3872:oracle_emd" deleted successfully

   总结:emcli可以实现几乎EMCC控制台图形界面的所有操作,这里只列举一些简单的常用操作命令。具体可以执行./emcli help查看相关命令并结合官方文档去查看对应的操作。

Oracle EMCC 12c emcli命令行工具安装以及使用介绍相关推荐

  1. STM32学习笔记二:命令行工具安装

    一目了然 1 简述 2 Windows Terminal 安装 3 PowerShell7 安装 4 Cmake安装 5 ninja安装 1 简述 熟悉 Linux 系统的小伙伴都清楚 Termina ...

  2. svn命令行工具安装使用(windows)

    从http://subversion.tigris.org获取subversion for windows的版本,安装之后就有了svn.exe这个基于命令行的客户端工具. 安装装程序会自动把svn.e ...

  3. 报错:此操作系统版本不支持此选项。管理员应使用“打开或关闭 Windows 功能”对话框、“服务器管理器”管理工具或 dism.exe 命令行工具安装/卸载包含 IIS8 的 ASP.NET 4.5

    现象再现: windows server 服务器的iis 应用程序池没有ASP.NET 4.5, 过程再现: 根据资料提示重新注册ASPNET_IIS.exe -i 直接提示: C:\WINDOWS\ ...

  4. 以太坊web3j命令行工具安装

    命令安装: 执行下方的命令即可 curl -L get.web3j.io | sh && source ~/.web3j/source.sh 网站下载安装: 在https://gith ...

  5. oracle命令格式,OraCmD(Oracle命令行工具) V3.1 官方版

    OraCmD是一款专业强大的Oracle导入导出工具,它可以快速的帮助用户这没有进行安装Oracle客户端的情况下,进行数据的导出.导入,并且使用非常的简单,这您的命令工具里面即可快速的进行执行SQL ...

  6. SVN_Windows安装Subversion(svn 命令行工具)教程

    命令行工具下载地址:https://www.visualsvn.com/files/Apache-Subversion-1.10.3.zip 下载后把压缩包解压,得到 bin 和 Licenses 两 ...

  7. 命令行工具集合busybox编译

    1.busyBox源码下载:https://busybox.net/downloads/ 2.解压源码后,进行make menuconfig配置编译选项.开启静态编译Build Static bina ...

  8. ownCloud/Nextcloud OCC命令行工具详解

    OCC命令行工具详解 ownCloud/Nextcloud OCC命令行工具详解(1) ownCloud/Nextcloud OCC命令行工具详解(2) ownCloud/Nextcloud OCC命 ...

  9. php 开启命令模式,如何启用PhpStorm中的命令行工具

    本篇文章主要给大家介绍如何使用phpstorm中的命令行工具. PhpStorm下载地址: PhpStorm使用命令行工具,我们可以直接从IDE调用命令!在我们使用任何命令行工具之前,我们必须在设置中 ...

  10. [总结]FFMPEG命令行工具之ffprobe详解

    目录 0 前言 1 语法 Synopsis 2  描述 Description 3 选项 Options 3.1 流指定器 Stream specifiers 3.2 通用选项 Generic opt ...

最新文章

  1. “23岁本科生发14篇SCI”,文章被学校官网悄悄删了,你怎么看?
  2. 文章17周项目2--通过基准线结合(三个数字排序(指针参数))
  3. python爬虫从入门到精通-Python爬虫从入门到精通视频(2018新版)
  4. 重新ICP,在没有Matlab的日子里
  5. jsp中设置自动换行_办公技巧—Word中如何设置自动生成序号
  6. 最详细的YOLOv3论文笔记
  7. opencv源码学习: getStructuringElement函数;
  8. 李彦宏告诫年轻人:向前看两年
  9. 同一台电脑管理多个`SSH KEY`
  10. java枚举菜鸟教程_Java教程--枚举类型使用方法详细讲解
  11. 计算机教师辞职,(多篇)教师辞职报告汇总八篇
  12. Java中关于二叉树详解
  13. spriteKit 笔记三 —— Drog 精灵
  14. 六年级计算机课件,六年级信息技术上册课件.ppt
  15. 杂七杂八(4): win10设置启动时创建系统还原点
  16. flink任务优化总结
  17. JS计算今天在本月第几周
  18. MATLAB语音信号处理
  19. 基于Javaweb的问卷调查系统
  20. 湖北省2019.3全国计算机等级考试,湖北2019年3月全国计算机等级考试报名系统

热门文章

  1. 170923_Spring Cloud 微服务实战(翟永超著) 读书笔记(一)_什么是Spring Cloud?
  2. 十大排序算法Java
  3. iOS一代码搞定定位
  4. java实现车牌头像识别_LPR java车牌图像处理 输入一个车牌照片(不是整车的照片) - 下载 - 搜珍网...
  5. 车牌拍照系统上传服务器,车牌识别系统实现过程及摄像机要求
  6. linux虚拟机安装教程
  7. Android animation详解
  8. 关于安装msi的安装问题:Could not write value to key \ * \ * \ Verify that you have sufficent access to that
  9. AD20中PCB设计流程
  10. 程序员是否要考PMP认证?看这篇就够了