Linux7离线安装MySQL8.0.37版本
一、Mysql的版本介绍:
MySQL Community Server 社区版本,开源免费,自由下载,但不提供官方技术支持,适用于
大多数普通用户。
MySQL Enterprise Edition 企业版本,需付费,不能在线下载,可以试用30天。提供了更多的
功能和更完备的技术支持,更适合于对数据库的功能和可靠性要求较高的企业客户。
MySQL Cluster 集群版,开源免费。用于架设集群服务器,可将几个MySQL Server封装成一个
Server。需要在社区版或企业版的基础上使用。
MySQL Cluster CGE 高级集群版,需付费。
二、官网下载安装
1、官网地址下载地址:https://www.mysql.com/downloads/
三、安装MySQL到Linux上:
1、将下载的文件上传到服务器:
解压文件:
tar -xvf mysql-8.0.37-1.el7.x86_64.rpm-bundle.tar
2、检查系统MySQL的依赖:
-
检查
/tmp
临时目录的权限由于MySQL安装的过程中会通过MySQL用户在
/tm
p目录下新建tmp_db文件,所以请给/tmp较大的权限。执行:chmod -R 777 /tmp
-
安装前检查依赖(如果不存在的依赖包自行下载安装)
# 检查libaio包是否存在 rpm -qa | grep libaio
# 检查net-tools包是否存在: rpm -qa | grep net-tools
3、开始安装:
在文件所在目录/opt
执行下面的安装命令(严格按照下面的命令顺序执行)
rpm -ivh mysql-community-common-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.37-1.el7.x86_64.rpm
# 注意在这里安装会报错,按照以下操作处理
在 Linux 系统中,mariadb-libs
是 MariaDB 数据库的库文件包,而 mysql-community-libs
是 MySQL 社区版的库文件包。这两个数据库系统虽然都是基于 MySQL,但它们是不同的分支和项目。
执行下面的命令卸载mariadb-libs
yum remove -y mariadb-libs
重新执行安装命令,显示成功
rpm -ivh mysql-community-client-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.37-1.el7.x86_64.rpm
# 这里执行命令是会报错,按照如下步骤操作
/usr/bin/perl:这是 Perl 语言的解释器。MySQL 社区服务器在某些情况下会使用 Perl 脚本进行配置或管理任务。
执行下面命令进行安装
yum install -y perl
重新执行安装命令,显示成功
到此MySQL就安装完成了
检查是否安装成功:
mysql --version
4、服务初始化
为了保证数据库目录与文件的所有者为mysql登录用户,如果你是以root身份运行mysql服务,需要执行下面的命令做初始化:
mysqld --initialize --user=mysql
这个命令会创建系统表、权限表和其他必要的表,并设置数据库的 root 用户密码(自动生成)。
命令解释
-
mysqld
:这是 MySQL 服务器的守护进程。 -
--initialize
:这个选项用于初始化 MySQL 数据库系统。 -
--user=mysql
:这个选项指定运行 MySQL 服务的用户。默认情况下,MySQL 服务通常以mysql
用户运行。
查看服务状态:
systemctl status mysqld
可以看出现在的服务还没有启动起来,执行下面的命令启动MySQL服务:
systemctl start mysqld
设置开启自启动(根据实际情况来设置):
systemctl enable mysqld.service
# 查看设置的状态
systemctl list-unit-files | grep mysqld.service
5、登录MySQL服务
查看初始化密码,执行下面的命令:
cat /var/log/mysqld.log
这个就是MySQL服务初始化生成的密码,使用该密码登录MySQL:
mysql -uroot -p
当我们在MySQL的终端执行命令时会提示我们需要修改密码:
执行下面的命令来修改密码:
alter user 'root'@'localhost' identified by 密码;
# 注意生产环境的密码不能设置的太简单
再执行上面的查询命令就不会报错了;