服务器测评网
我们一直在努力

mysql5.7.11 linux安装步骤是怎样的?

在Linux系统中部署MySQL 5.7.11是一项常见的数据库管理任务,本文将详细介绍从环境准备到安装配置、性能优化及安全加固的完整流程,帮助读者高效完成部署并确保数据库稳定运行。

20251101032934502

环境准备与依赖安装

在开始安装MySQL 5.7.11之前,需确保Linux系统满足基本要求,以CentOS 7为例,建议系统内核版本不低于3.10,内存至少2GB(推荐4GB以上),磁盘空间预留10GB以上,首先更新系统软件包并安装必要的依赖组件:

sudo yum update -y
sudo yum install -y wget gcc-c++ make cmake ncurses-devel bison libaio-devel perl

这些依赖包是编译和运行MySQL所必需的,其中cmake用于构建项目,ncurses-develbison支持命令行工具开发,libaio-devel提供异步I/O支持。

MySQL 5.7.11源码编译安装

MySQL 5.7.11支持源码编译和二进制包安装,源码编译可灵活定制功能,以下是详细步骤:

  1. 下载源码包
    从MySQL官方 archives 下载5.7.11版本源码:

    wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.11.tar.gz
    tar -zxvf mysql-5.7.11.tar.gz -C /usr/local/src
    cd /usr/local/src/mysql-5.7.11
  2. 配置编译参数
    使用cmake进行配置,关键参数说明如下:

    cmake . \
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_DATADIR=/data/mysql \
    -DSYSCONFDIR=/etc \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_PARTITION_STORAGE_ENGINE=1 \
    -DWITH_FEDERATED_STORAGE_ENGINE=1 \
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DWITH_EMBEDDED_SERVER=1 \
    -DENABLED_LOCAL_INFILE=1 \
    -DDEFAULT_CHARSET=utf8mb4 \
    -DDEFAULT_COLLATION=utf8mb4_general_ci \
    -DWITH_BOOST=/usr/local/boost \
    -DWITH_SSL=system

    其中-DWITH_BOOST需预先下载Boost库(MySQL 5.7依赖),推荐版本1.59.0。

  3. 编译与安装
    执行编译和安装命令:

    make -j$(nproc) && sudo make install

初始化配置与启动

  1. 创建用户与目录

    sudo groupadd mysql
    sudo useradd -r -g mysql mysql
    sudo mkdir -p /data/mysql
    sudo chown -R mysql:mysql /data/mysql
  2. 初始化数据库
    使用mysqld工具完成初始化:

    20251101032935256

    sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

    记录初始化生成的临时root密码(输出日志中会显示)。

  3. 配置系统服务
    创建systemd服务文件/usr/lib/systemd/system/mysqld.service

    [Unit]
    Description=MySQL Server
    After=network.target
    [Service]
    User=mysql
    Group=mysql
    ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
    LimitNOFILE=65536
    [Install]
    WantedBy=multi-user.target

    启用并启动服务:

    sudo systemctl daemon-reload
    sudo systemctl start mysqld
    sudo systemctl enable mysqld

核心配置文件优化

/etc/my.cnf是MySQL的核心配置文件,以下为关键参数优化建议:

参数 推荐值 说明
innodb_buffer_pool_size 4G 根据物理内存调整,建议为内存的50%-70%
max_connections 500 根据应用并发需求调整,默认151
innodb_log_file_size 2G 事务日志大小,影响崩溃恢复速度
character-set-server utf8mb4 支持完整UTF-8字符集
bind-address 0.0.0 监听所有网络接口,生产环境建议限制为内网IP

示例配置片段:

[mysqld]
port = 3306
socket = /tmp/mysql.sock
datadir = /data/mysql
innodb_buffer_pool_size = 4G
max_connections = 500
innodb_log_file_size = 2G
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
bind-address = 192.168.1.100

安全加固与权限管理

  1. 修改root密码
    首次登录后立即修改临时密码:

    mysql -u root -p
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'StrongPassword123!';
  2. 删除匿名用户与测试库

    DROP USER ''@'localhost';
    DROP DATABASE test;
    FLUSH PRIVILEGES;
  3. 创建应用专用用户

    CREATE USER 'app_user'@'192.168.1.%' IDENTIFIED BY 'AppPassword123!';
    GRANT SELECT, INSERT, UPDATE ON app_db.* TO 'app_user'@'192.168.1.%';

日常维护与监控

  1. 备份策略
    使用mysqldump进行全量备份,结合binlog实现增量恢复:

    20251101032935940

    mysqldump -u root -p --all-databases > backup_$(date +%F).sql
  2. 性能监控
    启用慢查询日志:

    slow_query_log = 1
    slow_query_log_file = /data/mysql/slow.log
    long_query_time = 2

    使用pt-query-digest分析慢查询日志。

  3. 定期维护
    执行ANALYZE TABLEOPTIMIZE TABLE优化表碎片:

    ANALYZE TABLE app_db.users;
    OPTIMIZE TABLE app_db.orders;

常见问题处理

  1. 启动失败
    检查/var/log/mysqld.log错误日志,常见问题包括:

    • 权限不足:确保datadir目录属主为mysql
    • 端口占用:使用netstat -tuln | grep 3306检查
  2. 字符集乱码
    确认配置文件和客户端连接均使用utf8mb4,可通过SHOW VARIABLES LIKE 'character_set%'验证。

通过以上步骤,可在Linux系统中稳定部署MySQL 5.7.11,并根据实际业务需求进行优化调整,建议定期更新版本至官方支持的最新稳定版,及时获取安全补丁和性能改进。

赞(0)
未经允许不得转载:好主机测评网 » mysql5.7.11 linux安装步骤是怎样的?