目前,主要使用的MySQL有5.7和8.0两个版本,在安装上,5.7和8.0版本基本一致,区别只在于配置root密码和远程登陆上不同。本次将以5.7版本作为对象,进行后续安装。
1.wget下载MySQL安装文件
wget
https://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar
下载完成,得到mysql的tar包:
解压tar包:
tar -xvf mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar
2.通过rpm安装MySQL
对各个rpm程序进行安装:
rpm -ivh mysql-community-client-5.7.42-1.el7.x86_64.rpm --nodeps
–force rpm -ivh mysql-community-common-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-devel-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm
-ivh mysql-community-embedded-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-embedded-compat-5.7.42-1.el7.x86_64.rpm
–nodeps --force rpm -ivh mysql-community-embedded-devel-5.7.42-1.el7.x86_64.rpm --nodeps
–force rpm -ivh mysql-community-libs-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-libs-compat-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-server-5.7.42-1.el7.x86_64.rpm --nodeps --force rpm
-ivh mysql-community-test-5.7.42-1.el7.x86_64.rpm --nodeps --force
Centos 依赖检测失败: mysql-community-libs(x86-64)5.7.9 被 mysql-community-client-5.7.30-1.el7.x86_64 需要
[ 原因 ]:
之前安装低版本MYSQL并未出现该问题。
个人认为应该是MYSQL版本过高,导致某些依赖无法找到。
可以将MYSQL版本降低,该问题不会出现。
也有可能安装之前删除了mariadb
[ 解决 ]:
在安装指令末尾加上 --nodeps --force ,即安装时不检查依赖关系。
rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm --nodeps --force
该方法可以成功安装成功,但大概率还是不能成功启动MYSQL服务,因为缺少一些依赖关系。
目前并未找到太好的解决办法,后续有解决办法会继续贴上来。
我自己将MYSQL版本降低到5.5x安装没有出现该情况。
建议使用docker
【后续补充】
出现该问题的原因可能为,在安装MYSQL之前,删除了mariadb,导致部分依赖找不到,通过以下指令重新安装mariadb。
yum install mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb
安装高版本可以通过以下方式安装:
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
yum -y install mysql-community-server
mysql --version
systemctl start mysqld
如上图所示,在安装”mysql-community-test“时报错,对于错误的处理如下:
处理第一个错误perl(data::Dumper):
yum -y install autoconf
处理第二个报错perl(JSON):
yum install perl-JSON.noarch -y
yum install perl.x86_64 perl-devel.x86_64 -y
处理完上述两个报错后,继续安装”mysql-community-test“:
3.初始化MySQL
mysqld --initialize --console
4.对MySQL目录进行授权
chown -R mysql:mysql /var/lib/mysql/
5.MySQL初始设置
5.1 启动MySQL,并查看其状态
systemctl start mysqld
systemctl status mysqld
5.2 查看MySQL临时密码
cat /var/log/mysqld.log | grep password
+aQw19>dUFw!
5.3 使用临时密码登录MySQL
mysql -u root -p
5.4 设置MySQL密码
alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘root123’;
flush privileges;