ADAM提供在线采集和采集器采集两种数据库采集方式,您可以根据能否从云上去访问源库自行选择采集方式。
采集方式介绍
在线采集:将源数据库的网络打通,并在源数据库白名单中添加ADAM服务器,确保ADAM服务器可以直接通过在线采集方式进行信息收集。更多信息,请参见在线采集。
有公网IP:源数据库具有公网IP,可以通过外网访问。
无公网IP:通过数据库网关DG连接。数据库网关DG(Database Gateway)是一种支持私网数据库远程访问的数据库连接服务。通过数据库网关DG,您可以无需开通公网地址访问并管理本地IDC或其他云厂商的数据库。详情请参见什么是数据库网关。
说明目前ADAM支持华北2(北京)、华北3(张家口)、华南1(深圳)、华东1(杭州)、华东2(上海)地域的DG实例。
下载采集器:如果源库不能对外使用公网,或者无法从云上去访问,可以通过ADAM数据采集器采集数据库。更多信息,请参见采集器采集。
在线采集
登录数据管理DMS 5.0。
在顶部菜单栏中,选择集成与开发 > 异构数据库迁移(ADAM) > 数据库评估。
在数据库采集页签下,单击在线数据库采集。
单击创建采集任务,开始创建采集任务。
登录源数据库配置采集账号,赋予相应的权限。
Oracle 10g/11g/12c版本(非CDB模式,创建LOCAL USER类型用户)
创建采集用户eoa_user, 并设置密码为eoaPASSW0RD。
create user eoa_user identified by eoaPASSW0RD default tablespace users;
查询权限。
grant connect,select_catalog_role to eoa_user;
Oracle 12c版本(CDB 模式,需要连接到CDB,创建COMMON USER类型用户)
create user c##eoa_user identified by "eoaPASSW0RD" default tablespace users; grant connect,select_catalog_role to c##eoa_user container=all; alter user c##eoa_user set container_data=all container=current;
Teradate 13 14 15版本
需要使用具有访问DBC权限的账号。
grant select,show on dbc to (username)
DB2 LUW
需要db2look相关权限,采集账号授予DBA权限执行。
完成源数据库账号配置后,单击下一步进入创建采集任务面板,并配置如下信息。
配置项
说明
采集任务名
自定义采集任务名称。
源库类型
选择如下任一源库类型:
ORACLE
TERADATA
DB2_LUW
源库档案
根据源库类型,选择目标数据库档案。新建数据库档案的操作,请参见管理数据库档案。
指定schema列表
指定表列表。多个表名之间使用英文逗号
,
分隔。排除schema列表
排除表列表。多个表名之间使用英文逗号
,
分隔。是否采集SQL
选择是否采集SQL。
配置完成后,单击链接测试,测试通过后,单击启动采集。
待采集任务完成后,勾选采集任务,单击下一步创建画像,进入生成数据库画像流程。
采集器采集
登录数据管理DMS 5.0。
在顶部菜单栏中,选择集成与开发 > 异构数据库迁移(ADAM) > 数据库评估。
在数据库采集页签下,单击下载采集器。
根据目标安装ADAM客户端设备的操作系统,选择下载对应版本的ADAM客户端到本地并解压缩。
说明建议不要在待采集的数据库设备上运行。目标安装ADAM客户端设备最低应满足以下配置要求:
网络:能够连接到待采集的源数据库。
CPU:2 core。
内存:8GB。
硬盘:100GB 空余。
登录源数据库配置采集账号,赋予相应的权限。
使用具有SYSDBA权限的账号创建临时账号,并配置以下权限。
说明如果您已有包含下面权限的账号,请忽略此步骤,直接使用。
Oracle 10g/11g/12c版本(非CDB模式,创建LOCAL USER类型用户)
创建采集用户eoa_user, 并设置密码为eoaPASSW0RD。
create user eoa_user identified by eoaPASSW0RD default tablespace users;
查询权限。
grant connect,select_catalog_role to eoa_user;
Oracle 12c版本(CDB 模式,需要连接到CDB,创建COMMON USER类型用户)
create user c##eoa_user identified by "eoaPASSW0RD" default tablespace users; grant connect,select_catalog_role to c##eoa_user container=all; alter user c##eoa_user set container_data=all container=current;
Teradate 13 14 15版本
需要使用具有访问DBC权限的账号。
grant select,show on dbc to (username)
DB2 LUW
需要db2look相关权限,采集账号授予DBA权限执行。
采集数据库结构性数据,用于生成可行性报告及兼容报告。
执行采集命令。
说明.bat
是Windows环境下命令,.sh
是Linux环境下命令。Oracle 10g
collect_10g[.sh|.bat] -h -u -p -d <service_name>
Oracle 11g
Oracle 11g R1
collect_11gR1[.sh|.bat] -h -u -p -d <service_name>
Oracle 11g R2
collect_11gR2[.sh|.bat] -h -u -p -d <service_name>
Oracle 12c 18c 19c
说明针对Oracle 12c的某个pdb进行采集时,请参考Oracle 11g采集操作说明,使用
collect_12c
脚本进行采集操作。collect_12c[.sh|.bat] –h <host> -u <username> -p <password> -P <port> -d <service_name> -s <sid>Teradate 13 14 15
collect_td[.sh] -h ip -p password -u username
Db2_LUW
collect_db2_luw[.sh] -h ip -u username -p password -d databasename -P port
-h: 采集数据库的IP地址。 -u: 采集用户名,此处示例用户为eoa_user。 -p: 采集用户eoa_user 密码eoaPASSW0RD。 -P: 采集数据库的端口,如:1521。 -d: 采集数据库的服务名, 12c是指特定PDB的服务名。 -s: 采集数据库实例名。
导出采集结果。
采集完成后,会提示用户生成数据包,并提示数据包路径。日志文件如下:
[***] ****************************************************************** [***] * Collect Successfully! [***] * [***] * Complete the file packaging, the package result path is: [***] * ~rainmeter/out/data.zip ******************************************************************
可选:迁移结束后,清除临时账号。
使用具有SYSDBA权限的账号通过终端连接数据库,并执行下面 SQL。
Oracle 10g 11g 12c 18c 19c(非CDB模式)
drop user eoa_user cascade;
Oracle 12c 18c 19c(CDB 模式)
drop user c##eoa_user cascade;
建议在业务低峰期采集数据库数据,通常业务低峰期采集只需要较短时间就可以完成采集。
采集器对CPU要求不高,如果涉及到数据库对象的getddl操作,采集开始时CPU负载会有一些增加,负载增加量取决于源数据库规格和当前负载。
采集器对源数据库的内存占用很少,可以不考虑。