nacos v2.2 k8s部署启动报错:nacos server did not start because dumpservice bean construction failure. errMsg102, errllsg dataSource or tableName is null
背景
最近搭建个nacos环境,用的镜像是2.2版本的,yaml如下:
nacos-conf
apiVersion: v1
kind: ConfigMap
metadata:
name: nacos-cm
namespace: nacos
data:
mysql.host: "122.122.100.101" # mysql ip
mysql.db.name: "nacos" #上面创建数据库是指的的库名称
mysql.port: "3306" #端口
mysql.user: "nacos_userName" #用户
mysql.password: "nacos_pwd" #用户密码
StatefulSet
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: nacos
namespace: nacos
spec:
serviceName: nacos-headless
replicas: 1 #3
template:
metadata:
labels:
app: nacos
annotations:
pod.alpha.kubernetes.io/initialized: "true"
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "app"
operator: In
values:
- nacos
topologyKey: "kubernetes.io/hostname"
containers:
- name: k8snacos
imagePullPolicy: Always
image: nacos/nacos-server:latest #2022年12月安装的是2.2
resources:
requests:
memory: "2Gi"
cpu: "500m"
ports:
- containerPort: 8848
name: client
- containerPort: 9848
name: client-rpc
- containerPort: 9849
name: raft-rpc
- containerPort: 7848
name: old-raft-rpc
env:
- name: NACOS_REPLICAS
value: "1" #3
- name: MYSQL_SERVICE_HOST
valueFrom:
configMapKeyRef:
name: nacos-cm
key: mysql.host
- name: MYSQL_SERVICE_DB_NAME
valueFrom:
configMapKeyRef:
name: nacos-cm
key: mysql.db.name
- name: MYSQL_SERVICE_PORT
valueFrom:
configMapKeyRef:
name: nacos-cm
key: mysql.port
- name: MYSQL_SERVICE_USER
valueFrom:
configMapKeyRef:
name: nacos-cm
key: mysql.user
- name: MYSQL_SERVICE_PASSWORD
valueFrom:
configMapKeyRef:
name: nacos-cm
key: mysql.password
- name: MODE
#value: "cluster"
value: "standalone"
#- name: SPRING_DATASOURCE_PLATFORM #2.2版本一定要这个,官方的yaml漏了这个,不然会报错:
#value: "mysql"
- name: NACOS_AUTH_ENABLE
value: "true"
- name: MYSQL_SERVICE_DB_PARAM
value: characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai
- name: NACOS_SERVER_PORT
value: "8848"
- name: PREFER_HOST_MODE
value: "hostname"
- name: NACOS_SERVERS
value: "nacos-0.nacos-headless.nacos.svc.cluster.local:8848 nacos-1.nacos-headless.nacos.svc.cluster.local:8848 nacos-2.nacos-headless.nacos.svc.cluster.local:8848"
#格式 nacos-0.nacos-headless.<namespace>.svc.cluster.local
volumeMounts:
- name: azure
mountPath: /home/nacos/data
subPath: nacos/data
- name: azure
mountPath: /home/nacos/logs
subPath: nacos/logs
volumes:
- name: azure
persistentVolumeClaim:
claimName: mysql-pvc
selector:
matchLabels:
app: nacos
一直报错:
nacos server did not start because dumpservice bean construction failure. errMsg:102, dataSource or tableName is null

我开始根据报错搜索,判断的原因有:
1、数据库连接信息不对,连不上;
2、MYSQL_SERVICE_DB_PARAM 这个环境变量没补上,要写上,明确给定时区;
结果发现这个发现是错的。
最后折腾了几天加了一个官方钉钉群,一个老哥幽幽地指出:
“你试试添加SPRING_DATASOURCE_PLATFORM”,然后我试试就逝世,加上了:
- name: SPRING_DATASOURCE_PLATFORM #2.2版本一定要这个,官方的yaml漏了这个,不然会报错:
value: "mysql"
启动成功!!WTF,官方示例太不讲究了,坑人!!!rnm,退钱!!诶,我好像没交钱,活生生把火憋了回去;
nacos v2.2 k8s部署启动报错:nacos server did not start because dumpservice bean construction failure. errMsg102, errllsg dataSource or tableName is null的更多相关文章
- maven项目使用tomcat启动报错:Server Tomcat v8.5 Server at localhost failed to start
背景说明:1)该项目为maven项目,使用的maven的本地仓库里有不少之前使用过下载的jar包: 2)从svn下载该项目后,无报错情况: 3)部署到tomcat启动报错 如下 : 4)在网上搜索了很 ...
- MySQL5.6启动报错The server quit without updating PID file
Mysql启动报错如下: [root@db01 opt]# service mysqld start Starting MySQL.... ERROR! The server quit without ...
- Tomcat启动报错,Server Tomcat v8.0 Server at localhost failed to start
Eclipse 中Tomcat 启动报错Eclipse的提示窗口 Server Tomcat v8.0 Server at localhost failed to start .日志输出中报 F ...
- 项目启动报错 The server time zone value '�й���ʱ��' is unrecognize...
背景介绍: 把项目在新的电脑上运行,MySQL版本不同出现错误 错误: 报错The server time zone value '�й���ʱ��' is unrecognized or repr ...
- mysql启动报错 The server quit without updating PID file
[root@uz6542 data]# /etc/init.d/mysqld startStarting MySQL... ERROR! The server quit without updatin ...
- Tomcat启动报错:SERVER: Error ListenerStart 排查过程记录
报错的Tomcat截图: 要排查此问题,首先需要调整tomcat的日志级别,调整成通过log4j来记录日志的方式,具体的调整方式: http://tomcat.apache.org/tomcat- ...
- mysql启动报错The server quit without updating PID file
现网mysql无法启动是很让人头疼的,数据很有可能恢复不了,解决方法如下: 查看mysql目录下的日志,根据日志来锁定错误原因(mysql的错误日志很抽象) a.如果日志不能提供任何帮助则可进行以下步 ...
- Mysql启动报错 The server quit without updating PID
[root@db mysql]# service mysql restartMySQL server PID file could not be found![失败]Starting MySQL... ...
- nacos启动报错
Caused by: com.alibaba.nacos.api.exception.NacosException: Nacos Server did not start because dumpse ...
- Linux下使用JDK11部署Nacos启动报错:Could not find or load main class
Linux下使用JDK11部署Nacos 错误日志 /nacos/jdk-11.0.12/bin/java -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize ...
随机推荐
- go和c#实现斐波那契数列
首先通过C#实现斐波那契数列: using System.Threading.Channels; namespace App001 { internal class Program { static ...
- 设计模式之装饰器-AOP
HelloWorld简单例子如下:此例子好好体会下继承 is a和组合 has a的异同. using System; using System.Runtime.InteropServices; na ...
- Oracle和达梦:根据外键名字查询表名
根据外键名字查询表名 select * from user_cons_columns cl where cl.constraint_name = '外键名';
- 表和数据连接,而不是和表连接(JOIN)
1.连接数据,但是顺序会受影响 在使用JOIN连接临时表或子查询时,无法保证结果的顺序与特定值的顺序完全一致.这是因为在查询过程中,数据库优化器可能会选择不同的执行计划,导致结果的顺序发生变化. SE ...
- ABAP RSA 加密
最近出现一些SAP ABAP RSA加密的需求,这里搬运一篇文章,用于学习参考. 本文链接:https://www.cnblogs.com/hhelibeb/p/14952732.html 原文标题: ...
- nvm环境安装
目录 nvm是什么 使用背景 nvm的坑. nvm,node,npm之间的区别. nvm.nodejs.npm的关系: nvm-windows下载地址 安装 linux . mac 源码包下载地址 解 ...
- 深度Linux deepin更新,防火墙操作
获取更新 sudo apt-get update 更新系统 sudo apt-get dist-upgrade -y 清理更新缓存 sudo apt-get autoclean 防火墙操作 sudo ...
- su与sudo用法详解
su与sudo用法详解 目录 su与sudo用法详解 1. su和sudo详解:切换用户身份 1.1 shell登录类型和环境配置文件 1.2 su进行身份切换 1.3 sudo命令详解 1.3.1 ...
- nim 8. 异常处理
基本的异常处理 try: let d = newSeq[int]() echo "value: ", d[2] except: let e = getCurrentExceptio ...
- fastposter v2.9.1 程序员必备海报生成器
fastposter v2.9.1 程序员必备海报生成器 fastposter海报生成器是一款快速开发海报的工具.只需上传一张背景图,在对应的位置放上组件(文字.图片.二维.头像)即可生成海报. 点击 ...