【问题标题】:Apache nifi connection issueApache nifi 连接问题
【发布时间】:2017-11-20 16:00:16
【问题描述】:

after doing netstat in my server 当我尝试将我的数据库与 nifi 连接时,会显示此错误,而当我通过同一台服务器连接时,它已连接我已经通过 3 个安装了 nifi 的相同服务器看到密码 db dbuser ip 地址端口每个事情已经检查了很多次。 谁能帮我解决问题

2017-11-20 09:26:16,477 错误 [StandardProcessScheduler Thread-1] o.a.n.p.standard.GenerateTableFetch GenerateTableFetch[id=c9425209-015f-1000-003d-d071438865bd] GenerateTableFetch[id=c94252003-015f-1000- d071438865bd] 由于 java.lang.RuntimeException 调用 @OnScheduled 方法失​​败:执行处理器的 OnScheduled 任务之一失败。处理器将不会被安排运行 30 秒:java.lang.RuntimeException:在执行处理器的 OnScheduled 任务之一时失败。 java.lang.RuntimeException:执行处理器的 OnScheduled 任务之一失败。 在 org.apache.nifi.controller.StandardProcessorNode.invokeTaskAsCancelableFuture(StandardProcessorNode.java:1480) 在 org.apache.nifi.controller.StandardProcessorNode.access$000(StandardProcessorNode.java:102) 在 org.apache.nifi.controller.StandardProcessorNode$1.run(StandardProcessorNode.java:1301) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 java.lang.Thread.run(Thread.java:748) 引起:java.util.concurrent.ExecutionException:java.lang.reflect.InvocationTargetException 在 java.util.concurrent.FutureTask.report(FutureTask.java:122) 在 java.util.concurrent.FutureTask.get(FutureTask.java:206) 在 org.apache.nifi.controller.StandardProcessorNode.invokeTaskAsCancelableFuture(StandardProcessorNode.java:1463) ...省略了9个常用框架 引起:java.lang.reflect.InvocationTargetException:null 在 sun.reflect.GeneratedMethodAccessor499.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:137) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:125) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:70) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:47) 在 org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1305) 在 org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1301) ...省略了6个常用框架 引起:org.apache.nifi.processor.exception.ProcessException:org.apache.commons.dbcp.SQLNestedException:无法创建PoolableConnectionFactory(用户'abc'登录失败。ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3) 在 org.apache.nifi.dbcp.DBCPConnectionPool.getConnection(DBCPConnectionPool.java:275) 在 sun.reflect.GeneratedMethodAccessor500.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:89) 在 com.sun.proxy.$Proxy78.getConnection(未知来源) 在 org.apache.nifi.processors.standard.AbstractDatabaseFetchProcessor.setup(AbstractDatabaseFetchProcessor.java:228) 在 org.apache.nifi.processors.standard.GenerateTableFetch.setup(GenerateTableFetch.java:159) ...省略了15个常用框架 原因:org.apache.commons.dbcp.SQLNestedException:无法创建 PoolableConnectionFactory(用户“abc”登录失败。ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3) 在 org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) 在 org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) 在 org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) 在 org.apache.nifi.dbcp.DBCPConnectionPool.getConnection(DBCPConnectionPool.java:272) ...省略了22个常用框架 原因:com.microsoft.sqlserver.jdbc.SQLServerException:用户“abc”登录失败。 ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3 在 com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:217) 在 com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:279) 在 com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:99) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4346) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3160) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:43) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3123) 在 com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1981) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773) 在 com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168) 在 org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) 在 org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582) 在 org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) 在 org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545) ...省略了25个常用框架 2017-11-20 09:26:16,478 错误 [StandardProcessScheduler Thread-1] o.a.n.controller.StandardProcessorNode 由于 java.lang.RuntimeException 无法调用 @OnScheduled 方法:执行处理器的 OnScheduled 任务之一时失败。 java.lang.RuntimeException:执行处理器的 OnScheduled 任务之一失败。 在 org.apache.nifi.controller.StandardProcessorNode.invokeTaskAsCancelableFuture(StandardProcessorNode.java:1480) 在 org.apache.nifi.controller.StandardProcessorNode.access$000(StandardProcessorNode.java:102) 在 org.apache.nifi.controller.StandardProcessorNode$1.run(StandardProcessorNode.java:1301) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 java.lang.Thread.run(Thread.java:748) 引起:java.util.concurrent.ExecutionException:java.lang.reflect.InvocationTargetException 在 java.util.concurrent.FutureTask.report(FutureTask.java:122) 在 java.util.concurrent.FutureTask.get(FutureTask.java:206) 在 org.apache.nifi.controller.StandardProcessorNode.invokeTaskAsCancelableFuture(StandardProcessorNode.java:1463) ...省略了9个常用框架 引起:java.lang.reflect.InvocationTargetException:null 在 sun.reflect.GeneratedMethodAccessor499.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:137) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:125) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:70) 在 org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:47) 在 org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1305) 在 org.apache.nifi.controller.StandardProcessorNode$1$1.call(StandardProcessorNode.java:1301) ...省略了6个常用框架 引起:org.apache.nifi.processor.exception.ProcessException:org.apache.commons.dbcp.SQLNestedException:无法创建PoolableConnectionFactory(用户'abc'登录失败。ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3) 在 org.apache.nifi.dbcp.DBCPConnectionPool.getConnection(DBCPConnectionPool.java:275) 在 sun.reflect.GeneratedMethodAccessor500.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:89) 在 com.sun.proxy.$Proxy78.getConnection(未知来源) 在 org.apache.nifi.processors.standard.AbstractDatabaseFetchProcessor.setup(AbstractDatabaseFetchProcessor.java:228) 在 org.apache.nifi.processors.standard.GenerateTableFetch.setup(GenerateTableFetch.java:159) ...省略了15个常用框架 原因:org.apache.commons.dbcp.SQLNestedException:无法创建 PoolableConnectionFactory(用户“abc”登录失败。ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3) 在 org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549) 在 org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388) 在 org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) 在 org.apache.nifi.dbcp.DBCPConnectionPool.getConnection(DBCPConnectionPool.java:272) ...省略了22个常用框架 原因:com.microsoft.sqlserver.jdbc.SQLServerException:用户“abc”登录失败。 ClientConnectionId:889f12ff-52d1-487e-9ac1-02b66eeaefe3 在 com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:217) 在 com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:279) 在 com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:99) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4346) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3160) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:43) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3123) 在 com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1981) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459) 在 com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773) 在 com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168) 在 org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) 在 org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582) 在 org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556) 在 org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545) ... 省略了 25 个常用帧

【问题讨论】:

    标签: sql-server database apache networking apache-nifi


    【解决方案1】:

    看起来堆栈跟踪的相关部分是“用户'abc'登录失败。”如果不是无效密码,也许数据库不会让您从 NiFi 节点连接?有时 DB 只允许来自某些节点的连接,或来自某些节点的某些用户等。

    【讨论】:

    • 我已经安装了几个 nifi 实例,它们与同一台服务器连接,只是不同的连接在那里它们工作正常,但只有一个特定的连接 nifi 给出错误。
    • nifi 只需要 8 个字符的密码,当我设置 10 个字符的密码时,它会自行截断密码而没有任何警告消息,问题已解决。
    猜你喜欢
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-20
    • 1970-01-01
    • 2018-06-02
    • 1970-01-01
    相关资源
    最近更新 更多