继Centos 7(x86_64位)安装图解过程后,接下来开始在已安装好的CentOS7系统上安装MySQL8.0.18数据库(据说比MySQL57快2倍)。
安装方式说明:
MySQL官方文档有给出安装方式的说明文档,链接如下:
https://dev.mysql.com/doc/refman/8.0/en/linux-installation.html
主要有使用Yum Repository以及rpm两种方式,因实际环境无法正常接入网络,本文采用了rpm的安装方式,后续再讲解使用Yum Repository的安装方式。
获取MySQL安装包:
MySQL官网地址:https://www.mysql.com:
在MySQL官网首页点击“DOWNLOADS”转到下载页面,下拉找到“MySQL Community (GPL) Downloads”社区版下载入口点击前往:
在下载页面找到“MySQL Community Server”并点击前往:
在打开的页面如图选择操作系统及操作系统版本:
下拉选择RPM Bundle包并下载,注意,此文件后缀为.tar,是所有rpm文件的合集,其他文件则为独立的rpm文件:
点击“No thanks, just start my download.”开始下载:
下载获取的文件:
开始安装
启动之前安装的CentOS 7服务器虚拟机,注意保持之前安装CD文件挂载(如安装系统后无硬件编辑无视此操作):
使用Xshell等工具连接到服务器:
使用Xftp工具将下载的安装包上传到服务器,位置随意,只要你能找到就好:
【嫌麻烦的,上述步骤可以获取合集包下载地址后直接在Linux中用“wget 下载url”来下载文件】
通过Xshell切换到上传文件的目录并使用“tar -xvf mysql-8.0.18-1.el7.x86_64.rpm-bundle.tar”解压安装合集包【想看解压进度的可以加-v 不想看的直接把-v去掉即可】:
开始安装,先将目录下的.tar集合包移到其他目录或删除,然后使用如下命令开始安装:
sudo rpm -Uvh mysql-community-{server,client,common,libs}-*
-U代表升级
或者
sudo rpm -ivh mysql-community-{server,client,common,libs}-*
-i代表安装
-----------------------------------------华丽分界线-----------------------------------------
注意:上述安装命令可能会出现以下几种错误:
错误1: mysql-community-libs和mysql-community-libs-compat 这两个包安装不上:
原因: CentOS7默认安装mariaDB导致
解决: 卸载mariaDB,命令及操作截图如下:
Step 1 查询当前系统中安装的mariaDB:
rpm -qa | grep mariadb
Step 2 无视依赖卸载已安装的mariaDB:
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
错误2: net-tools 被 mysql-community-server-8.0.18-1.el7.x86_64 需要
原因: 因本次安装的操作系统为最小安装,故预安装被淘汰的net-tools组件
解决: 在安装镜像中获取并安装net-tools,命令及操作截图如下:
Step 1 在/mnt目录创建cdrom目录并挂载光驱:
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom/
Step 2 切换至挂载光驱目录的Packages目录并找到net-tools安装包:
cd /mnt/cdrom/Packages
ll | grep net-tools
Step 3 使用rpm命令安装net-tools:
rpm -ivh net-tools-2.0-0.24.20131004git.el7.x86_64.rpm
错误3
/usr/bin/perl 被 mysql-community-server-8.0.18-1.el7.x86_64 需要
perl(Getopt::Long) 被 mysql-community-server-8.0.18-1.el7.x86_64 需要
perl(strict) 被 mysql-community-server-8.0.18-1.el7.x86_64 需要
原因: 最小安装缺少相关环境
解决: 在挂载光驱Packages目录下安装缺少软件即可,命令及操作截图如下:
Step 1 无依赖安装perl,解决/usr/bin/perl和perl(strict)需要
rpm -ivh perl-5.16.3-293.el7.x86_64.rpm --nodeps
Step 2 无依赖安装perl-Getopt-Long,解决perl(Getopt::Long)需要
有个坑,如果不用--nodeps
或报很多依赖错误
如发生其他依赖问题可按照如下网址查找并下载依赖文件:
https://centos.pkgs.org/7/mysql-8.0-x86_64/
-----------------------------------------华丽分界线-----------------------------------------
执行rpm安装命令:
至此安装完毕!
启动并使用MySQL8
通过rpm安装的MySQL默认是未启动状态,使用如下命令启动并检查MySQL状态:
systemctl start mysqld
systemctl status mysqld
通过rpm安装的MySQL会生成默认登录密码,使用如下命令查询指定路径文件即可获取:
sudo grep 'temporary password' /var/log/mysqld.log
官方给出方法
cat /var/log/mysqld.log | grep 'temporary password'
使用cat方法
使用root账户及默认密码验证方式登录MySQL:
mysql -uroot -p
使用默认生成密码登录后无法进行任何操作除修改管理员密码,使用如下命令修改管理员密码【MySQL8自带validate_password组件,要求设置的密码具有足够的复杂度】:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
退出后,使用新密码重新登录系统即可尽情使用MySQL8!
至此安装完毕!
参考借鉴:
https://dev.mysql.com/doc/refman/8.0/en/linux-installation-rpm.html
https://www.cnblogs.com/Twobox/p/9925460.html
非常感谢!