0618-6.1.1-如何在CDH6集群内节点安装MySQL5.7.22

Fayson的github: https://github.com/fayson/cdhproject

推荐关注微信公众号:“Hadoop实操”,ID:gh_c4c535955d0f

1 文档编写目的

在安装CDH集群时,可能会选择不同外部数据库作为集群的元数据库,具体可以参考《CDH安装前置准备》。在这里选择MySQL作为集群的元数据库,MySQL有两种安装方式,RPM或者TAR包的方式进行安装。Fayson在使用RPM的方式安装的过程中遇到mariadb-libs依赖包冲突的问题,因为RPM安装MySQL时会自动安装mysql-community-libs依赖包,而在安装Cloudera Agent服务时会强依赖mariadb-libs包,导致mariadb-libs和mysql-community-libs包冲突,导致Agent服务安装失败。因此本文档采用TAR方式在ReadHat7.2上安装MySQL5.7.22。

  • 内容概述

1.环境准备

2.Tar包安装MySQL5.7.22

3.MySQL登录测试

4.总结

  • 测试环境

1.CM和CDH版本为6.1.1

2.MySQL5.7.22

2 安装前置准备

1.卸载原有MariaDB

rpm -e --nodeps mariadb-server-5.5.44-2.el7.x86_64 mariadb-5.5.44-2.el7.x86_64

在这里插入图片描述

在这里插入图片描述

2.删除配置文件及数据目录,保证MariaDB完全的卸载

rm -rf /var/lib/mysql
rm -f /etc/my.cnf

在这里插入图片描述
3.下载MySQL的Tar安装包

https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.22-el7-x86_64.tar.gz

在这里插入图片描述
4.在OS上创建mysql用户

检查mysql用户和组是否存在,由于已经存在,所以不用再创建。

如果不存在则创建,命令为:

useradd mysql

在这里插入图片描述

3 MySQL安装

1.解压下载好的mysql-5.7.22-el7-x86_64.tar.gz压缩包到/var/lib目录下

tar -zxvf mysql-5.7.22-el7-x86_64.tar.gz
mv mysql-5.7.22-el7-x86_64 /var/lib/mysql

在这里插入图片描述
2.创建MySQL数据目录并修改目录属主

mkdir -p /var/lib/mysql/data
chown -R mysql:mysql /var/lib/mysql

在这里插入图片描述

在这里插入图片描述

3.创建MySQL日志目录/var/log/mysql,并修改目录属主

mkdir -p /var/log/mysql
chown -R mysql:mysql /var/log/mysql

在这里插入图片描述

4.进入到MySQL安装目录的bin目录下,执行如下命令初始化MySQL数据库

mysqld --initialize --user=mysql --basedir=/var/lib/mysql/ --datadir=/var/lib/mysql/data/

在这里插入图片描述
初始化成功后,在上图中最后一行可以看到,显示了生成的默认密码FngeS+shE8Fj,

需要记录下该密码,在初次登录MySQL时需要使用该密码。

5.修改MySQL配置文件/etc/my.conf(MySQL服务启动默认加载的是该配置文件)

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock

[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/var/lib/mysql
# 设置mysql数据库的数据的存放目录
datadir=/var/lib/mysql/data
# 允许最大连接数
max_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
max_allowed_packet=16M
socket=/var/lib/mysql/mysql.sock
log-bin=mysql-bin
server-id=36
binlog_format=MIXED

#慢日志位置 
slow_query_log_file=/var/log/mysql/slow_query.log
#慢日志时间
long_query_time=1
#开启慢日志
slow_query_log=TRUE

[client]
socket=/var/lib/mysql/mysql.sock

在这里插入图片描述
6.将MySQL服务添加到系统自启动服务列表中

cp /var/lib/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

设置MySQL开机自启动

systemctl enable mysqld

启动MySQL并查看状态

systemctl start mysqld
systemctl status mysqld

在这里插入图片描述

4 MySQL登录验证

1.初次登录使用初始化数据库时生成的默认密码,登陆MySQL后,需要修改root用户密码

set password=password('!qQ123456');
flush privileges;

在这里插入图片描述

2.创建一个测试库及测试表

在这里插入图片描述

向表中插入数据

在这里插入图片描述

查看插入的数据

在这里插入图片描述

5 总结

Fayson在使用RPM的方式安装的过程中遇到mariadb-libs依赖包冲突的问题,因为RPM安装MySQL时会自动安装mysql-community-libs依赖包,而在安装Cloudera Agent服务时会强依赖mariadb-libs包,导致mariadb-libs和mysql-community-libs包冲突,导致Agent服务安装失败。本篇文章采用Tar包的方式安装MySQL5.7.22数据库解决依赖包冲突问题。

在卸载mariadb依赖包时避免使用yum remove方式,该卸载方式会导致卸载掉很多额外的依赖包,可能会影响到OS其它服务的正常使用,建议使用rpm -e --nodeps mysql-community-libs方式卸载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值