Hive之最新方式MySQL5.7 安装

检查是否已经安装 mysql(两种方式)
text 复制代码
[root@master ~]# rpm -qa | grep mysql
[root@master ~]# yum list installed | grep mysql

centos 7 下需要删除 mariadb检查:

text 复制代码
[root@master ~]# rpm -qa | grep mariadb

删除如下:强制删除

如果已经安装,卸载掉原 mysql

text 复制代码
[root@master ~]# rpm -e mysql 【一般删除,如果提示依赖的其他文件,则不能删除】
[root@master ~]# rpm -e --nodeps mysql 【强力删除,包含各种依赖包】

第二种方式删除删除 MySQL 及其依赖的包

text 复制代码
[root@master ~]# yum remove mysql-*

查询遗留目录:

text 复制代码
[root@master ~]# ls /etc/my.cnf(一般情况都没用这个)/etc/my.cnf
[root@master ~]# ll /var/lib/mysql/
total 28700
-rw-rw---- 1 mysql mysql    16384 May  5 10:31 aria_log.00000001
-rw-rw---- 1 mysql mysql       52 May  5 10:31 aria_log_control
-rw-rw---- 1 mysql mysql 18874368 May  5 10:31 ibdata1
-rw-rw---- 1 mysql mysql  5242880 May  5 10:31 ib_logfile0
-rw-rw---- 1 mysql mysql  5242880 Oct  6  2017 ib_logfile1
drwx------ 2 mysql mysql     4096 Oct  6  2017 mysql
drwx------ 2 mysql mysql     4096 Oct  6  2017 performance_schema

删除遗留目录:

text 复制代码
[root@master ~]# rm -rf /etc/my.cnf
[root@master ~]# rm -rf /var/lib/mysql/
下载 rpm 文件:

方法 1:在虚拟机中通过 wget 方式下载

text 复制代码
[root@master ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm

方法 2:在浏览器中通过官网下载打开:

text 复制代码
https://dev.mysql.com/downloads/repo/yum/
选择:Red Hat Enterprise Linux 7 / Oracle Linux 7 (Architecture Independent),
 RPM Package点击:download
 进入下载页面点击:No thanks, just start my download.
 即可下载该rpm文件下载完成,上传到虚拟机
安装 rpm 文件:
text 复制代码
[root@master ~]# rpm -ivh mysql80-community-release-el7-5.noarch.rpm

查看默认安装版本:

text 复制代码
yum repolist all | grep mysql

取消默认安装 mysql8.0

text 复制代码
yum-config-manager --disable mysql80-community

设置默认安装 mysql5.7

text 复制代码
yum-config-manager --enable mysql57-community
如遇到报错信息:
text 复制代码
yum-config-manager: command not found        

则执行以下命令:

text 复制代码
yum -y install yum-utils 

#重新加载yum

text 复制代码
yum clean allyum makecache        

再去执行 取消 / 设置默认 mysql 安装的命令

安装 mysql-server
text 复制代码
[root@master ~]# yum -y install mysql-community-server

安装完毕后,运行 mysql,启动 mysql 服务:

text 复制代码
[root@master ~]# systemctl start mysqld.service

关闭强密码验证:(如果不设置简单密码,忽略此步骤)

text 复制代码
[root@master ~]# vim /etc/my.cnf

在文件的后面添加以下内容

text 复制代码
plugin-load=validate_password.so
validate-password=OFF

重启mysql

text 复制代码
[root@master ~]# systemctl restart mysqld

然后在 /var/log/mysqld.log 文件中会自动生成一个随机的密码,我们需要先取得这个随机密码,以用于登录 MySQL 服务端:

text 复制代码
[root@master ~]# grep "temporary password" /var/log/mysqld.log
将会返回如下内容,末尾冒号后面的字符串就是密码,把它复制下来:
A temporary password is generated for root@localhost: hilX0U!9i3_6

登录到 MySQL 服务端并更新用户 root 的密码:

text 复制代码
注意:由于 MySQL5.7 采用了密码强度验证插件 validate_password,故此我们需要设置一个有一定强度的密码;      
如果关闭了强密码验证,就可以设置如123456这样简单的密码;
[root@master ~]# mysql -u root -p
hilX0U!9i3_6
更改密码
text 复制代码
mysql> SET PASSWORD = PASSWORD('your new password');
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
mysql> flush privileges;
查询用户表
text 复制代码
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select  User,authentication_string,Host from user;
+---------------+-------------------------------------------+-----------+
| User          | authentication_string                     | Host      |
+---------------+-------------------------------------------+-----------+
| root          | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost |
| mysql.sys     | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | localhost |
| root          | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | %         |
+---------------+-------------------------------------------+-----------+4 rows in set (0.00 sec)
mysql>
设置用户 root 可以在任意 IP 下被访问:
text 复制代码
mysql> grant all privileges on *.* to root@"%" identified by "your password";

设置用户 root 可以在本地被访问:

text 复制代码
mysql> grant all privileges on *.* to root@"localhost" identified by "your password";

设置用户 root 可以在master节点被访问:

text 复制代码
mysql> grant all privileges on *.* to root@"master" identified by "your password";

刷新权限使之生效:

text 复制代码
mysql> flush privileges;

退出MySQL:

text 复制代码
mysql> exit
设置开机启动 MySQL 服务(完成这步,mysql 基本搞定了)
text 复制代码
>>> systemctl enable mysqld

参考文章

相关推荐
Zhu75821 小时前
在k8s集群环境部署高可用的Apache Hadoop3.1.1定制版集群
hadoop·kubernetes
Y3815326621 天前
3 种 SERP 数据 ETL 方案对比:实时 / 定时 / 流式
数据仓库·etl
还有你Y2 天前
软件工程架构
hadoop·架构·软件工程
向夏威夷 梦断明暄2 天前
基于Tez引擎的 Hive SQL 性能优化
hive·sql·性能优化
这个DBA有点耶2 天前
交易型数据库是什么?OLTP核心能力与2026选型指南
数据库·数据仓库·sql·database·数据库架构·olap·dba
RestCloud3 天前
Informatica迁移国产ETL完整实施指南:ETLCloud自动化平滑替换方案
数据仓库·etl·etlcloud·数据传输·数据集成工具·informatica·国产化替代
德昂信息dataondemand4 天前
全量还是增量?聊聊数仓ETL中的数据同步策略
数据仓库·etl
观远数据5 天前
数据集成平台选型战卡:DataFlow对比传统ETL的5个维度与红线排除项
数据仓库·etl
Database_Cool_5 天前
云数据仓库开通指南:阿里云 AnalyticDB MySQL 10 分钟从 0 到分析实战教程
数据仓库·mysql·阿里云