oracle 配置高级复制环境遇到的问题
1、在本机69上创建数据库orcl ,global_name=orcl,使用语句
alter database rename global_name to orcl.us.oracle.com 修改数据库的全局数据库名为orcl.us.oracle.com
2、在虚机188上创建数据库viotest,global_name=viotest,使用语句
alter database rename global_name to viotest.us.oracle.com 修改数据库的全局数据库名为viotest.us.oracle.com
3、定义机器A:188 机器B:69
4、按照操作步骤完成后,在机器A上插入数据时报错
ora-04067:没有执行,stored procedure "wcms.Test$pr"不存在
ora-01085:延迟rpc到“wcms.test$rp.rep_insert"之前的错误
ora-02063:紧接着2 lines(源于orcl)
5、在机器A上查看dba_repcatlog
select * from dba_repcatlog 发现表中有记录,且状态为ready和await_callback,其中:
ready:表示请求准备被执行
await_callback:只出现在主体定义站点上,表示正在等待其他的主站点执行请求并且返回结果
6、在机器B上查看dba_repcatlog发现B中记录的装提案均为ready,并且与A中await_callback的记录一一对应。
然后如果长时间处于ready状态,则可以手动执行dbms_repcat.do_deferred_repcat_admin存储过程来执行请求,于是在机器B上执行execute dbms_repcat.do_deferred_repcat_admin(gname=>'mygroup'),然后dba_repcatlog中无记录了,重新在A上执行插入语句,成功。
后来经过分析,发现dbms_repcat.do_deferred_repcat_admin('"MYGROUP"', FALSE);的job的间隔时间是10分钟,就是在配置完后需要隔十分钟才会执行do_deferred_repcat_admin,也就是说如果在十分钟后在A中执行插入语句应该不会出错。
在A上插入数据,在B上查询结果正确,但是在B上插入数据,却出错。报:
ORA-23326: 没有抑制对象组 "PUBLIC"."MYGROUP"
网上查资料,内容如下:
配置完后,状态为 QUIESCED的结点必须变为NORMAL才能DML。否则只能刷新而不能更改,如果发布DML则会收到:
14:51:04 ">repadmin@rt>insert into test_user.account values (11);
insert into test_user.account values (11)
ORA-23326: 没有抑制对象组 "PUBLIC"."REP"
在机器B上查询复制组的状态
select gname,master,status from dba_repgroup;
GNAME &nbs
相关文档:
ORACLE实例 = 进程 + 进程所使用的内存(SGA)
实例是一个临时性的东西,你也可以认为它代表了数据库某一时刻的状态!
数据库 = 重做文件 + 控制文件 + 数据文件 + 临时文件
数据库是永久的,是一个文件的集合。
ORACLE实例和数据库之间的关系
1.
临时性和永久性
2.
实例可以在没有数据文件的情况下单独启动 ......
Oracle lessons list:
Title ......
1.将客户端程序解压到电脑中
2.配置环境变量:
ORACLE_HOME=F:\instantclient_10_2\client
Path加上%ORACLE_HOME%\bin;
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
3.修改
%ORACLE_HOME%\network\admin下的tnsnames.ora文件
dev = &nbs ......
Oracle
SQL
Loader
的详细语法
Oracle
SQL
Loader
的详细语法
SQL
*LOADER
是
ORACLE
的数据加载工具,通常用来将操作系统文件迁移到
ORACLE
数据库中。
SQL
*LOADER
是大型数据
仓库选择使用的加载方法,因为它提供了最快 ......
作用:merge into 解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表;
语法:
MERGE INTO [your table-name] [rename your table here]
USING ( [write your query here] )[rename your query-sql and using just like a table]
ON ([conditional expression here] AND [...]...)
WHEN MATHED THEN [here ......