更新时间:2024-10-10 GMT+08:00

Oracle为源

检查项

描述

操作建议

DBMS_METADATA权限

检查用户是否具有从Oracle数据库字典中检索元数据的权限,该权限用来获取Schema对象的DDL。

赋权语句:

GRANT SELECT_CATALOG_ROLE TO <user>;

GRANT SELECT ANY DICTIONARY TO <user>;

GRANT DBA TO <user>;

若已授予角色,但是预检查未通过,请通过下述语句检查授予角色是否为用户的DEFAULT_ROLE。

SELECT GRANTED_ROLE, DEFAULT_ROLE FROM DBA_ROLE_PRIVS WHERE GRANTEE='<user>' AND GRANTED_ROLE IN ('SELECT_CATALOG_ROLE', 'DBA');

若查询结果为NO,则需要执行以下语句赋权:

ALTER USER <user> DEFAULT ROLE SELECT_CATALOG_ROLE;

ALTER USER <user> DEFAULT ROLE DBA;

动态视图权限

检查用户对各种动态性能视图的访问权限,该权限用来获取数据库基础信息。

赋予DBA权限即可。

DDL对象数量检查

检查该用户是否至少有一个Schema对象能访问并且存在DDL需要评估。

用户至少需要能够访问一个存在DDL的Schema对象,否则无法创建评估任务。注意:Oracle系统Schema中的对象不会被采集。

DBMS_METADATA SQL格式化参数设置

检查用户是否可以执行DBMS_METADATA的SQL格式化命令,如果检查结果为警告,评估项目可以创建成功,但是采集出的sql格式可能存在问题,导致评估和转换失败。

请检查是否可以执行DBMS_METADATA.SET_TRANSFORM_PARAM(dbms_metadata.SESSION_TRANSFORM, \'CONSTRAINTS_AS_ALTER\', false) 和 DBMS_METADATA.SET_TRANSFORM_PARAM(dbms_metadata.SESSION_TRANSFORM, \'SQLTERMINATOR\', true)语句。