注意,我们搭建的 mysql 环境是在 Linux 的 Centos7 环境下安装的~
注意,我们在安装和卸载中,先将用户切换为 root,一旦安装,普通用户也能使用,初期学习的时候我们尽量先使用 root 进行学习。
在我们的机器上安装 mysql 之前,先要把不要的环境卸载,例如 mysql 和 mariadb 等,我们可以先检查一下我们的环境是否安装有这些 mysql 和 mariadb ,指令为:ps ajx | grep mysql
,运行如下:
如上,我的机器上是有 mysql 相关的服务的。
再检查 mariadb :
如上,我的机器上是没有 mariadb 的,上面出现的进程是 grep 语句的进程。
所以我们先卸载我的机器上的 mysql ,在卸载之前我们先把 mysql 的服务停止,其中 mysql 的服务器为 mysqld,所以我们先把 mysqld 停止服务,指令为:systemctl stop mysqld.service
,如下:
再检查一下 mysql 是否还在运行:
如上图,mysql 已经停止了。
现在我们要开始检查系统安装包,其指令为:rpm -qa | grep mysql
,如下:
如上,我们的机器上是有 mysql 的系统安装包的,所以我们先开始卸载这些安装包,其指令为:rpm -qa | grep mysql | xargs yum remove -y
,由于我们现在是 root 用户,所以不用 sudo 权限,执行如下:
接下来我们再重新检查一下这些安装包是否还在:
如上图,我们已经把环境卸载干净了。
另外我们还可以检查一下 mysql 的配置文件是否还存在,不在说明我们的环境已经卸载干净了,如下:
在安装官方 mysql yum 之前,首先要获取 mysql 官方 yum 源,官方链接为-> mysql官方yum源.
我们进入链接之后会看到各种 mysql 的版本,此时我们需要结合自己的系统版本来下载,例如我们先检查一下我自己的版本:cat /etc/redhat-release
如上图,我的环境是 Centos 7.6 的,所以在找 mysql 安装包的时候尽量找与自己系统相匹配的版本。
在上面官方链接中,其实还有很多细节没有体现出来,所以我们可以右键鼠标,查看页面源代码,可以显示更多细节,如下图:
首先我们在选择的时候,选择 mysql5.7,因为这个是最常用的,而且要选择 el7 版本的,即 Centos 7 的,但是我们在里面并没有找到 Centos 7.6 的版本的,如下图:
如果大家在上面有相匹配的版本的话,可以直接下载,但是我们这里没有 Centos 7.6 的版本,所以我们选择下载 el7 的版本:
点击下载即可,下载完毕后会下载到我们的本地,如下:
此时我们将它剪切到我们的桌面上,方便后面的操作。
然后我们回到 Linux 中,为了方便操作,我们新建一个 MySQL 的目录,并进入该目录进行操作:
接下来我们需要将刚刚在 Windows 下载的 rpm 包上传上来,先使用 rz
指令,会出现以下窗口:
我们在桌面上选中刚下载的 rpm 包上传即可。
如上图,这个 rpm 包就成功上传到我们的 Linux 中了,接下来我们就要对它进行安装了。
首先我们先查看一下我们的 yum源列表,指令为:ls /etc/yum.repos.d/ -l
,如下:
以上就是我们系统中默认所支持的 yum源,我们会发现里面并没有 mysql 的,所以我们并不能直接进行安装,我们先要进行 yum源 安装,其指令为:rpm -ivh mysql57-community-release-el7.rpm
,注意,后面跟的是自己的 rpm 包,结果如下:
我们再次查看 yum源 列表,如下,我们会发现多了两个mysql 的 yum源:
接下来我们就要进行正式安装了,我们的安装包现在也可以卸载了,如下:
现在我们已经具有 mysql 的软件包了,可以进行一键 yum 安装,其指令为:yum install -y mysql-community-server
,因为我们此时是 root 用户,所以不用带 sudo 权限,如下:
如果在安装过程中出现了错误,例如遇到秘钥过期的问题,会出现以下提示:
Failing package is: mysql-community-client-5.7.39-1.el7.x86_64
GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
此时只需要运行这条指令即可:rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
;然后再重新安装即可。
若遇到其它问题大家也可以自行上网搜索解决方案。
安装成功后,第一件事就是需要检查我们的 mysql 配置文件是否存在:
其次我们还需要查看 mysqld 服务端是否存在:
最后我们需要查看 mysql 的客户端是否存在:
如上图,说明我们已经安装成功。
然后我们要启动 mysql,指令为:systemctl start mysqld
;
启动之后,我们查看它是否已经运行,如下,说明已经在运行:
接下来我们要登录 mysql,指令为:mysql -uroot -p
,然后直接回车,如下:
但是我们发现登录不上,但是大家如果下的 mysql 版本比较新的话,直接回车是可以登录的。
那么解决方案就是通过修改 mysql 的配置文件进行登录,首先我们先进入配置文件中:vim /etc/my.cnf
,在文件的最后加上以下语句即可:
skip-grant-tables
如下:
但是我们再次进行登录,还是不行啊,如下:
那是因为我们的 mysqld 服务早就启动了,我们需要重新启动一下我们的服务即可,指令为:systemctl restart mysqld
;或者可以先停掉 mysql 服务再启动,指令为:systemctl stop mysqld
,systemctl start mysqld
.
此时我们再次登录直接回车即可进入到 mysql,如下:
接下来我们可以输入一条简单的 mysql 语句,查询我们的数据库:
至此我们就可以用 root 的方式免密码登录上 mysql 了。
首先,配置⼀下 my.cnf 主要是数据库客户端和服务器的编码格式,我们在 my.cnf 文件的任意位置加上以下三句即可:
port=3306
character-set-server=utf8
default-storage-engine=innodb
其中 port 是服务端口号,我们后面再介绍;后面两个是编码格式,我们后面也会介绍。
如下:
至此,我们就可以在 Centos 7.6 的环境下正常使用 mysql 啦!