欢迎光临
我们一直在努力

CentOS 7 安装 MySQL 5.7

CentOS 7 安装 MySQL 5.7

在 CentOS 7 系统上通过 tar.gz 压缩包安装 MySQL 5.7,可遵循以下简洁且正确的步骤。本文以 mysql-5.7.44 版本为例进行演示。

一、准备工作

1. 软件版本

  • 操作系统: CentOS 7.9 (本文基于 CentOS-7-x86_64-Minimal-2009.iso)
  • MySQL 版本: MySQL 5.7 (本文以 mysql-5.7.44 版本为例进行安装示范)

2. 获取 MySQL 安装包

首先,需要将下载的 MySQL 安装包(例如 mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz)放到 CentOS 服务器上。

  • 在本地电脑上,访问 MySQL 官方归档网站下载所需的版本:
    • MySQL 5.7 下载地址: https://downloads.mysql.com/archives/community/
  • 在页面上,请按以下步骤选择正确的版本:
    • Product Version: 5.7.44 (或所需的其他 5.7 版本)
    • Operating System: Linux – Generic
    • OS Version: Linux – Generic (glibc 2.12) (x86, 64-bit)
  • 在筛选出的列表中,找到名为 mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 的文件并下载。
  • 下载完成后,使用文件传输工具(如 Xftp 或 scp)将安装包上传到服务器的任意目录(例如 /root)。
    • 关于如何使用 Xftp,可以参考教程:《如何使用 Xshell 8 连接到一台 CentOS 7 电脑(服务器)》中的文件传输部分。
  • 3. 检查并卸载旧版本

    首先,检查系统是否已安装 MariaDB 或其他版本的 MySQL,如果存在,请将其卸载以避免冲突。

    # 检查 MariaDB
    rpm -qa | grep mariadb

    # 如果存在,则卸载
    rpm -e –nodeps `rpm -qa | grep mariadb`

    # 检查旧版 MySQL
    rpm -qa | grep mysql

    # 如果存在,则卸载
    rpm -e –nodeps `rpm -qa | grep mysql`

    4. 检查并安装依赖库

    MySQL 5.7 需要 libaio 和 numactl 库。可先用以下命令检查它们是否已安装:

    # 检查 libaio 是否安装
    rpm -qa | grep libaio

    # 检查 numactl 是否安装
    rpm -qa | grep numactl

    如果对应的命令没有任何输出,则表示该库尚未安装。执行以下命令来安装它们:

    yum -y install libaio numactl

    5. 创建 MySQL 用户和组

    出于安全考虑,需要创建一个专门的用户和组来运行 MySQL 服务。

    groupadd mysql
    useradd -r -g mysql -s /bin/false mysql

    二、安装与初始化

    1. 解压 tar.gz 文件

    假设安装包 mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 已上传到服务器的 /root 目录下。

    cd /root
    tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz

    2. 移动并重命名目录

    为了方便管理,将解压后的目录移动到 /usr/local 并重命名为 mysql。

    mv mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql

    3. 创建数据目录并授权

    在 MySQL 安装目录下创建用于存放数据的 data 目录,并将整个 MySQL 目录的所有权赋予之前创建的 mysql 用户和组。

    mkdir -p /usr/local/mysql/data
    chown -R mysql:mysql /usr/local/mysql/

    4. 编辑配置文件

    创建并编辑 MySQL 的主配置文件 /etc/my.cnf。

    vi /etc/my.cnf

    将以下基础配置内容粘贴进去:

    [mysql]
    default-character-set=utf8
    socket=/var/lib/mysql/mysql.sock

    [mysqld]
    user=mysql
    basedir=/usr/local/mysql
    datadir=/usr/local/mysql/data
    port=3306
    character-set-server=utf8
    socket=/var/lib/mysql/mysql.sock
    pid-file=/usr/local/mysql/data/mysql.pid
    log-error=/var/log/mysqld.log

    5. 创建并授权相关目录和文件

    根据 my.cnf 的配置,需要确保 mysql 用户有权访问 socket 目录和日志文件。

    # 创建并授权 socket 目录
    mkdir -p /var/lib/mysql
    chown -R mysql:mysql /var/lib/mysql

    # 创建并授权日志文件
    touch /var/log/mysqld.log
    chown mysql:mysql /var/log/mysqld.log

    6. 初始化数据库

    进入 MySQL 的 bin 目录执行初始化命令。 请务必记下初始化过程中生成的临时密码。

    cd /usr/local/mysql/bin/

    ./mysqld –initialize –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data

    初始化完成后,查看日志文件获取临时密码:

    grep 'temporary password' /var/log/mysqld.log

    三、启动与安全设置

    1. 设置服务并启动

    将 MySQL 的服务脚本复制到系统服务目录,并设置为开机自启。

    # 复制服务脚本
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

    # 添加到服务列表
    chkconfig –add mysqld

    # 设置开机自启
    chkconfig mysqld on

    # 启动 MySQL 服务
    service mysqld start

    2. 检查服务状态

    可使用以下命令来确认服务的自启设置和当前运行状态。

    # 检查是否已设置开机自启
    chkconfig –list mysqld

    # 检查当前服务运行状态
    service mysqld status

    如果 chkconfig 命令的输出类似 mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off,表示常用的运行级别(2, 3, 4, 5)已设为开机自启。同时,如果 service 命令显示服务为 SUCCESS! MySQL running,则表示服务当前正在运行。

    3. 创建命令软链接

    为了方便在任何路径下都能使用 mysql 命令,需要创建一个软链接。

    ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

    4. 登录并修改密码

    使用之前获取的临时密码登录 MySQL。

    mysql -u root -p

    进入 MySQL 后,立即修改 root 用户的密码。

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewStrongPassword';

    将 YourNewStrongPassword 替换为新密码。

    5. 运行安全脚本 (可选但推荐)

    为了提高安全性,可以运行 mysql_secure_installation 脚本。

    /usr/local/mysql/bin/mysql_secure_installation

    根据提示进行操作,包括设置密码策略、移除匿名用户、禁止 root 远程登录等。

    至此,mysql-5.7.44 已成功安装并运行在 CentOS 7 系统上。

    四、后续操作

    安装完成后,为了更方便地管理数据库,您通常需要在 Windows 客户端进行远程连接。请继续阅读:

    • 通过 HeidiSQL 连接 CentOS 7 中的 MySQL 5.7
    赞(0)
    未经允许不得转载:171主机测评 » CentOS 7 安装 MySQL 5.7
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址