比如 监控Oracle 从库
java.lang.RuntimeException: java.lang.RuntimeException: java.sql.SQLException: ORA-01300: writable database required for specified LogMiner options
ORA-06512: at "SYS.DBMS_LOGMNR", line 58
ORA-06512: at line 36
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerHelper.init(LogMinerHelper.java:118)
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerListener.start(LogMinerListener.java:105)
at com.dtstack.flinkx.connector.oraclelogminer.inputformat.OracleLogMinerInputFormat.openInternal(OracleLogMinerInputFormat.java:76)
at com.dtstack.flinkx.source.format.BaseRichInputFormat.open(BaseRichInputFormat.java:146)
at com.dtstack.flinkx.source.DtInputFormatSourceFunction.run(DtInputFormatSourceFunction.java:126)
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:110)
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:66)
at org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.java:263)
Caused by: java.lang.RuntimeException: java.sql.SQLException: ORA-01300: writable database required for specified LogMiner options
ORA-06512: at "SYS.DBMS_LOGMNR", line 58
ORA-06512: at line 36
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerConnection.startOrUpdateLogMiner(LogMinerConnection.java:298)
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerHelper.preLoad(LogMinerHelper.java:156)
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerHelper.init(LogMinerHelper.java:116)
... 7 common frames omitted
Caused by: java.sql.SQLException: ORA-01300: writable database required for specified LogMiner options
ORA-06512: at "SYS.DBMS_LOGMNR", line 58
ORA-06512: at line 36
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494)
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1054)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:623)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:223)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:56)
at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:907)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1119)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3780)
at oracle.jdbc.driver.T4CCallableStatement.executeInternal(T4CCallableStatement.java:1300)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3887)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4230)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1079)
at com.dtstack.flinkx.connector.oraclelogminer.listener.LogMinerConnection.startOrUpdateLogMiner(LogMinerConnection.java:287)
... 9 common frames omitted
查看Oracle 文档 发现 问题出现在SYS.DBMS_LOGMNR.start_logmnr 这里 ,
Oracle 官方对问题的解释
ORA: 1298 More than one dictionary source was specified or
DDL_DICT_TRACKING was requested with
DICT_FROM_ONLINE_CATALOG
ORA: 1300 Writable database required for options specified
(DDL_DICT_TRACKING, DICT_FROM_REDO_LOGS,
DICT_FROM_ONLINE_CATALOG)
然后 在option添加参数 DDL_DICT_TRACKING, DICT_FROM_REDO_LOGS, DICT_FROM_ONLINE_CATALOG
报错
ORA-01298: conflicting dictionary option
ORA-06512: at "SYS.DBMS_LOGMNR", line 58
ORA-06512: at line 45
, Time: 0.057000s
说我 指定了多个字典源 冲突 修改之后 还是 不行 报错ORA: 1300
请问 如何处理?
万分感谢
0 0