CentOS 7 上安装 MySQL 8.0详细步骤

发布于:2024-04-26 ⋅ 阅读:(20) ⋅ 点赞:(0)

CentOS 7 上安装 MySQL 8.0.30:详细步骤

准备阶段
  1. 下载 MySQL 安装包
    前往 MySQL Archives,选择适合 CentOS 7 的安装包。

  2. 关闭防火墙和 SELinux

    # 临时关闭防火墙
    systemctl stop firewalld.service
    # 永久关闭防火墙
    systemctl disable firewalld.service
    
    # 查看 SELinux 状态
    getenforce
    # 临时关闭 SELinux
    setenforce 0
    # 永久关闭 SELinux
    sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
    
  3. 卸载 mariadb

    # 查询安装的 mariadb 包
    rpm -qa | grep mariadb
    # 卸载 mariadb
    rpm -e --nodeps [package_name]
    
安装 MySQL
  1. 上传压缩包至服务器
    使用 FTP 或 rz 命令上传压缩包至 /opt/8.0.30 目录。

    mkdir -p /opt/8.0.30
    # 使用 FTP 或 rz 命令上传
    
  2. 解压压缩包

    cd /opt/8.0.30
    tar -xvf mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
    
  3. 安装 RPM 包

    rpm -ivh mysql-community-{server,client,common,libs,icu}-*
    
  4. 初始化 MySQL

    mysqld --initialize --user=mysql --lower-case-table-names=1
    # 记录生成的随机密码
    grep "password" /var/log/mysqld.log
    
配置 MySQL
  1. 编辑配置文件

    vi /etc/my.cnf
    # 在 [mysqld] 部分添加:
    lower-case-table-names=1
    
  2. 启动 MySQL 服务

    systemctl start mysqld
    
  3. 修改 root 密码并配置远程访问

    mysql -u root -p
    # 在 MySQL 命令行中输入:
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'QWER1234@';
    CREATE USER 'root'@'%' IDENTIFIED BY 'QWER1234@';
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    
进阶配置
  1. 字符集和时区配置

    vi /etc/my.cnf
    # 在 [client] 和 [mysql] 下增加:
    default-character-set=utf8
    # 在 [mysqld] 下增加:
    character-set-server=utf8
    default-time_zone='+8:00'
    
  2. 性能和安全性配置

    # 在 [mysqld] 下增加:
    max_connections=1000
    max_connect_errors=1000
    default-authentication-plugin=mysql_native_password
    sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
    log_bin_trust_function_creators=1
    
  3. 重启 MySQL 服务

    systemctl restart mysqld
    
数据文件位置变更
  1. 停止 MySQL 服务并创建新的数据目录

    service mysqld stop
    mkdir -p /home/data/mysql
    
  2. 修改配置文件

    vi /etc/my.cnf
    # 修改或增加以下行:
    datadir=/home/data/mysql
    socket=/home/data/mysql/mysql.sock
    
  3. 迁移现有数据文件

    mv /var/lib/mysql/* /home/data/mysql/
    
  4. 重新启动 MySQL 服务

    service mysqld start
    
  5. 确保客户端配置正确

    # 修改 [client] 配置
    vi /etc/my.cnf
    [client]
    socket=/home/data/mysql/mysql.sock
    

结语

通过以上步骤,您可以在 CentOS 7 上成功安装并配置 MySQL 8.0.30,包括基本安装、初步配置、性能优化和数据迁移。这为您提供了一套全面的 MySQL 安装和配置指南,适合在博客或技术文档中使用。