安装CDH6.3版本的时候遇到 ‘ERROR main:com.cloudera.server.cmf.Main: Server failed’的解决方案

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 安装CDH6.3版本的时候遇到 ‘ERROR main:com.cloudera.server.cmf.Main: Server failed’的解决方案

安装CDH6.3版本的时候遇到 ‘ERROR main:com.cloudera.server.cmf.Main: Server failed’的解决方案


在安装CDH大数据平台的cm-server启动的时候遇到 一个错误,该错误日志文件位置为:/var/log/cloudera-scm-server/cloudera-scm-server.log 错误日志部分截取如下:

2021-07-02 02:14:40,154 ERROR main:com.cloudera.server.cmf.Main: Server failed.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.cloudera.server.cmf.TrialState': Cannot resolve reference to bean 'entityManagerFactoryBean' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactoryBean': FactoryBean threw exception on object creation; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not prepare statement

当然了,运维工作就是这样,总是在各种意想不到的地方给你惊喜,我们所需要做到的就是冷静对待。因此,我将分析一下这个错误日志。

以这一段错误日志为例,我们可以发现三个关键的地方,第一是hibernate,第二是while,第三是 could not 。

hibernate以及后面的关联字段是:org.hibernate.exception.GenericJDBCException,表明cm-server使用的是hibernate这个数据库框架,这应该是没问题的,对吧。

while以及后面的关联字段是:while setting constructor argument,表明cm-server在设置构造函数的参数时发生了问题。

could not 以及后面的关联字段是:could not prepare statement,表明无法准备开始语句,具体说,我是在初始化数据库的时候报这么个错的。

根据以上线索,我们可以知道,错误原因在jdbc连接这,要么数据库版本不对,要么数据库驱动不对,而错误日志里有这个:entityManagerFactoryBean,工厂。那么,可以确定是MySQL的驱动不对了,仔细查看了一下 使用的MySQL版本和MySQL驱动版本,MySQL使用的是5.7.19,而驱动版本为mysql-connector-java-5.0.8-bin-g.jar,那么,很明显了,驱动版本过低,MySQL5.7.19并不支持。

处理方案:更换MySQL驱动版本,提高为mysql-connector-java-5.1.47,再次初始化数据库,可以看到数据库的表生成了,完美解决。

初始化数据库的命令是:/opt/cloudera/cm/schema/scm_prepare_database.sh -h 192.168.88.11 mysql scm scm 我的密码(我的密码不能让人看到~~~)

运行结果为:

JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera/
Verifying that we can write to /etc/cloudera-scm-server
Creating SCM configuration file in /etc/cloudera-scm-server
Executing:  /usr/java/jdk1.8.0_181-cloudera//bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/usr/share/java/postgresql-connector-java.jar:/opt/cloudera/cm/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
Fri Jul 02 14:24:06 CST 2021 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
[                          main] DbCommandExecutor              INFO  Successfully connected to database.
All done, your SCM database is configured correctly!

如果是别的输出,那么准时报错了,可能密码错误?这时候,请检查密码。

可以看到生成了scm数据库的一堆表:

20210702142212132.png

总结:


遇到错误不要慌,仔细查看日志,其实日志里已经提醒的很明显了,hibernate,当然是MySQL或者MySQL驱动出问题啦。while告诉我们cm是在干什么的时候报错了,could not 告诉我们,它现在想干的是什么事,这些理清楚了,问题自然迎刃而解。


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
Kubernetes 搜索推荐 Docker
K8S容器运行时弃用Docker转型Containerd
K8S容器运行时弃用Docker转型Containerd
2179 0
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
264746 0
|
12月前
|
消息中间件 关系型数据库 MySQL
Flink CDC 在阿里云实时计算Flink版的云上实践
本文整理自阿里云高级开发工程师阮航在Flink Forward Asia 2024的分享,重点介绍了Flink CDC与实时计算Flink的集成、CDC YAML的核心功能及应用场景。主要内容包括:Flink CDC的发展及其在流批数据处理中的作用;CDC YAML支持的同步链路、Transform和Route功能、丰富的监控指标;典型应用场景如整库同步、Binlog原始数据同步、分库分表同步等;并通过两个Demo展示了MySQL整库同步到Paimon和Binlog同步到Kafka的过程。最后,介绍了未来规划,如脏数据处理、数据限流及扩展数据源支持。
750 0
Flink CDC 在阿里云实时计算Flink版的云上实践
|
数据采集 物联网 大数据
NiFi【部署 01】NiFi最新版本1.18.0下载安装配置启动及问题处理(一篇学会部署NiFi)
NiFi【部署 01】NiFi最新版本1.18.0下载安装配置启动及问题处理(一篇学会部署NiFi)
2595 0
|
存储 监控 大数据
构建高可用性ClickHouse集群:从单节点到分布式
【10月更文挑战第26天】随着业务的不断增长,单一的数据存储解决方案可能无法满足日益增加的数据处理需求。在大数据时代,数据库的性能、可扩展性和稳定性成为企业关注的重点。ClickHouse 是一个用于联机分析处理(OLAP)的列式数据库管理系统(DBMS),以其卓越的查询性能和高吞吐量而闻名。本文将从我的个人角度出发,分享如何将单节点 ClickHouse 扩展为高可用性的分布式集群,以提升系统的稳定性和可靠性。
1312 0
|
消息中间件 存储 分布式计算
Flume实现Kafka数据持久化存储到HDFS
Flume实现Kafka数据持久化存储到HDFS
1265 0
|
消息中间件 监控 Kafka
查询Kafka集群中消费组(group)信息和对应topic的消费情况
查询Kafka集群中消费组(group)信息和对应topic的消费情况
6668 0
|
SQL Java Apache
超详细步骤!整合Apache Hudi + Flink + CDH
超详细步骤!整合Apache Hudi + Flink + CDH
859 0
|
SQL 分布式计算 Hadoop
org.apache.hadoop.security.AccessControlException Permission denied: user=anonymous, access=WRITE...
在尝试通过 HiveServer2 远程执行 DDL 操作时遇到权限错误,错误信息显示匿名用户(`anonymous`)无权执行写操作。解决方案包括:1) 使用 `hdfs dfs -chmod -R +777 /warehouse` 给目录授权(不推荐,仅适用于测试环境);2) 配置 Hive 和 Hadoop,创建具有权限的用户,如 `ad`,并将该用户添加到 Hive 的管理员角色和 Hadoop 的 proxyuser 配置中,然后重启相关服务。通过 `beeline` 测试连接和操作,确认权限问题已解决。
1148 0
|
SQL 分布式计算 关系型数据库
CDH环境搭建及部署及常见错误解决方法
Cloudera版本(Cloudera’s Distribution Including Apache Hadoop,简称“CDH”),基于Web的用户界面,支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeeper、Sqoop。
3258 1
CDH环境搭建及部署及常见错误解决方法

热门文章

最新文章