大数据全系列 教程
1869个小节阅读:467.1k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
##2.3 MySQL安装
当前hive对关系型数据库版本要求如下:
先将四台虚拟机拍快照,然后再进行安装,node1上安装:
将mysql的五个rpm包上传到/opt/apps目录
xxxxxxxxxx
[root@node1 ~]# cd /opt/apps
#拷贝mysql的安装的rpm包
检查当前节点上是否存在mysql安装包,存在则删除:
xxxxxxxxxx
[root@node1 apps]# rpm -qa | grep mysql
[root@node1 apps]# rpm -qa | grep mariadb-libs
mariadb-libs-5.5.68-1.el7.x86_64
[root@node1 apps]# rpm -e --nodeps mariadb-libs
#如果不处理 mariadb-libs,后续安装的时候会出现如下错误提示:
错误:依赖检测失败:
mariadb-libs 被 mysql-community-libs-5.7.28-1.el7.x86_64 取代
mariadb-libs 被 mysql-community-libs-compat-5.7.28-1.el7.x86_64 取代
#找到的mysql相关的包都删除 *号指代实际包名, 请实际情况输入完整包名
#rpm -e --nodeps mysql-community-libs-*
#rpm -e --nodeps mysql-community-server-*
#rpm -e --nodeps mysql-community-common-*
#rpm -e --nodeps mysql-community-client-*
#rpm -e --nodeps mysql-community-libs-compat-*
检查并删除老版本mysql的开发头文件和库
xxxxxxxxxx
[root@node1 apps]# find / -iname 'mysql*'
#rm -rf /var/lib/mysql
#rm -f /etc/my.cnf
注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除
安装依赖包:net-tools libaio
xxxxxxxxxx
yum install -y net-tools libaio
安装mysql(有顺序要求)
xxxxxxxxxx
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64
rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64
rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64
执行这个,自动识别安装顺序:
xxxxxxxxxx
rpm -ivh mysql-community-*
修改/etc/my.cnf文件,设置数据库的编码方式:
xxxxxxxxxx
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character_set_server=utf8
初始化数据库
xxxxxxxxxx
[root@node1 apps]# mysqld --initialize --user=mysql
如果出现错误,请查看/etc/my.cnf文件中指定的错误log日志的文件:log-error=/var/log/mysqld.log
找到随机密码:
在/var/log/mysqld.log中有一行:
A temporary password is generated for root@localhost,后面就是随机密码
# mysql -uroot -p"yAe7QGVJ;HlR"使用随机密码登录系统
启动服务:systemctl start mysqld
登录mysql数据库:
xxxxxxxxxx
[root@node1 apps]# mysql -uroot -p
Enter password: 输入临时密码
修改默认密码
xxxxxxxxxx
mysql> set password for 'root'@'localhost'=password('123456');
查看编码方式:
xxxxxxxxxx
mysql> show variables like '%character%';
给root设置远程登录权限
xxxxxxxxxx
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
mysql> exit
Bye
[root@node1 apps]# mysql -uroot -p123456