生产库模拟测试
在qhmes上异常关机之后 造成了下面的错误。
解:
单机
关机顺序
shutdown immediate
lsnrctl stop
开机顺序
lsnrctl start
startup
RAC环境:
<同上>
SQL> SELECT apply_name,apply_captured,status FROM dba_apply;
APPLY_NAME APP STATUS
------------------------------ --- ----------
APPLY_MES_QH YES ENABLED
APPLY_MES_QBJ YES ABORTED
SQL> select PROPAGATION_NAME,SOURCE_QUEUE_NAME,QUEUE_TO_QUEUE,error_message from dba_propagation;
PROPAGATION_NAME SOURCE_QUEUE_NAME QUEUE
------------------------------ ------------------------------ -----
ERROR_MESSAGE
--------------------------------------------------------------------------------
MES_TO_QBJMES MES_QUEUE_QBJ FALSE
MES_TO_QHMES MES_QUEUE_QH FALSE
ORA-12541: TNS:no listener
ORA-12541: TNS:no listener
问题一
APPLY_MES_QBJ MES_QUEUE_QBJ ABORTED
ORA-26714: User error encountered while applying
SQL> select PROPAGATION_NAME,SOURCE_QUEUE_NAME,QUEUE_TO_QUEUE,error_message from dba_propagation;
PROPAGATION_NAME SOURCE_QUEUE_NAME QUEUE
------------------------------ ------------------------------ -----
ERROR_MESSAGE
--------------------------------------------------------------------------------
MES_TO_QBJMES MES_QUEUE_QBJ FALSE
MES_TO_QHMES MES_QUEUE_QH FALSE
ORA-12541: TNS:no listener
ORA-12541: TNS:no listener
解:
qhmes 上 lsnrctl start
OK
这个两个错误是因为 刚开始不能同步的时候 我drop table造成的,当数据库重启之后最好开始
查查状态在删除
qhmes上
SQL> select APPLY_NAME,QUEUE_NAME,ERROR_MESSAGE,SOURCE_COMMIT_SCN from DBA_APPLY_ERROR;
APPLY_NAME QUEUE_NAME
------------------------------ ------------------------------
ERROR_MESSAGE SOURCE_COMMIT_SCN
---------------------------------------------------- -----------------
APPLY_QHMES_QH QHMES_QUEUE_QH
lid
APPLY_QHMES_QH QHMES_QUEUE_QH
lid
解决:
select apply_name,
LOCAL_TRANSACTION_ID,SOURCE_TRANSACTION_ID,ERROR_MESSAGE
from dba_apply_error;
SQL>
BEGIN
DBMS_APPLY_ADM.EXECUTE_ERROR(
LOCAL_TRANSACTION_ID => '9.15.663', <------
LOCAL_TRANSACTION_ID
EXECUTE_AS_USER => FALSE);
END;
/
生产库模拟测试
在qhmes上异常关机之后 造成了下面的错误。
解:
单机
关机顺序
shutdown immediate
lsnrctl stop
开机顺序
lsnrctl start
startup
RAC环境:
<同上>
SQL> SELECT apply_name,apply_captured,status FROM dba_apply;
APPLY_NAME APP STATUS
------------------------------ --- ----------
APPLY_MES_QH YES ENABLED
APPLY_MES_QBJ YES ABORTED
SQL> select PROPAGATION_NAME,SOURCE_QUEUE_NAME,QUEUE_TO_QUEUE,error_message from dba_propagation;
PROPAGATION_NAME SOURCE_QUEUE_NAME QUEUE
------------------------------ ------------------------------ -----
ERROR_MESSAGE
--------------------------------------------------------------------------------
MES_TO_QBJMES MES_QUEUE_QBJ FALSE
MES_TO_QHMES MES_QUEUE_QH FALSE
ORA-12541: TNS:no listener
ORA-12541: TNS:no listener
问题一
APPLY_MES_QBJ MES_QUEUE_QBJ ABORTED
ORA-26714: User error encountered while applying
SQL> select PROPAGATION_NAME,SOURCE_QUEUE_NAME,QUEUE_TO_QUEUE,error_message from dba_propagation;
PROPAGATION_NAME SOURCE_QUEUE_NAME QUEUE
------------------------------ ------------------------------ -----
ERROR_MESSAGE
--------------------------------------------------------------------------------
MES_TO_QBJMES MES_QUEUE_QBJ FALSE
MES_TO_QHMES MES_QUEUE_QH FALSE
ORA-12541: TNS:no listener
ORA-12541: TNS:no listener
解:
qhmes 上 lsnrctl start
OK
这个两个错误是因为 刚开始不能同步的时候 我drop table造成的,当数据库重启之后最好开始
查查状态在删除
qhmes上
SQL> select APPLY_NAME,QUEUE_NAME,ERROR_MESSAGE,SOURCE_COMMIT_SCN from DBA_APPLY_ERROR;
APPLY_NAME QUEUE_NAME
------------------------------ ------------------------------
ERROR_MESSAGE SOURCE_COMMIT_SCN
---------------------------------------------------- -----------------
APPLY_QHMES_QH QHMES_QUEUE_QH
lid
APPLY_QHMES_QH QHMES_QUEUE_QH
lid
解决:
盖国强的处理办法:
select apply_name,
LOCAL_TRANSACTION_ID,SOURCE_TRANSACTION_ID,ERROR_MESSAGE
from dba_apply_error;
SQL>
BEGIN
DBMS_APPLY_ADM.EXECUTE_ERROR(
LOCAL_TRANSACTION_ID => '9.15.663', <------
LOCAL_TRANSACTION_ID
EXECUTE_AS_USER => FALSE);
END;
/