Redhat8.2安装MySQL5.7

1.yum在线安装


1.换源,用Centos-8.repo(点击进去可直接下载文件)替换掉/etc/yum.repos.d/redhat.repo这个文件

yum clean all  # 清理yum缓存,使设置生效
yum makecache  # 将服务器上的软件包信息缓存到本地,以提高搜索安装软件的速度

yum repolist  #显示所有仓库

最后会变成这个样子
Redhat8.2安装MySQL5.7


2.创建文件夹/soft用来存放安装源
cd /soft/

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

yum install -y mysql57-community-release-el7-10.noarch.rpm

yum -y install mysql-community-server

如果最后一步yum -y install mysql-community-server报错,请看下面

[root@localhost soft] yum -y install mysql-community-server
Repository epel is listed more than once in the configuration
上次元数据过期检查:0:26:30 前,执行于 2020年08月14日 星期五 15时12分25秒。
All matches were filtered out by modular filtering for argument: mysql-community-server
错误:没有任何匹配: mysql-community-server
=================================================================================
!!!!解决方法!!!!
先执行:yum module disable mysql
再执行:yum install mysql-community-server

最后等待安装完毕即可


2.yum离线安装包安装

https://dev.mysql.com/downloads/mysql/
解压查看:(注意包名)
tar xf mysql-5.7.14-1.el7.x86_64.rpm-bundle.tar
其中:

mysql-community-client 客户端
mysql-community-devel 开发库
mysql-community-common 服务端和客户端的公共文件
mysql-community-embedded 嵌入式
mysql-community-serve 服务端
mysql-community-test 测试组件
mysql-community-libs 共享库
mysql-community-libs-compat MySQL之前版本的共享兼容库

安装:
首先限制mariadb相关软件包,否则安装不会成功的。

yum remove mariadb-libs

安装顺序总结:
a.rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
b.rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
c.rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
d.rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm(可能会因为缺少依赖包报错)

1.rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
a.报错
Redhat8.2安装MySQL5.7b.执行dnf install ncurses-compat-libs,错误解决了两个,但是依旧报错
Redhat8.2安装MySQL5.7c.显示缺少libs,那就先安装mysql-community-libs-5.7.30-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm

Redhat8.2安装MySQL5.7
d.依旧报错,显示缺少mysql-community-common-5.7.30-1.el7.x86_64.rpm,那就安它

1/4:rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm

成功了,接下来就反着推,一步步安装
Redhat8.2安装MySQL5.7
2/4rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm成功

Redhat8.2安装MySQL5.73/4rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm 成功
Redhat8.2安装MySQL5.74/4rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm报错了

Redhat8.2安装MySQL5.7这个看得出来大概意思时缺少perlnet-tools这两个
(1/2 先安装perl看看
yum -y install perl.x86_64
Redhat8.2安装MySQL5.7问题解决了一个
(2/2安装net-tools

Redhat8.2安装MySQL5.7OK,问题解决,安装完成

之后就启动数据库

=============启动数据库
[root@localhost soft] systemctl start mysqld
[root@localhost soft] systemctl enable mysqld  
=============检查服务有无开启
[root@localhost soft] systemctl is-active mysqld.service
active   #开启
[root@localhost soft] systemctl is-enable mysqld
Unknown operation is-enable.

查找初始随机密码grep 'temporary password' /var/log/mysqld.log
Redhat8.2安装MySQL5.7OK,至此rpm离线安装MySQL5.7.30.1安装完毕


3. 通用二进制方式安装

1、下载glibc版本的Mysql:https://downloads.mysql.com/archives/community/
选择Linux - Generic,之后选择需要的版本即可
Redhat8.2安装MySQL5.7
2、新建用户以安全方式运行进程

groupadd -r -g 306 mysql
useradd -g 306 -r -u 306 mysql

3、安装并初始化mysq
利用xfpt将文件传输到/usr/local/

[root@localhost ~] cd /usr/local/
[root@localhost local] tar xf mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz
[root@localhost local] ln -sv mysql-5.7.14-linux-glibc2.5-x86_64 mysql  #创建软连接,方便之后操作
"mysql" -> "mysql-5.7.14-linux-glibc2.5-x86_64"
[root@localhost local] chown -R mysql.mysql mysql/*

4、为mysql提供主配置文件

[root@localhost local] cd /usr/local/mysql
[root@localhost mysql] \cp support-files/my-default.cnf /etc/my.cnf
vim /etc/my.cnf
# 添加如下行指定mysql数据文件的存放位置:
datadir = /usr/local/mysql/data

5、为mysql提供sysv服务脚本

[root@localhost mysql] cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@localhost mysql] chmod +x /etc/rc.d/init.d/mysqld

6、启动mysql

chkconfig --add mysqld --添加为系统服务
chkconfig mysqld on --开机自启动
systemctl start mysqld

7、将mysql的bin目录加入PATH环境变量,编辑/etc/profile文件

# 添加前
[root@localhost mysql]# mysql
-bash: mysql: 未找到命令
## 由于PATH环境变量中没有添加,因此有两种方式:
## 一种是用绝对路径,如下:
/usr/local/mysql/bin/mysql
======================================================================================
!!!!!!!用这种更好!!!!!!
第一种用起来比较麻烦,我们下面用第二种添加到PATH
cd /etc/profile.d/
vim mysql.sh

• 添加如下内容
export PATH=$PATH:/usr/local/mysql/bin
之后
source mysql.sh

安装完成
接下来进入数据库时可能出现如下报错(找不到libncurses.so.5)

[root@localhost ~]   mysql -u root -p 
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

解决方法

原因:mysql在启动时发现缺少 libncurses.so.5 这个依赖,并且在/usr/lib以及/lib中也无法找到该依赖

解决:在/usr/lib、/lib、/usr/lib64中寻找一个大于或者等于该依赖版本的依赖文件,我的是在/usr/lin64中找到了一个libncurses.so.6.1,然后建立一个软链接(相当于快捷方式):
sudo ln -s 文件路径 快捷方式路径
sudo ln -s /usr/lib64/libncurses.so.6.1 /usr/lib64/libncurses.so.5
这样就在/usr/lib64下建立了一个libncurses.so.5的快捷方式。mysql在启动时就会寻找该libncurses.so.5依赖的快捷方式,最后实际链接到了libncurses.so.6.1依赖。

上一篇:【552】获取 cplex academic 版本(community 转移)


下一篇:AttributeError: module ‘community‘ has no attribute ‘best_partition‘ 问题的解决