问答 Flinkx Oracle Logminner 数据库 只有 只读权限 怎么整

Flinkx Oracle Logminner 数据库 只有 只读权限 怎么整

   爱吃火锅    发布于 2022-01-21 16:04 最新回复 2022-01-25 15:50  来自于   爱吃火锅  475  1

比如 监控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

1条回答
爱吃火锅
回复于 2022-01-25 15:50

查看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
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群