DDL配置

1. 创建用户来存放OGG DDL 对象,这个一般就是我们创建的OGG用户。用户名不区分大小写。

2. 对OGG用户授权:
GRANT EXECUTE ON utl_file TO schema;

3. 创建OGG用户的表空间,在OGG 12c之前可以使用users表空间,但12c之后必须创建独立的表空间,不能和其他用户共享表空间。


4. 设置表空间的自动扩展。


5. 该步骤可选,编辑OGG 根目录下的params.sql脚本,修改ddl_fire_error_in_trigger参数为true。


6. 创建GLOBALS 文件(如果存在就之前编辑)
EDIT PARAMS ./GLOBALS

注意,这里必须加.,表示在OGG的根目录下,该文件没有扩展名。


7. 在GLOBALS 文件中指定DDL 用户名。
GGSCHEMA schema_name


8. 修改OGG 对象的用户名(可选操作)。
OGG的对象都有默认的名称。如果不想使用默认值,必须在安装之前就修改,否则就需要停止DDL 操作,然后重建这些对象。 
建议使用默认值。这样方便维护。


9. 使用trigger-based DDL能使用invisible index,编辑params.sql脚本,修改如下:
define allow_invisible_index_keys = 'TRUE' 


10. 保存并关闭GLOBALS和params.sql 文件。


11. 进入OGG的根目录。


12. 退出所有的Oracle session,包括SQL*Plus。


13. 用SYSDBA 连接SQL*Plus.用SYS用户来安装DDL trigger。


14. 运行marker_setup.sql脚本,需要输入OGG的用户名,然后按回车。 该脚本会安装DDL marker system。
@marker_setup.sql


15. 运行ddl_setup.sql 脚本。同样会提示输入OGG的用户名。


注意:如果这里OGG 用户对应的表空间是共享的表空间,那么该脚本会失败。 
@ddl_setup.sql




16. 运行role_setup.sql 脚本。 会提示输入OGG的用户名。 该脚本会drop 并创建DDL 同步需要的role。
@role_setup.sql




17. 将上一步创建的role 赋给OGG Extract 用户。 如果有多个用户,就需要执行多次。
GRANT GGS_GGSUSER_ROLE TO ggs;
Grant succeeded.




18. 运行ddl_enable.sql 脚本来启用DDL 触发器。
@ddl_enable.sql


为了提高DDL 触发器的性能,执行ddl_pin脚本,脚本在执行的时候需要添加OGG用户名。
@ddl_pin DDL_user

引自Dave的文档;


执行DDL出现报错:
1、@/oracle/oggrep/marker_setup.sql特别慢
将路径切换到/oracle/oggrep/下,在执行@marker_setup.sql
2、@ddl_setup.sql报错ORA-00942: table or view does not exist;权限不全,重新赋权限
SQL> grant connect,resource to ggs_owner;
SQL> grant select any dictionary, select any table to ggs_owner;
SQL> grant create table to ggs_owner;
SQL> grant flashback any table to ggs_owner;
SQL> grant execute on dbms_flashback to ggs_owner;
SQL> grant execute on utl_file to ggs_owner;
再次执行,成功
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值