CDH集群手动导入scm库
一、手动导入 scm 库
背景:正常安装 cloudera-scm-server 时,安装 scm 库是通过脚本 /usr/share/cmf/schema/scm_prepare_database.sh 来自动建库的。
/usr/share/cmf/schema/scm_prepare_database.sh mysql -h<mysql-host> -u<mysql-user> -p<mysql-pwd> --scm-host <scm-host> <scm-user> <scm-dbname> <scm-pwd>
其中
- <mysql-host>,<mysql-user> <mysql-pwd> 是需要创建的 scm 库所在的 mysql 位置,对应的 mysql 的主机名,用户名和登录密码;
- <scm-host>,<scm_user>,<scm-dbname>,<scm-pwd>分别对应 cloudera-scm-server 部署在的主机名,scm 库的登录用户,scm 库的库名,scm 库的登录密码。
但是,当在使用云服务器的 rds 实例作为远程 mysql 时,执行以上脚本会报权限不够的错误。而在本地部署的 mysql 实例执行以上脚本则不会报错,主要原因是<mysql-user>是通过 grant all 命令来授权的,而使用 rds 实例时 grant all 命名是无法执行的,也就是使用 rds 时只能 grant 指定权限给用户,这样可能会导致一部分权限丢失,执行上面的自动建库脚本就会报权限错误。
解决方法:
由于 cloudera-scm-server 服务在启动时会初始化 scm 库,自动创建需要的表,因此,可以考虑将已经建好表的 sql 语句 dump 到本地,然后导入到 rds 实例中。
步骤一:在本地一台机器部署mysql,安装 clouder-scm-server 服务,将初始的 scm 表 sql 导出。
mysqldump -uroot -p <scm-dbname> > A_dump.sql
步骤二:将备份的 sql 语句导入到线上 scm 库所在的地址。
mysql -h<mysql-host> -u<mysql-user> -p<mysql-pwd> <scm-dbname> < A_dump.sql
至此,scm 库的初始表已手到导入,配置 cloudera-scm-server 的 db 地址并启动服务即可。
二、配置服务的db地址并启动服务
1. 配置 cloudera-scm-server 的 db 地址
通过 ‘ yum install cloudera-manager-daemons cloudera-manager-server‘ 安装好 cloudera-scm-server 服务后,会生成一个 db 配置文件 /etc/cloudera-scm-server/db.properties ,修改配置文件的内容,执行 mysql 所在地址。
# Copyright (c) Cloudera, Inc. All rights reserved.
#
# This file describes the database connection.
# # The database type
# Currently 'mysql', 'postgresql' and 'oracle' are valid databases.
#com.cloudera.cmf.db.type=mysql # The database host
# If a non standard port is needed, use 'hostname:port'
#com.cloudera.cmf.db.host=localhost # The database name
#com.cloudera.cmf.db.name=cmf # The database user
#com.cloudera.cmf.db.user=cmf # The database user's password
#com.cloudera.cmf.db.password= # The db setup type
# By default, it is set to INIT
# If scm-server uses Embedded DB then it is set to EMBEDDED
# If scm-server uses External DB then it is set to EXTERNAL
#com.cloudera.cmf.db.setupType=INIT com.cloudera.cmf.db.type=mysql
com.cloudera.cmf.db.host=<mysql-host>
com.cloudera.cmf.db.name=<scm-dbname>
com.cloudera.cmf.db.user=<scm-user>
com.cloudera.cmf.db.setupType=EXTERNAL
com.cloudera.cmf.db.password=<scm-pwd>
2. 启动 cloudera-scm-server 服务
/etc/init.d/cloudera-scm-server start
观察 cloudera-scm-server 服务是否正常运行,正常则表示手动导入的 scm 库没问题,登录 http://<scm-host>:7180/ 访问访问,初始账号 admin/admin。
【参考资料】
CDH集群手动导入scm库的更多相关文章
- CDH集群搭建部署
1. 硬件准备 使用了五台机器,其中两台8c16g,三台4c8g.一台4c8g用于搭建cmServer和NFS服务端,另外4台作为cloudera-manager agent部署CDH集群. ...
- cdh集群ip更改
#---1.修改每个用户的hosts vi /etc/hosts #127.0.0.1 localhost localhost.localdomain localhost4 localhost4.lo ...
- Cloudera Manager 4.6 安装部署hadoop CDH集群
Cloudera Manager 4.6 安装详解 1. Cloudera Manager介绍 1.1. 功能介绍 Cloudera Manager是一个针对hadoop集群的管理工具,功能包括:cd ...
- 基于yum安装CDH集群
一.环境准备 准备至少3台设备:CentOS7系统: 如果是在实验环境下,给虚拟机的内存至少4G,根建议1T,数据盘1T,由于是虚拟机,所以根分区和数据盘放心大胆的给:如果是在生产环境则多多益善:我这 ...
- 相同版本的CDH集群间迁移hdfs以及hbase
前言 由于项目数据安全的需要,这段时间看了下hadoop的distcp的命令使用,不断的纠结的问度娘,度娘告诉我的结果也让我很纠结,都是抄来抄去, 还好在牺牲大量的时间的基础上还终于搞出来了,顺便写这 ...
- 朝花夕拾之--大数据平台CDH集群离线搭建
body { border: 1px solid #ddd; outline: 1300px solid #fff; margin: 16px auto; } body .markdown-body ...
- Cloudera Manager安装_搭建CDH集群
2017年2月22日, 星期三 Cloudera Manager安装_搭建CDH集群 cpu 内存16G 内存12G 内存8G 默认单核单线 CDH1_node9 Server || Agent ...
- CDH集群安装&测试总结
0.绪论 之前完全没有接触过大数据相关的东西,都是书上啊,媒体上各种吹嘘啊,我对大数据,集群啊,分布式计算等等概念真是高山仰止,充满了仰望之情,觉得这些东西是这样的: 当我搭建的过程中,发现这些东西是 ...
- CDH集群部署hive建表中文乱码
背景:部署CDH集群的 hive 服务,选用 mysql 作为 hive 元数据的存储数据库,通过 hive cli 建表时发现中文注释均乱码. 现象:hive端建表中文注释乱码. 定位: 已经确认过 ...
随机推荐
- OpenStack核心组件-keystone
1. Keystone介绍 keystone是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...
- Rendering in UE4
Intro Thinking performance. Identify the target framerate, aim your approach on hitting that target ...
- kafka题目
1. Kafka的用途有哪些?使用场景如何?2. Kafka中的ISR.AR又代表什么?ISR的伸缩又指什么3. Kafka中的HW.LEO.LSO.LW等分别代表什么?4. Kafka中是怎么体现消 ...
- Python idle中lxml 解析HTML时中文乱码解决
例: <html><p>中文</p></html> 读取代码: 代码HTML需要进行decode('utf-8') 编译: p=etree.HTML(u ...
- danci8
approach 英 [ə'prəʊtʃ] 美 [ə'protʃ] n. 方法:途径:接近 vt. 接近:着手处理 vi. 靠近 emulate 英 ['emjʊleɪt] 美 ['ɛmjulet] ...
- 异常检测(Anomaly detection): 什么是异常检测及其一些应用
异常检测的例子: 如飞机引擎的两个特征:产生热量与振动频率,我们有m个样本画在图中如上图的叉叉所示,这时来了一个新的样本(xtest),如果它落在上面,则表示它没有问题,如果它落在下面(如上图所示), ...
- nginx的alias与root的区别
root的写法: location /request_path/image/ { root /local_path/image/; } 这样配置的结果就是当客户端请求 /request_path/im ...
- Spring源码窥探之:声明式事务
1. 导入驱动,连接池,jdbc和AOP的依赖 <!-- c3p0数据库连接池 --> <dependency> <groupId>c3p0</groupId ...
- SparkSQL-通过JDBC读写mysql数据库
object JdbcDatasourceTest { def main(args: Array[String]): Unit = { val spark = SparkSession .builde ...
- xshell连接不上阿里云服务器Could not connect to 'ip' (port 22): Connection failed.解决过程
记一次xshell阿里云服务器突然连接不上的解决办法: 1, 确认阿里云服务器安全组出入都有22,百度出来都说的这个和ip拦截设置,以防万一都设置了:但楼主设置后,还是连不上服务器: 只好下一步 2, ...