RedHat系统下MySQL源码安装全攻略
redhat mysql源码安装

首页 2025-07-28 10:31:54



RedHat系统下的MySQL源码安装指南 在RedHat企业版Linux(RHEL)或其他基于RedHat的系统中,通过源码编译安装MySQL是一种灵活且定制性强的方式

    尽管这种方式相比使用预编译的二进制包或包管理器安装更为复杂,但它允许你根据具体需求对MySQL进行精细配置

    本文将详细指导你如何在RedHat系统下从源码安装MySQL,确保每一步都准确无误

     一、准备工作 在开始之前,确保你的系统满足以下基本条件: 1.操作系统版本:本文适用于RedHat Enterprise Linux(RHEL)7及以上版本

    其他基于RedHat的系统,如CentOS,步骤也基本相似

     2.用户权限:你需要具有root用户权限或使用sudo命令来提升权限

     3.网络连接:确保你的系统可以访问互联网,以便下载必要的软件包和依赖项

     二、下载MySQL源码包 首先,从MySQL官方网站下载你需要的MySQL版本源码包

    以MySQL5.7.44版本为例,你可以使用wget命令下载: bash wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.44.tar.gz 下载完成后,使用tar命令解压源码包: bash tar zxf mysql-boost-5.7.44.tar.gz 解压后,你会得到一个名为mysql-5.7.44的目录,其中包含MySQL的源码和Boost库(MySQL5.7及以后版本通常包含Boost库,因为MySQL依赖于它)

     三、安装编译依赖 在编译MySQL之前,你需要安装一系列依赖软件包

    这些软件包包括cmake、gcc-c++、openssl-devel、ncurses-devel等

    你可以使用yum包管理器来安装它们: bash yum install cmake gcc-c++ openssl-devel ncurses-devel rpcgen -y 注意:在某些RHEL版本中,可能需要从第三方仓库或手动下载某些依赖包,如libtirpc-devel

    如果遇到这种情况,请根据你的系统版本和仓库配置进行相应的调整

     四、配置MySQL源码 进入解压后的MySQL源码目录,并使用cmake命令配置编译选项

    这一步非常关键,因为它决定了MySQL的安装路径、数据目录、字符集等关键配置

     bash cd mysql-5.7.44 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci -DWITH_BOOST=/root/mysql-5.7.44/boost/boost_1_59_0/ 这里解释一下各个选项的含义: -`-DCMAKE_INSTALL_PREFIX=/usr/local/mysql`:指定MySQL的安装路径

     -`-DMYSQL_DATADIR=/data/mysql`:指定MySQL的数据目录

     -`-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock`:指定MySQL的UNIX套接字文件路径

     -`-DWITH_INNOBASE_STORAGE_ENGINE=1`:启用InnoDB存储引擎(MySQL的默认存储引擎)

     -`-DWITH_EXTRA_CHARSETS=all`:启用所有额外字符集

     -`-DDEFAULT_CHARSET=utf8mb4`:指定默认字符集为utf8mb4,支持更多的Unicode字符

     -`-DDEFAULT_COLLATION=utf8mb4_unicode_ci`:指定默认校验字符集

     -`-DWITH_BOOST=/root/mysql-5.7.44/boost/boost_1_59_0/`:指定Boost库的路径

     如果在配置过程中出现错误或警告,请检查是否所有依赖都已正确安装,并重新运行cmake命令

    如果cmake命令提示缺少某些库或文件,请根据提示安装相应的依赖包

     五、编译和安装MySQL 配置完成后,使用make命令编译MySQL源码

    这个过程可能需要一些时间,具体取决于你的系统性能和源码包的大小

     bash make -j$(nproc) 这里使用`-j$(nproc)`选项来并行编译,加快编译速度

    `$(nproc)`命令会返回你的系统CPU核心数

     编译完成后,使用make install命令安装MySQL: bash make install 安装完成后,你可以在指定的安装路径(如/usr/local/mysql)下找到MySQL的可执行文件和库文件

     六、配置MySQL环境 1.创建MySQL用户和组: 在安装MySQL之前,你需要创建一个专门用于运行MySQL服务的用户和组

    这有助于提高系统的安全性

     bash groupadd mysql useradd -s /sbin/nologin -M mysql -g mysql 这里使用`-s /sbin/nologin`选项禁止MySQL用户登录系统,`-M`选项不创建用户主目录

     2.创建数据目录并设置权限: 根据你在cmake配置中指定的数据目录(如/data/mysql),创建该目录并设置正确的权限

     bash mkdir -p /data/mysql chown mysql:mysql /data/mysql 3.初始化MySQL数据库: 在启动MySQL服务之前,你需要使用mysqld命令初始化数据库

    这个过程会创建系统表和一些必要的配置文件

     bash cd /usr/local/mysql bin/mysqld --initialize --user=mysql 初始化完成后,请记录临时密码,以便在后续步骤中使用

     4.配置MySQL服务: 将MySQL的启动脚本复制到系统的init.d目录下,并设置开机自启动

     bash cp support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld on 5.启动MySQL服务: 使用service命令启动MySQL服务

     bash service mysqld start 6.修改root密码和安全设置: 使用mysql_secure_installation命令修改root用户的密码,并根据提示进行其他安全设置

     bash mysql_secure_installation 按照提示输入临时密码,然后设置新的root密码,并根据需要选择其他安全选项(如删除匿名用户、禁止远程root登录等)

     7.配置环境变量: 为了方便使用MySQL命令,你可以将MySQL的bin目录添加到系统的PATH环境变量中

     bash echo export PATH=$PATH:/usr/local/mysql/bin ] ~/.bash_profile source ~/.bash_profile

MySQL连接就这么简单!本地远程、编程语言连接方法一网打尽
还在为MySQL日期计算头疼?这份加一天操作指南能解决90%问题
MySQL日志到底在哪里?Linux/Windows/macOS全平台查找方法在此
MySQL数据库管理工具全景评测:从Workbench到DBeaver的技术选型指南
MySQL密码忘了怎么办?这份重置指南能救急,Windows/Linux/Mac都适用
你的MySQL为什么经常卡死?可能是锁表在作怪!快速排查方法在此
MySQL单表卡爆怎么办?从策略到实战,一文掌握「分表」救命技巧
清空MySQL数据表千万别用错!DELETE和TRUNCATE这个区别可能导致重大事故
你的MySQL中文排序一团糟?记住这几点,轻松实现准确拼音排序!
别再混淆Hive和MySQL了!读懂它们的天壤之别,才算摸到大数据的门道