【MySQL 保姆级教学】在Linux(CentoS 7)中安装MySQL(1)

目录

  • [1. 卸载linux(Centos7) 中不要的环境](#1. 卸载linux(Centos7) 中不要的环境)
  • [2. 获取MySQL官方yum源](#2. 获取MySQL官方yum源)
    • [2.1 获取yum源前先查看自己 linux(Centos)的版本](#2.1 获取yum源前先查看自己 linux(Centos)的版本)
    • [2.2 获取官方yum源](#2.2 获取官方yum源)
  • [3. 安装xftp和连接](#3. 安装xftp和连接)
  • [4. 开放连接端口](#4. 开放连接端口)
  • [5. 上传文件到Centos7](#5. 上传文件到Centos7)
  • [6. 安装MySQL](#6. 安装MySQL)
    • [6.1 顺利安装](#6.1 顺利安装)
    • [6.2 查询是否安装成功](#6.2 查询是否安装成功)
    • [6.3 安装时遇到的问题解决办法](#6.3 安装时遇到的问题解决办法)
  • [7. 登录 MySQL](#7. 登录 MySQL)
  • [8. 配置 MySQL](#8. 配置 MySQL)

1. 卸载linux(Centos7) 中不要的环境

  1. 先检查是否有mariadb存在

    命令:ps ajx |grep mariadb

    ps 是一个用于显示当前进程状态的命令。ajx 是 ps 命令的选项组合,每个选项的具体含义如下:

    a:显示所有用户的进程,不仅限于当前终端的进程。

    j:使用作业控制格式输出,这种格式包括更多的进程信息。

    x:显示没有控制终端的进程

    这个命令的作用是先使用 ps ajx 显示系统中所有用户的进程,然后通过管道符 | 将输出传递给 grep 命 令,grep 命令会从这些输出中筛选出包含 mariadb 字符串的行。

  2. 若果有,先停止进程

    systemctl stop mariadb.service

  3. 检查系统安装包

    rpm -qa | grep mariadb

    rpm -qa | grep mysql

  4. 卸载这些默认的安装包

2. 获取MySQL官方yum源

2.1 获取yum源前先查看自己 linux(Centos)的版本

命令:cat /etc/redhat-release

我的版本是7.9,所以需要找MrSQL5.7版本中的7.9版本。

2.2 获取官方yum源

官方yum源地址,点击即可进入。

进入后发现无法查看全部的信息,鼠标右击,再点击页面源代码。

经过以上操作进入到如下页面,并查找自己需要的版本

3. 安装xftp和连接

  1. 点击进入Xftp的官方
  2. 点解所有下载,选择学校免费。
  3. 往下滑即可看到Xftp,点击下载即可。
  4. 连接Centos7的主机。
  5. 如果连接失败,需要开放开放一下20/tcp和21/tcp两个端口。(目录4有教程)

4. 开放连接端口

注:切换超级用户

命令:su

  1. 安装firewalld

    命令:sudo yum install firewalld

  2. 启动firewalld,并设置开机自启。

    启动firewalld:sudo systemctl start firewalld

    开机自启:sudo systemctl enable firewalld

  3. 添加 20/TCP 和 21/TCP 端口

    命令:
    sudo firewall-cmd --zone=public --add-port=20/tcp --permanent

    sudo firewall-cmd --zone=public --add-port=21/tcp --permanent

  4. 再次用Xftp连接即可。

5. 上传文件到Centos7

  1. 我把下载好的文件移动到桌面,用Xftp连接成功,直接把文件拉进Xftp中。
  2. 在终端进入myyum文件中,可看到刚才被拉进的文件。

6. 安装MySQL

6.1 顺利安装

切换超级用户, 命令: su

先普及一个知识,其实我们在 Linux 通过yum下载的安装包类型就是刚才我们下载的安装包类型。

那我们怎么安装MySQL呢?用yum吗?no,yum的工作其实就是我们刚才下载安装包的任务。我们用rpm安装。

我们先查看系统支持的yum源(每个人不一定相同)。

命令:ls /etc/yum.repos.d

可以清楚的看到,我的 Linux里面没有 MySQL 的 yum源

如果没有MySQL的yum源,需要进行安装

  1. 安装yum源:

    命令:rpm -ivh mysql57(59)-community-release-el7.rpm

    需要进入到 MySQL 安装包的目录中进行安装yum源

  2. 查看安装后的yum源列表:ls /etc/yum.repos.d -l (有兴趣的朋友可以查看)

  3. 查看mysql的yum源:vim /etc/yum.reops.d/mysql-community.repo (有兴趣的朋友可以查看)

  4. 安装MySQL

    命令:yum install -y mysql-community-server

    yum可按照yum源的配置,自动安装对应的mysql

6.2 查询是否安装成功

命令: ls /etc/my.cnf #要存在my.cnf文件

命令:which mysqld #查看mysql服务端应用程序

命令:which mysql #查看mysql'的客户端

如图:

都查询到后,可以运行mysql了

命令:systemctl start mysql

6.3 安装时遇到的问题解决办法

安装遇到秘钥过期的问题:

显示: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

有标记,上图安装成功了

7. 登录 MySQL

命令:mysql -u root -p

登录失败解决方法:打开mysql配置文件

命令:vim /etc/my.cnf

步骤:

进入后,先点击电脑按键" insert",进行修改,

在[mysqld]最后⼀栏配置(不知道是什么,就放在配置⽂件最后) 加⼊: skip-grant-tables

添加完后再点击电脑的按键 "Esc",然后,再点击电脑的按键 "Shift"和":" 同时按,再接着按 "w",再按"q",最后按"Enter"。

再次登录:mysql -uroot -p

解释:登录的时候不需要输入密码,点击回车键

8. 配置 MySQL

进入到MySQL的配置文件

命令:vim /etc/my.cnf

加端口号,默认是3306

配置编码格式

命令:
character-set-server=utf8
collation-server=utf8_general_ci(建议也添加上)

配置存储引擎

命令:
default-storage-engine=innodb

注:我配置存储引擎的时候少写了一个d,同学们不要模仿我。

如果配置上述的编码格式后,插入不了中文,可以试一试下列的编码格式:
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

提示:

MySQL 已经配置了客⼾端服务器utf8编码,但还是⽆法输入中文确保您在终端命令⾏中可以输⼊中⽂,查看以下终端是否可以输入中文

命令: env |grep LANG

如果打印出: LANG=en_US.utf8 则说明终端可以输入中文。

设置开机启动:
systemctl enable mysqld
systemctl daemon-reload

设置完毕,重启MySQL即可

命令:
systemctl restart mysqld

相关推荐
JavaGuide5 小时前
公司来的新人用字符串存储日期,被组长怒怼了...
后端·mysql
怒放吧德德8 小时前
MySQL篇:MySQL主从集群同步延迟问题
后端·mysql·面试
Eip不易也不e9 小时前
教程之同时安装两个版本的 mysql
mysql
Kagol10 小时前
macOS 和 Windows 操作系统下如何安装和启动 MySQL / Redis 数据库
redis·后端·mysql
cg501710 小时前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影10 小时前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain10 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon10 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu11 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu