Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

load derby-schema.sql error #317

Open
surengang opened this issue Feb 20, 2023 · 10 comments
Open

load derby-schema.sql error #317

surengang opened this issue Feb 20, 2023 · 10 comments

Comments

@surengang
Copy link

surengang commented Feb 20, 2023

docker-compose单机启动报此错误:
nacos-standalone | 2023-02-20 13:51:00,408 WARN Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'namespaceControllerV2' defined in URL [jar:file:/home/nacos/target/nacos-server.jar!/BOOT-INF/classes!/com/alibaba/nacos/console/controller/v2/NamespaceControllerV2.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'namespaceOperationService' defined in URL [jar:file:/home/nacos/target/nacos-server.jar!/BOOT-INF/classes!/com/alibaba/nacos/console/service/NamespaceOperationService.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'embeddedConfigInfoPersistServiceImpl' defined in URL [jar:file:/home/nacos/target/nacos-server.jar!/BOOT-INF/lib/nacos-config-2.2.0.jar!/com/alibaba/nacos/config/server/service/repository/embedded/EmbeddedConfigInfoPersistServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'standaloneDatabaseOperateImpl': Invocation of init method failed; nested exception is java.lang.RuntimeException: com.alibaba.nacos.api.exception.runtime.NacosRuntimeException: errCode: 500, errMsg: load derby-schema.sql error.

@surengang
Copy link
Author

surengang commented Feb 20, 2023

我想是我拉取的最新的镜像(2.2.0)针对于linux可能有bug吧,在window上是正常的,然后我刚刚在linux服务器上切换成了2.1.1版本也是正常的

@saytesnake
Copy link

@surengang

我这边的实践是,在多网卡多 IP 的服务器上,似乎 PREFER_HOST_MODE=ip 之后还需要配置 NACOS_SERVER_IP 到正确的网卡的 IP 才行,否者也是报错 derby-schema.sql error,试了 2.1.1、2.1.2、2.2.0 都是这样,单网卡单 IP 的情况没有出现。

@Qloop
Copy link

Qloop commented Mar 13, 2023

我也遇到了 2.1.1版本 相同报错。 重启容器后正常启动

@paderlol
Copy link
Collaborator

是的多网卡需要指定NACOS_SERVER_IP到正确ip

@youngcle
Copy link

我这里最后一个能在我的ubuntu上运行的docker镜像版本是2.1.1
此后的都一个状态,就是楼主的状态,包括2.2.1

与二楼一样
在我电脑的windows wls docker desktop环境下,不存在这个问题,可以正常运行

NACOS_SERVER_IP设置后没有变化

如此著名的一个项目,这么个显而易见的问题,能持续这么长时间,这么多版本,没有有效的官方回馈。

实在令人遗憾。

@Accelerator96
Copy link

在k8s上运行也遇到这个问题 把这个配置调高就好了 不知道是不是因为derby数据库没启动成功nacos就往里面写入sql导致的
-Ddb.pool.config.connectionTimeout=60000

@youngcle
Copy link

youngcle commented Mar 22, 2023

赞,我刚试了,如你所说,正确答案。

我看到的第一个提出该解决方案的回复是,@Qloop在主仓库9742的回复(alibaba/nacos#9742)

我不认同那边主仓库@KomachiSion的说法,
1、我用docker方式,就是为了屏蔽”环境问题”。
2、另外在我的机器上,2.1.1之前可以正常启动,后面就再也不行了,恰恰环境没变。我的硬件设备太过老旧?不适应心版本要求

如果docker-hub上镜像是社区官方发布的,我认为还是应该修复这个问题。

如果nacos社区认为 这问题不是问题,那么文档中应该更新,各个版本standalone模式对硬件环境有啥特殊要求,让使用者在上线之前自我检讨一下自己是不是目标用户。

现在问题更新了,是否能将-Ddb.pool.config.connectionTimeout改值做到启动脚本中?

没有更新之前,各位可以利用springboot的环境变量注入功能,设定一下该值
在启动容器时,在环境变量中,增加db_pool_config_connectionTimeout=60000

这样可以正常使用。
k8s同理。

@Arjen10
Copy link

Arjen10 commented Jun 18, 2023

赞,我刚试了,如你所说,正确答案。

我看到的第一个提出该解决方案的回复是,@Qloop在主仓库9742的回复(alibaba/nacos#9742)

我不认同那边主仓库@KomachiSion的说法, 1、我用docker方式,就是为了屏蔽”环境问题”。 2、另外在我的机器上,2.1.1之前可以正常启动,后面就再也不行了,恰恰环境没变。我的硬件设备太过老旧?不适应心版本要求

如果docker-hub上镜像是社区官方发布的,我认为还是应该修复这个问题。

如果nacos社区认为 这问题不是问题,那么文档中应该更新,各个版本standalone模式对硬件环境有啥特殊要求,让使用者在上线之前自我检讨一下自己是不是目标用户。

现在问题更新了,是否能将-Ddb.pool.config.connectionTimeout改值做到启动脚本中?

没有更新之前,各位可以利用springboot的环境变量注入功能,设定一下该值 在启动容器时,在环境变量中,增加db_pool_config_connectionTimeout=60000

这样可以正常使用。 k8s同理。

good job,很好的提议

@ravenmk3
Copy link

在k8s上运行也遇到这个问题 把这个配置调高就好了 不知道是不是因为derby数据库没启动成功nacos就往里面写入sql导致的 -Ddb.pool.config.connectionTimeout=60000

感谢,实测用环境变量也可以设置 DB_POOL_CONFIG_CONNECTIONTIMEOUT=6000000

@hell0w0orld
Copy link

hell0w0orld commented Apr 26, 2024

@ravenmk3 没用啊,兄弟。nacos 2.1.1版本的镜像

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants