Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

0

积分

0

好友

4

主题
1#
发表于 2012-12-3 16:29:46 | 查看: 3514| 回复: 1
A 、B两个数据库分别有info_table表: user1.info_table、user2.info_table
需求是:通过一个job定时校验user1.info_table与 user2.info_table是否一致,如果不一致则以user1.info_table为基准通过dblink将
user1.info_table的数据更新到user2.info_table .如:update/insert

问题:当从A库通过dblink 更新B库的表的时候,是否也会在A库上产生redo日志。
2#
发表于 2012-12-3 16:44:47

  1. SQL> select * from v$version;

  2. BANNER
  3. --------------------------------------------------------------------------------
  4. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
  5. PL/SQL Release 11.2.0.3.0 - Production
  6. CORE    11.2.0.3.0      Production
  7. TNS for 64-bit Windows: Version 11.2.0.3.0 - Production
  8. NLSRTL Version 11.2.0.3.0 - Production

  9. SQL> create database link to12c connect to c##maclean identified by oracle using 'cdb1.example.com';

  10. Database link created.

  11. SQL> select * from v$version@to12c;

  12. BANNER
  13. -------------------------------------------------------------------------
  14. Oracle Database 12c Enterprise Edition Release 12.1.0.0.2 - 64bit Beta
  15. PL/SQL Release 12.1.0.0.2 - Beta
  16. CORE    12.1.0.0.2      Beta
  17. TNS for Linux: Version 12.1.0.0.2 - Beta
  18. NLSRTL Version 12.1.0.0.2 - Beta


  19. select a.name,b.value
  20. from v$sysstat a , v$mystat b
  21. where
  22. a.statistic#=b.statistic#
  23. and (a.name  in ('redo size','redo entries'));




  24. NAME                                                    VALUE
  25. -------------------------------------------------- ----------
  26. redo entries                                               22
  27. redo size                                                6248

  28. SQL> update testredo@to12c set object_id=object_id+1;

  29. 89196 rows updated.

  30. SQL> select a.name,b.value
  31.   2  from v$sysstat a , v$mystat b
  32.   3  where
  33.   4  a.statistic#=b.statistic#
  34.   5  and (a.name  in ('redo size','redo entries'));

  35. NAME                                                    VALUE
  36. -------------------------------------------------- ----------
  37. redo entries                                               22
  38. redo size                                                6248

  39. SQL> commit;

  40. Commit complete.

  41. SQL> select a.name,b.value
  42.   2  from v$sysstat a , v$mystat b
  43.   3  where
  44.   4  a.statistic#=b.statistic#
  45.   5  and (a.name  in ('redo size','redo entries'));

  46. NAME                                                    VALUE
  47. -------------------------------------------------- ----------
  48. redo entries                                               23
  49. redo size                                                6456
复制代码
对于该类问题请自行 测试一次, 就以上测试 纯远程的DML remote dml在本地不产生redo, 当然commit还是要2边都产生 REDO

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-5-17 17:59 , Processed in 0.047149 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569