3.cdh搭建-mysq安装

CDH集群安装

Cloudera Manager 使用数据库来存储cm配置信息、系统健康和任务进度
快捷地、可以在cm安装过程中,安装嵌入的postgresql作为数据库
另外也可以使用自己安装的postgresql、mysql、mariadb或者oracle

版本选择

选择 CDH5.12 + mysql5.7

mysql版本支持列表
database_support_list

mysql 安装

# 卸载原有mariadb(所有节点)
rpm -qa | grep mariadb
>>>>>>
>   mariadb-libs-5.5.52-1.el7.x86_64
>>>>>>

rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

# 安装mysql5.7(rpm版本)
rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm

# 初始化数据库
mysqld --initialize --user=mysql

# 查看初始密码
cat /var/log/mysqld.log
>>>>>
 [Note] A temporary password is generated for root@localhost: kc+hsNuj0rc2
>>>>>

# 启动mysql服务
systemctl status mysqld.service
systemctl start mysqld.service
systemctl enable mysqld.service  (开机启动)

# 修改初始密码
mysql -uroot -p
kc+hsNuj0rc2

set password = password('123456');
update user set authentication_string=PASSWORD('123456') where user='root';
ALTER USER root@'%' IDENTIFIED BY '123456'

# 授权
grant all on *.* to root@'%' identified by '123456';
flush privileges;

# 配置
注意:如果sql引擎是MyISAM的话,cm无法启动
vi /etc/my.cnf(如下是官方推荐的设定)
    [mysqld]
    transaction-isolation = READ-COMMITTED
    # Disabling symbolic-links is recommended to prevent assorted security risks;
    # to do so, uncomment this line:
    # symbolic-links = 0

    key_buffer_size = 32M
    max_allowed_packet = 32M
    thread_stack = 256K
    thread_cache_size = 64
    query_cache_limit = 8M
    query_cache_size = 64M
    query_cache_type = 1

    max_connections = 550
    #expire_logs_days = 10
    #max_binlog_size = 100M

    #log_bin should be on a disk with enough free space.
    #Replace '/var/lib/mysql/mysql_binary_log'
    #with an appropriate path for your system
    #and chown the specified folder to the mysql user.
    #log_bin=/var/lib/mysql/mysql_binary_log

    # For MySQL version 5.1.8 or later. For older versions,
    binlog_format = mixed

    read_buffer_size = 2M
    read_rnd_buffer_size = 16M
    sort_buffer_size = 8M
    join_buffer_size = 8M

    # InnoDB settings
    innodb_file_per_table = 1
    innodb_flush_log_at_trx_commit  = 2
    innodb_log_buffer_size = 64M
    innodb_buffer_pool_size = 4G
    innodb_thread_concurrency = 8
    innodb_flush_method = O_DIRECT
    innodb_log_file_size = 512M

    #[mysqld_safe](5.7已取消)
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid

    sql_mode=STRICT_ALL_TABLES
:wq

# 重启mysql服务
systemctl stop mysqld.service
systemctl start mysqld.service

# 查看mysql 字符集变量
show variables like '%character%';

Markdown

# 安装jdbc connector
tar zxvf mysql-connector-java-5.1.43.tar.gz
cp mysql-connector-java-5.1.43/mysql-connector-java-5.1.43-bin.jar /usr/share/java/mysql-connector-java.jar
# 如果报错:目录不存在,则:
mkdir -p /usr/share/java/
cp mysql-connector-java-5.1.43/mysql-connector-java-5.1.43-bin.jar /usr/share/java/mysql-connector-java.jar

Path B and Path C require you to create databases for the Cloudera Manager Server, Oozie Server, Activity Monitor, Reports Manager, Hive Metastore Server, Hue Server, Sentry Server, Cloudera Navigator Audit Server, and Cloudera Navigator Metadata Server. If you choose to use PostgreSQL for Sqoop Server you must create an external database.

方法B 安装 要求为cm server 。。。创建数据库

配置CM server的数据库

/usr/share/cmf/schema/scm_prepare_database.sh database-type [options] database-name username password
#创建cm server的配置文件                         创建使用的数据库         设置数据库账户
#example
  /usr/share/cmf/schema/scm_prepare_database.sh mysql -h myhost1.sf.cloudera.com -utemp -ptemp --scm-host myhost2.sf.cloudera.com scm scm scm
#mysql-config
    /usr/share/cmf/schema/scm_prepare_database.sh mysql -h master.reco.com -uroot -p123456 -P3306 --scm-host master.reco.com scm scm scm  
    !!!>>>出现创建完数据库,root用户对scm数据库无权限的问题,如果是本地访问就不会有这样的问题
#final-config
    /usr/share/cmf/schema/scm_prepare_database.sh mysql -h localhost -uroot -p123456  scm scm scm  
    >>>>
    >   All done, your SCM database is configured correctly!
    >>>>

require_params
options

可选

配置ozzie等组件的数据库

可以使用cm来创建各组件的数据库
也可以手动配置外部的数据库

配置hue的数据库

mysql> create database database DEFAULT CHARACTER SET utf8;
mysql> grant all on database.* TO 'user'@'%' IDENTIFIED BY 'password';

>>>>>
mysql> create database metastore DEFAULT CHARACTER SET utf8;
mysql> grant all on metastore.* TO 'hive'@'%' IDENTIFIED BY 'hive';

注意:
使用UTF8编码的所有自定义的数据库。
如果gtid复制启用基于MySQL Cloudera经理安装失败。
hue需要默认的MySQL / MariaDB版本(如果使用)安装它
MySQL的社区和企业版本都得到了支持 包括aws的mysql

重要的是: 当您重新启动过程,每个服务的配置重新使用保存在Cloudera管理数据库信息。
如果此信息不可用,则您的群集无法正常启动或正常运行。
你必须计划和保持定期备份数据库的Cloudera经理在该数据库丢失的情况下恢复群集。

附录

mysql 安装失败,卸载重装

0. 停止mysqld服务
    systemctl stop mysqld.service  (不行的话重启>reboot)
1. 查看已安装的mysql
    rpm -qa | grep mysql
2. 卸载列出的所有rpm
    rpm -e mysql-community[**]-common-5*
3. 删除所有mysql相关的文件、目录
    find / -name "*mysql*"
    rm -rf *mysql*   /var/lib/mysql
/var/lib/mysql/mysql
/var/log/mysqld.log
/var/log/mysql.log

4. 重新安装

find / -name “MySQL-python

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值