Closed xinsendi closed 1 year ago
mysql 什么版本
5.7.24
application.yml
完整配置看一下 ,关键信息注意打码。
server:
port: 8848
spring:
profiles:
active: dev
application:
name: jetlinks-platform
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: Asia/Shanghai
serialization:
WRITE_DATES_AS_TIMESTAMPS: true
default-property-inclusion: non_null
web:
resources:
static-locations: file:./static/,/,classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/, classpath:/public/
redis:
host: 172.168.201.34 # Redis服务器地址
database: 0 # Redis数据库索引(默认为0)
port: 6379 # Redis服务器连接端口
password: # Redis服务器连接密码(默认为空)
jedis:
pool:
max-active: 8 # 连接池最大连接数(使用负值表示没有限制)
max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制)
max-idle: 8 # 连接池中的最大空闲连接
min-idle: 0 # 连接池中的最小空闲连接
timeout: 3000ms # 连接超时时间(毫秒)
# max-wait: 10s
r2dbc:
# 需要手动创建数据库,启动会自动创建表,修改了配置easyorm相关配置也要修改
# url: r2dbc:postgresql://127.0.0.1:5432/jetlinks
url: r2dbc:mysql://127.0.0.1:3306/jetlinks?ssl=false&serverZoneId=Asia/Shanghai # 修改了配置easyorm相关配置也要修改
username: root
password: (删掉)
pool:
max-size: 32
max-idle-time: 2m # 值不能大于mysql server的wait_timeout配置
max-life-time: 10m
acquire-retry: 3
reactor:
debug-agent:
enabled: false
elasticsearch:
uris: 172.168.201.34:9200
socket-timeout: 10s
connection-timeout: 15s
webclient:
max-in-memory-size: 100MB
easyorm:
default-schema: jetlinks # 数据库默认的schema
dialect: mysql #数据库方言
tdengine:
enabled: false
database: jetlinks
restful:
endpoints:
- http://127.0.0.1:6041/
username: root
password: taosdata
elasticsearch:
embedded:
enabled: false # 为true时使用内嵌的elasticsearch,不建议在生产环境中使用
data-path: ./data/elasticsearch
port: 9200
host: 0.0.0.0
index:
default-strategy: time-by-month #默认es的索引按月进行分表, direct则为直接操作索引.
settings:
number-of-shards: 1 # es 分片数量
number-of-replicas: 0 # 副本数量
device:
message:
writer:
time-series:
enabled: true #对设备数据进行持久化
captcha:
enabled: false # 开启验证码
ttl: 2m #验证码过期时间,2分钟
hsweb:
cors:
enable: true
configs:
- path: /**
allowed-headers: "*"
allowed-methods: [ "GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS" ]
allowed-origins: [ "*" ] ## 生产环境请替换为具体的域名端口如: http://xxxxx
max-age: 1800
dict:
enum-packages: org.jetlinks
file:
upload:
static-file-path: ./static/upload
static-location: http://127.0.0.1:8848/upload
webflux:
response-wrapper:
enabled: true #开启响应包装器(将返回值包装为ResponseMessage)
excludes: # 这下包下的接口不包装
- org.springdoc
# auth: #默认的用户配置
# users:
# admin:
# username: admin
# password: admin
# name: 超级管理员
authorize:
auto-parse: true
permission:
filter:
enabled: true # 设置为true开启权限过滤,赋权时,不能赋予比自己多的权限.
exclude-username: admin # admin用户不受上述限制
un-auth-strategy: ignore # error表示:发生越权时,抛出403错误. ignore表示会忽略越权的赋权.
cache:
type: redis
redis:
local-cache-type: guava
file:
manager:
storage-base-path: ./data/files
api:
# 访问api接口的根地址
base-path: http://127.0.0.1:${server.port}
jetlinks:
server-id: ${spring.application.name}:${server.port} #设备服务网关服务ID,不同服务请设置不同的ID
logging:
system:
context:
server: ${spring.application.name}
protocol:
spi:
enabled: true # 为true时开启自动加载通过依赖引入的协议包
logging:
level:
org.jetlinks: debug
rule.engine: debug
org.hswebframework: debug
org.springframework.transaction: debug
org.springframework.data.r2dbc.connectionfactory: warn
io.micrometer: warn
org.hswebframework.expands: error
system: debug
org.jetlinks.rule.engine: warn
org.jetlinks.supports.event: warn
org.springframework: warn
org.jetlinks.community.device.message.writer: warn
org.jetlinks.community.timeseries.micrometer: warn
org.jetlinks.community.elastic.search.service.reactive: trace
org.jetlinks.community.network: warn
io.vertx.mqtt.impl: warn
org.jetlinks.supports.scalecube.rpc: warn
"org.jetlinks.community.buffer": debug
org.elasticsearch: error
org.elasticsearch.deprecation: off
"io.vertx.core.impl.ContextImpl": off
config: classpath:logback-spring.xml
vertx:
max-event-loop-execute-time-unit: seconds
max-event-loop-execute-time: 30
max-worker-execute-time-unit: seconds
max-worker-execute-time: 30
prefer-native-transport: true
micrometer:
time-series:
tags:
server: ${spring.application.name}
metrics:
default:
step: 30s
system:
config:
scopes:
- id: front
name: 前端配置
public-access: true
- id: paths
name: 访问路径配置
public-access: true
properties:
- key: base-path
name: 接口根路径
default-value: http://127.0.0.1:9000/api
- id: amap
name: 高德地图配置
public-access: false
properties:
- key: apiKey # 配置id
name: 高德地图ApiKey # 名称
management:
health:
elasticsearch:
enabled: false # 关闭elasticsearch健康检查
springdoc:
swagger-ui:
path: /swagger-ui.html
# packages-to-scan: org.jetlinks
group-configs:
- group: 设备管理相关接口
packages-to-scan:
- org.jetlinks.community.device
paths-to-exclude:
- /device-instance/**
- /device-product/**
- /protocol/**
- group: 规则引擎相关接口
packages-to-scan: org.jetlinks.community.rule.engine.web
paths-to-exclude: /api/**
- group: 通知管理相关接口
packages-to-scan: org.jetlinks.community.notify.manager.web
- group: 设备接入相关接口
packages-to-scan:
- org.jetlinks.community.network.manager.web
- org.jetlinks.community.device.web
paths-to-match:
- /gateway/**
- /network/**
- /protocol/**
- group: 系统管理相关接口
packages-to-scan:
- org.jetlinks.community.auth
- org.hswebframework.web.system.authorization.defaults.webflux
- org.hswebframework.web.file
- org.hswebframework.web.authorization.basic.web
- org.jetlinks.community.logging.controller
cache:
disabled: false
network:
resources:
- 1883-1890
- 8800-8810
- 5060-5061
mysql服务有没有host限制啥的?实在不行还是建议先用PostgreSQL吧
没有,root我全网段方通了
我把sql指向我自己本机的mysql,可以跑了,本机是8.0版本的,5.7不行?
完整日志看看
java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar
_ _ _ _ _
| | | | | | (_) | |
| | ___| |_| | _ _ __ | | _____
_ | |/ _ \ __| | | | '_ \| |/ / __|
| |__| | __/ |_| |____| | | | | <\__ \
\____/ \___|\__|______|_|_| |_|_|\_\___/
jetlinks 2.0.0-SNAPSHOT build @maven.build.timestamp@
spring-boot 2.7.3
http port 8848
redis 172.168.201.34:6379
r2dbc r2dbc:mysql://127.0.0.1:3306/jetlinks?ssl=false&serverZoneId=Asia/Shanghai
2023-04-19 18:47:21.823 INFO 15281 --- [ main] o.j.c.standalone.JetLinksApplication : Starting JetLinksApplication using Java 1.8.0_92 on localhost.localdomain with PID 15281 (/usr/local/lib/jetlinks-community/jetlinks-standalone/target/jetlinks-standalone.jar started by sendi in /usr/local/lib/jetlinks-community)
2023-04-19 18:47:21.830 DEBUG 15281 --- [ main] o.j.c.standalone.JetLinksApplication : Running with Spring Boot v2.7.3, Spring v5.3.22
2023-04-19 18:47:21.831 INFO 15281 --- [ main] o.j.c.standalone.JetLinksApplication : The following 1 profile is active: "dev"
2023-04-19 18:47:31.605 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Preparing: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema=? and table_name like ?
2023-04-19 18:47:31.609 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Parameters: jetlinks(String),%%(String)
2023-04-19 18:47:31.610 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Native: select column_name as `name`, data_type as `data_type`, character_maximum_length as `data_length`, numeric_precision as `data_precision`, numeric_scale as `data_scale`, column_comment as `comment`, table_name as `table_name`, case when is_nullable='YES' then 0 else 1 end as 'not_null' from information_schema.columns where table_schema='jetlinks' and table_name like '%%'
2023-04-19 18:47:31.693 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Preparing: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema=? and table_name like ?
2023-04-19 18:47:31.694 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Parameters: jetlinks(String),%%(String)
2023-04-19 18:47:31.694 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Native: select table_comment as `comment` ,table_name as `table_name` from information_schema.tables where table_schema='jetlinks' and table_name like '%%'
2023-04-19 18:47:31.704 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Preparing: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = ? and TABLE_NAME like ?
2023-04-19 18:47:31.704 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Parameters: jetlinks(String),%%(String)
2023-04-19 18:47:31.704 DEBUG 15281 --- [tor-tcp-epoll-2] o.h.e.r.e.r.r.R2dbcReactiveSqlExecutor : ==> Native: SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'jetlinks' and TABLE_NAME like '%%'
2023-04-19 18:47:33.963 DEBUG 15281 --- [ main] o.j.core.cache.SPIFileQueueBuilder : Load service [FileQueueBuilderFactory] : [class org.jetlinks.supports.cache.MVStoreQueueBuilderFactory]
2023-04-19 18:47:34.926 DEBUG 15281 --- [or-http-epoll-2] s.i.s.AbstractElasticSearchIndexStrategy : ignore update index [jetlinks-metrics_2023-4] mapping
2023-04-19 18:47:37.347 INFO 15281 --- [ main] io.scalecube.cluster.Cluster : [null][doStart] Starting, config: ClusterConfig[metadata=null, metadataTimeout=3000, metadataCodec=io.scalecube.cluster.metadata.JdkMetadataCodec@15deb1dc, memberAlias='default', externalHost='null', externalPort=null, transportConfig=TransportConfig[port=0, clientSecured=false, connectTimeout=3000, messageCodec=org.jetlinks.community.configure.cluster.FSTMessageCodec@6e9c413e, maxFrameLength=2097152, transportFactory=io.scalecube.transport.netty.tcp.TcpTransportFactory@57a4d5ee, addressMapper=java.util.function.Function$$Lambda$300/836220863@5af5def9], failureDetectorConfig=FailureDetectorConfig[pingInterval=1000, pingTimeout=500, pingReqMembers=3], gossipConfig=GossipConfig[gossipFanout=3, gossipInterval=200, gossipRepeatMult=3, gossipSegmentationThreshold=1000], membershipConfig=MembershipConfig[seedMembers=[], syncInterval=30000, syncTimeout=3000, suspicionMult=5, namespace='default', removedMembersHistorySize=42]]
2023-04-19 18:47:37.376 INFO 15281 --- [ster-io-epoll-1] i.s.cluster.transport.api.Transport : [start][/0:0:0:0:0:0:0:0%0:46529] Bound cluster transport
2023-04-19 18:47:37.453 INFO 15281 --- [ster-io-epoll-1] io.scalecube.cluster.Cluster : [default:default:f2ee5bb3-1aa8-4e34-aae5-59e510fef9bb@127.0.0.1:46529][doStart] Started
2023-04-19 18:47:39.570 DEBUG 15281 --- [ main] org.jetlinks.core.codec.Codecs : lookup codec [org.jetlinks.core.codec.defaults.JsonCodec@42cc13a0] for [org.jetlinks.core.trace.data.SpanDataInfo]
2023-04-19 18:47:41.640 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.648 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.648 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.649 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.649 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.650 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.650 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.653 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.726 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:41.730 WARN 15281 --- [tor-tcp-epoll-2] d.m.r.mysql.client.MessageDuplexCodec : Connection has been closed by peer
2023-04-19 18:47:43.988 DEBUG 15281 --- [ main] org.jetlinks.core.codec.Codecs : lookup codec [org.jetlinks.core.codec.defaults.DeviceMessageCodec@796065aa] for [org.jetlinks.core.message.DeviceMessage]
2023-04-19 18:47:44.513 DEBUG 15281 --- [ main] org.jetlinks.core.codec.Codecs : lookup codec [org.jetlinks.core.codec.defaults.StringCodec@44de0113] for [java.lang.String]
2023-04-19 18:47:44.748 ERROR 15281 --- [tor-tcp-epoll-2] o.h.w.c.configuration.AutoDDLProcessor : Could not open R2DBC Connection for transaction; nested exception is io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
org.springframework.transaction.CannotCreateTransactionException: Could not open R2DBC Connection for transaction; nested exception is io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
at org.springframework.r2dbc.connection.R2dbcTransactionManager.lambda$null$5(R2dbcTransactionManager.java:227)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:172)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)
at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:95)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:192)
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:259)
at io.r2dbc.pool.MonoDiscardOnCancel$MonoDiscardOnCancelSubscriber.onError(MonoDiscardOnCancel.java:98)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:231)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:209)
at reactor.core.publisher.Operators.complete(Operators.java:137)
at reactor.netty.FutureMono.doSubscribe(FutureMono.java:122)
at reactor.netty.FutureMono$DeferredFutureMono.subscribe(FutureMono.java:114)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:240)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onComplete(Operators.java:2058)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:181)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.success(MonoCreate.java:140)
at dev.miku.r2dbc.mysql.client.ReactorNettyClient.lambda$close$13(ReactorNettyClient.java:201)
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:58)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreElements$IgnoreElementsSubscriber.onError(MonoIgnoreElements.java:84)
at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:198)
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1816)
at reactor.core.publisher.MonoSupplier.subscribe(MonoSupplier.java:62)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at io.r2dbc.pool.MonoDiscardOnCancel.subscribe(MonoDiscardOnCancel.java:50)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:157)
at reactor.pool.AbstractPool$Borrower.deliver(AbstractPool.java:467)
at reactor.pool.SimpleDequePool.lambda$drainLoop$8(SimpleDequePool.java:370)
at reactor.core.scheduler.ImmediateScheduler.schedule(ImmediateScheduler.java:52)
at reactor.pool.SimpleDequePool.drainLoop(SimpleDequePool.java:370)
at reactor.pool.SimpleDequePool.pendingOffer(SimpleDequePool.java:600)
at reactor.pool.SimpleDequePool.doAcquire(SimpleDequePool.java:296)
at reactor.pool.AbstractPool$Borrower.request(AbstractPool.java:430)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:110)
at reactor.pool.SimpleDequePool$QueueBorrowerMono.subscribe(SimpleDequePool.java:720)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52)
at reactor.core.publisher.FluxRetry$RetrySubscriber.resubscribe(FluxRetry.java:117)
at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:101)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:192)
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:259)
at io.r2dbc.pool.MonoDiscardOnCancel$MonoDiscardOnCancelSubscriber.onError(MonoDiscardOnCancel.java:98)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:231)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:209)
at reactor.netty.FutureMono$FutureSubscription.operationComplete(FutureMono.java:196)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:552)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:605)
at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:104)
at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetSuccess(AbstractChannel.java:990)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:686)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:620)
at io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1352)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:622)
at io.netty.channel.AbstractChannelHandlerContext.access$1200(AbstractChannelHandlerContext.java:61)
at io.netty.channel.AbstractChannelHandlerContext$11.run(AbstractChannelHandlerContext.java:611)
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:403)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:745)
Caused by: io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
at io.r2dbc.pool.Validation.lambda$validate$2(Validation.java:45)
at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:176)
... 54 common frames omitted
2023-04-19 18:47:44.751 INFO 15281 --- [tor-tcp-epoll-2] o.hswebframework.web.utils.ModuleUtils : init module info
2023-04-19 18:47:44.764 INFO 15281 --- [tor-tcp-epoll-2] o.h.web.id.SnowflakeIdGenerator : worker starting. timestamp left shift 22, datacenter id bits 5, worker id bits 5, sequence bits 12, workerid 21
2023-04-19 18:47:44.768 WARN 15281 --- [ main] onfigReactiveWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.hswebframework.web.crud.configuration.AutoDDLProcessor_1': Invocation of init method failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open R2DBC Connection for transaction; nested exception is io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
2023-04-19 18:47:51.860 INFO 15281 --- [ main] io.scalecube.cluster.Cluster : [default:default:f2ee5bb3-1aa8-4e34-aae5-59e510fef9bb@127.0.0.1:46529][doShutdown] Shutting down
2023-04-19 18:47:51.864 INFO 15281 --- [ main] io.scalecube.cluster.Cluster : [default:default:f2ee5bb3-1aa8-4e34-aae5-59e510fef9bb@127.0.0.1:46529][leaveCluster] Leaving cluster
2023-04-19 18:47:51.911 WARN 15281 --- [ main] d.r.c.l.LettucePoolingConnectionProvider : LettucePoolingConnectionProvider contains unreleased connections
2023-04-19 18:47:52.367 ERROR 15281 --- [ main] o.s.boot.SpringApplication : Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.hswebframework.web.crud.configuration.AutoDDLProcessor_1': Invocation of init method failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open R2DBC Connection for transaction; nested exception is io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
at org.jetlinks.community.standalone.JetLinksApplication.main(JetLinksApplication.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467)
Caused by: org.springframework.transaction.CannotCreateTransactionException: Could not open R2DBC Connection for transaction; nested exception is io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
at org.springframework.r2dbc.connection.R2dbcTransactionManager.lambda$null$5(R2dbcTransactionManager.java:227)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:172)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)
at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:95)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:192)
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:259)
at io.r2dbc.pool.MonoDiscardOnCancel$MonoDiscardOnCancelSubscriber.onError(MonoDiscardOnCancel.java:98)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:231)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:209)
at reactor.core.publisher.Operators.complete(Operators.java:137)
at reactor.netty.FutureMono.doSubscribe(FutureMono.java:122)
at reactor.netty.FutureMono$DeferredFutureMono.subscribe(FutureMono.java:114)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:240)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.onComplete(Operators.java:2058)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onComplete(MonoFlatMap.java:181)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.success(MonoCreate.java:140)
at dev.miku.r2dbc.mysql.client.ReactorNettyClient.lambda$close$13(ReactorNettyClient.java:201)
at reactor.core.publisher.MonoCreate.subscribe(MonoCreate.java:58)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreElements$IgnoreElementsSubscriber.onError(MonoIgnoreElements.java:84)
at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:198)
at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1816)
at reactor.core.publisher.MonoSupplier.subscribe(MonoSupplier.java:62)
at reactor.core.publisher.Mono.subscribe(Mono.java:4397)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:263)
at reactor.core.publisher.MonoIgnoreThen.subscribe(MonoIgnoreThen.java:51)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at io.r2dbc.pool.MonoDiscardOnCancel.subscribe(MonoDiscardOnCancel.java:50)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:157)
at reactor.pool.AbstractPool$Borrower.deliver(AbstractPool.java:467)
at reactor.pool.SimpleDequePool.lambda$drainLoop$8(SimpleDequePool.java:370)
at reactor.core.scheduler.ImmediateScheduler.schedule(ImmediateScheduler.java:52)
at reactor.pool.SimpleDequePool.drainLoop(SimpleDequePool.java:370)
at reactor.pool.SimpleDequePool.pendingOffer(SimpleDequePool.java:600)
at reactor.pool.SimpleDequePool.doAcquire(SimpleDequePool.java:296)
at reactor.pool.AbstractPool$Borrower.request(AbstractPool.java:430)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:110)
at reactor.pool.SimpleDequePool$QueueBorrowerMono.subscribe(SimpleDequePool.java:720)
at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
at reactor.core.publisher.MonoDefer.subscribe(MonoDefer.java:52)
at reactor.core.publisher.FluxRetry$RetrySubscriber.resubscribe(FluxRetry.java:117)
at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:101)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:192)
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:259)
at io.r2dbc.pool.MonoDiscardOnCancel$MonoDiscardOnCancelSubscriber.onError(MonoDiscardOnCancel.java:98)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onError(MonoIgnoreThen.java:278)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.subscribeNext(MonoIgnoreThen.java:231)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:203)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.onComplete(MonoIgnoreThen.java:209)
at reactor.netty.FutureMono$FutureSubscription.operationComplete(FutureMono.java:196)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:552)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:605)
at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:104)
at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
at io.netty.channel.AbstractChannel$AbstractUnsafe.safeSetSuccess(AbstractChannel.java:990)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:686)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:620)
at io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1352)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:622)
at io.netty.channel.AbstractChannelHandlerContext.access$1200(AbstractChannelHandlerContext.java:61)
at io.netty.channel.AbstractChannelHandlerContext$11.run(AbstractChannelHandlerContext.java:611)
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:403)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:745)
Suppressed: java.lang.Exception: #block terminated with an error
at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:139)
at reactor.core.publisher.Mono.block(Mono.java:1731)
at org.hswebframework.web.crud.configuration.AutoDDLProcessor.afterPropertiesSet(AutoDDLProcessor.java:78)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
at org.jetlinks.community.standalone.JetLinksApplication.main(JetLinksApplication.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467)
Caused by: io.r2dbc.spi.R2dbcNonTransientResourceException: Connection validation failed
at io.r2dbc.pool.Validation.lambda$validate$2(Validation.java:45)
at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:176)
... 54 common frames omitted
2023-04-19 18:47:52.842 INFO 15281 --- [cluster-46529-1] io.scalecube.cluster.Cluster : [default:default:f2ee5bb3-1aa8-4e34-aae5-59e510fef9bb@127.0.0.1:46529][leaveCluster] Left cluster
2023-04-19 18:47:52.846 INFO 15281 --- [cluster-46529-1] i.s.cluster.transport.api.Transport : [127.0.0.1:46529][doStop] Stopping
2023-04-19 18:47:52.850 INFO 15281 --- [cluster-46529-1] i.s.cluster.transport.api.Transport : [127.0.0.1:46529][closeServer] Closing server channel
2023-04-19 18:47:52.855 INFO 15281 --- [ster-io-epoll-1] i.s.cluster.transport.api.Transport : [127.0.0.1:46529][closeServer] Closed server channel
2023-04-19 18:47:52.856 INFO 15281 --- [ster-io-epoll-1] i.s.cluster.transport.api.Transport : [127.0.0.1:46529][doStop] Stopped
2023-04-19 18:47:52.857 INFO 15281 --- [ster-io-epoll-1] io.scalecube.cluster.Cluster : [default:default:f2ee5bb3-1aa8-4e34-aae5-59e510fef9bb@127.0.0.1:46529][doShutdown] Shutdown
看一下mysql的最大连接数量设置? 调整一下?
应该没改过,默认值。下班了,明天回去改下试试
发自我的小米在 2023年4月19日 下午7:08,老周 @.***>写道: 看一下mysql的最大连接数量设置? 调整一下?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.> [ { @.": "http://schema.org", @.": "EmailMessage", "potentialAction": { @.": "ViewAction", "target": "https://github.com/jetlinks/jetlinks-community/issues/270#issuecomment-1514546976", "url": "https://github.com/jetlinks/jetlinks-community/issues/270#issuecomment-1514546976", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { @.***": "Organization", "name": "GitHub", "url": "https://github.com" } } ]
默认151,我改成1000了,还是那个错误,我觉得应该是代码里面用了一个5.7不支持的事务方法,我看报错的地方在R2dbcTransactionManager事务管理器上,AutoDDLProcessor_1': Invocation of init method failed;
能否用docker 安装一个mysql 试试? 我本地用此方式没有问题。
docker run -d -p 13306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=jetlinks mysql:5.7 --character-set-server=utf8mb4
spring:
r2dbc:
url: r2dbc:mysql://localhost:13306/jetlinks?ssl=false&serverZoneId=Asia/Shanghai
username: root
password: root
easyorm:
default-schema: jetlinks
dialect: mysql
docker上面装的mysql没问题,所以还是我的mysql版本低了?
不太确定。你试试?
算了,这个mysql不太好升级。先用docker里面的吧。谢谢!
源码编译启动
我改成mysql,启动的时候
我的mysql连接没问题,我写了个test类是可以连上去的。
我试过故意写错密码,它会报mysql的账号密码错误的提示 nested exception is io.r2dbc.spi.R2dbcPermissionDeniedException: [1045] [28000] Access denied for user 'rdsjofs'@'localhost' (using password: YES)