2

我正在尝试使用物化视图 (mw) 和数据库链接 (dblink) 配置位于远程数据库 (db) 上的表复制。有一点:

  • 我正在第一个数据库(tb)上创建表
  • 创建从第一个 db 到第二个和向后的 dblink
  • 在第二个数据库上创建 mw 作为从 tb 中选择并设置刷新时间 2 分钟

但它不会刷新,如果我在第一个数据库上创建 mw 作为 select from tb 它会刷新

我应该怎么做才能配置 mw 的刷新?


主站点:

CREATE DATABASE LINK to_ora2_connected 
USING 'ora2';

drop table my_table
create table my_table
(
  field varchar(20) primary key,
  field2 number
);
CREATE MATERIALIZED VIEW LOG ON my_table;

快照网站:

CREATE DATABASE LINK to_ora1_connected 
USING 'ora1';

select * from my_table@to_ora1_connected;

drop materialized view my_table_mw;
create materialized view my_table_mw
  build immediate
  refresh complete start with sysdate
  next sysdate  + 0.00175 
  as select * from my_table@to_ora1_connected;

insert into my_table values ('note2', 2);
select * from my_table;
select * from my_table@to_ora1_connected;
select * from my_table_MW;

警报日志:

Errors in file c:\app\ora1\diag\rdbms\ora2\ora2\trace\ora2_j000_3032.trc:
ORA-12012: ошибка при автоисполнении задания 63
ORA-04052: ошибка во время поиска удаленного объекта SYSTEM.SYS@TO_ORA1_CONNECTED
ORA-00604: ошибка на рекурсивном SQL-уровне 3
ORA-01017: invalid username/password; logon denied
ORA-02063: предшествующий line из TO_ORA1_CONNECTED
ORA-06512: на  "SYS.DBMS_SNAPSHOT", line 2558
ORA-06512: на  "SYS.DBMS_SNAPSHOT", line 2771
ORA-06512: на  "SYS.DBMS_IREFRESH", line 685
ORA-06512: на  "SYS.DBMS_REFRESH", line 195
ORA-06512: на  line 1

并且失败每 10 秒发生一次:

OER 7451 in Load Indicator : Error Code = OSD-04500: задан недопустимый параметр
O/S-Error: (OS 1) Неверная функция. !

“задан недопустимый параметр” - 无效参数;
“Неверная функция” - 功能不正确;
“ошибка при автоисполнении задания” - 自动执行作业时出错
“ошибка во время поиска удаленного объекта” - 搜索远程对象时出错;
“ошибка на рекурсивном SQL-уровне 3” - 递归 SQL 级别 3 上的错误

4

1 回答 1

0

问题出在 dblink 中。我创建了 dblink(固定用户),现在它可以工作了。谢谢你的帮忙!

CREATE DATABASE LINK to_ora1_connected
connect to user identified by password
USING 'ora1';
于 2013-04-10T20:38:13.650 回答