问题描述
我们有100版本11/12c的Oracle服务器和连接到它们的Oracle Cloud Control 13c。
我被要求准备脚本自动执行 “CIS Oracle 12c基准测试” 脚本。其中一些将通过更改参数来 “硬化” 数据库,而一些将警告不合规,例如 #1.3-删除默认用户:
但是我们有与用户 “HR” 一起工作的SAP应用程序。所以我们必须把SAP DB服务器放在排除列表中。
我们决定使用云控制13c (CC13c) 作业机制来完成此任务。
我将在CC13c服务器中创建 “控制配置表”,它将控制 “排除列表”。
我遇到了访问 “控制配置表” 和目标数据库服务器的问题。
每个作业执行都应该从检查开始,如果特定的数据库服务器在当前段落的 “排除列表” 中或不在。
有什么问题吗?让我们使用DB_link!-我说,但答案是否定的!不允许在目标数据库中创建任何数据库对象。
我正在考虑:
1) 在每个目标服务器中为本地/共享位置 “一次” 创建 目录
2) 从CC13c导出 “控制配置表” 到CSV文件
3) 复制到每个目标/共享位置
4) 使用UTL_FILE将CSV文件中的数据加载到内存中
任何建议将不胜感激!
我被要求准备脚本自动执行 “CIS Oracle 12c基准测试” 脚本。其中一些将通过更改参数来 “硬化” 数据库,而一些将警告不合规,例如 #1.3-删除默认用户:
SELECT USERNAME
FROM ALL_USERS
WHERE USERNAME IN ('BI','HR','IX','OE','PM','SCOTT','SH'); 但是我们有与用户 “HR” 一起工作的SAP应用程序。所以我们必须把SAP DB服务器放在排除列表中。
我们决定使用云控制13c (CC13c) 作业机制来完成此任务。
我将在CC13c服务器中创建 “控制配置表”,它将控制 “排除列表”。
我遇到了访问 “控制配置表” 和目标数据库服务器的问题。
每个作业执行都应该从检查开始,如果特定的数据库服务器在当前段落的 “排除列表” 中或不在。
有什么问题吗?让我们使用DB_link!-我说,但答案是否定的!不允许在目标数据库中创建任何数据库对象。
我正在考虑:
1) 在每个目标服务器中为本地/共享位置 “一次” 创建
2) 从CC13c导出 “控制配置表” 到CSV文件
3) 复制到每个目标/共享位置
4) 使用UTL_FILE将CSV文件中的数据加载到内存中
任何建议将不胜感激!
专家解答
1到3听起来不错。但是就易于加载而言,我只将配置作为xml文件,然后您可以直接使用SQL访问它,例如
config.xml ==========SQL> with config as 2 ( select xmltype(bfilename('TEMP','confg.xml'), nls_charset_id('UTF8')) xml_data from dual ) 3 SELECT xt.* 4 FROM config x, 5 XMLTABLE('/servers/server' 6 PASSING x.xml_data 7 COLUMNS 8 "HOSTID" VARCHAR2(4) PATH 'hostid', 9 "HOSTNAME" VARCHAR2(10) PATH 'hostname', 10 "OS" VARCHAR2(9) PATH 'os' 11 ) xt; HOST HOSTNAME OS ---- ---------- --------- 7369 host1 WINDOWS 7499 host2 SOLARIS 7521 host3 LINUX 7369 host1 WINDOWS 7499 host2 SOLARIS 7521 host3 LINUX
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




