全部产品

采集工具

更新时间:2017-08-30 17:56:46   分享:   

本文档介绍如何使用采集工具,采集现有 Oracle 数据库信息,现已支持 Oracle 9i、 Oracle 10g、 Oracle 11g 版本。(如果采集中遇到任何问题请提交工单,工单中请附上同级目录 logs 下的日志文件!)

运行环境:网络上只需可连接到 Oracle 数据库的 Linux 或 Windows 系统,无需安装在数据库同物理机上。

操作步骤

  1. 创建临时账号,并配置以下权限(如果用户已有包含下面权限的账号,可直接使用,请忽略此步骤)。

    说明:以下权限用于连接 Oracle 数据库系统,收集相关信息并将信息数据脱敏、去重导出。

    1. create user eoa_user identified by "eoaPASSW0RD" default tablespace users; -- 创建采集用户 eoa_user, 并设置密码为 eoaPASSW0RD
    2. grant connect,resource,select_catalog_role,select any dictionary to eoa_user; -- 为 eoa_user 用户赋予查询权限
    3. grant execute on DBMS_LOGMNR to eoa_user; -- 为 eoa_user 用户赋予执行 DBMS_LOGMNR 权限 (版本为 10g 的数据库需要先执行: CREATE OR REPLACE PUBLIC SYNONYM dbms_logmnr FOR sys.dbms_logmnr)
    4. grant execute on dbms_metadata to eoa_user; -- 为 eoa_user 用户赋予执行 DBMS_METADATA 权限,查询数据对象 DDL 语句
    5. grant select any transaction to eoa_user; -- 为 eoa_user 用户赋予查询事务权限
    6. alter user eoa_user quota unlimited on users; -- 为 eoa_user 对象赋予表空间权限,采集工具在数据收集过程中会临时使用部分表空间的空间,采集完毕后释放
  2. 解压下载的采集工具包,并授权包里的启动脚本执行权限。

    1. chmod 750 onekeyCollect.sh
  3. 启动采集命令(注意最后事务处理比较慢,大概在90%以后),分为单次性采集与周期性采集。其中,单次性采集只采集一次全量数据;周期性采集持续增量采集SQL相关数据,直到执行取消命令( ctrl + c )或导出命令(步骤4)。

    单次性采集:

    1. sh onekeyCollect.sh -h<ip> -u<username> -p<password> -d<service_name|sid>

    周期性采集:

    1. sh asynCollect.sh -h<ip> -u<username> -p<password> -d<service_name|sid>
  4. 启动导出采集结果,终端提示用户已生成数据包,并显示包路径(周期性采集最好采集一周以上)。

    单次性采集:不需要执行命令,采集完成后自动导出。

    周期性采集:

    1. sh asynExport.sh -h<ip> -u<username> -p<password> -d<service_name|sid>
  5. (如果创建了临时账号)清除临时账号。

    1. drop user eoa_user cascade;
本文导读目录
本文导读目录
以上内容是否对您有帮助?