MySQL5.6.28源码安装全攻略

mysql5.6.28源码安装

时间:2025-07-18 09:03


MySQL 5.6.28 源码安装指南 MySQL是一款广泛使用的关系型数据库管理系统,它支持大量的存储引擎,具有高性能、可靠性和易用性等特点

    对于希望深入了解MySQL内部机制或者需要定制化安装的用户来说,从源码安装MySQL是一个不错的选择

    本文将详细介绍如何在Linux环境下从源码安装MySQL5.6.28版本

     一、安装前的准备工作 在安装MySQL之前,我们需要做一些准备工作,包括安装必要的依赖包、创建用户和组、下载MySQL源码包等

     1. 安装依赖包 在Linux系统中,通常使用包管理器来安装所需的依赖包

    以CentOS为例,可以使用`yum`命令来安装: bash yum -y install gcc gcc-c++ make cmake bison bison-devel ncurses-devel libaio-devel perl perl-Data-Dumper 这些依赖包包括编译器(gcc、gcc-c++)、构建工具(make)、CMake(用于配置编译参数)、以及其他一些必要的库和开发文件

     2. 创建用户和组 为了安全起见,MySQL服务通常以一个非root用户身份运行

    因此,在安装MySQL之前,我们需要创建一个专门的用户和组: bash groupadd mysql useradd -g mysql mysql 3. 下载MySQL源码包 从MySQL官方网站或者镜像站点下载MySQL5.6.28的源码包

    确保下载的是社区版源码包(通常以`.tar.gz`结尾)

    例如,可以使用`wget`命令下载: bash wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.28.tar.gz 二、编译安装MySQL 下载完源码包后,接下来就是解压、配置、编译和安装MySQL

     1. 解压源码包 使用`tar`命令解压下载的源码包: bash tar -zxvf mysql-5.6.28.tar.gz cd mysql-5.6.28 2. 配置编译参数 在编译MySQL之前,我们需要使用CMake来配置编译参数

    CMake是一个跨平台的自动化构建系统,它允许我们使用一个简单的命令来指定编译选项和安装路径等

     以下是一个常见的CMake配置命令示例: bash cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all 在这个命令中,`-DCMAKE_INSTALL_PREFIX`指定了MySQL的安装目录,`-DMYSQL_DATADIR`指定了数据目录,`-DSYSCONFDIR`指定了配置文件目录,其他选项则用于启用或禁用特定的存储引擎、设置字符集和排序规则等

     3.编译和安装 配置完成后,接下来就可以编译和安装MySQL了

    这通常需要使用`make`命令来编译源码,并使用`make install`命令来安装编译好的二进制文件和库文件: bash make make install 编译过程可能需要一些时间,具体时间取决于你的硬件配置和CMake配置选项

     三、配置MySQL为系统服务 编译安装完成后,我们还需要进行一些配置工作,以便将MySQL设置为系统服务并启动它

     1. 创建必要的目录和文件 首先,我们需要确保MySQL的数据目录、sock文件目录等已经创建,并且权限设置正确: bash mkdir -p /usr/local/mysql/data chown -R mysql:mysql /usr/local/mysql 2.初始化数据库 在启动MySQL服务之前,我们需要先初始化数据库

    这通常使用`mysql_install_db`脚本来完成: bash cd /usr/local/mysql/scripts ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 如果初始化成功,你应该会看到类似“OK”的消息

     3.复制配置文件和启动脚本 接下来,我们需要将MySQL的配置文件(`my.cnf`)和启动脚本(`mysql.server`)复制到适当的位置: bash cd /usr/local/mysql/support-files cp my-default.cnf /etc/my.cnf cp mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld 然后,编辑`/etc/my.cnf`配置文件,确保其中的路径和选项与你的安装环境相匹配

     4. 设置MySQL服务为自启动 为了使MySQL服务在系统启动时自动启动,我们需要使用`chkconfig`命令将其添加到系统服务列表中: bash chkconfig --add mysqld chkconfig mysqld on 5. 启动MySQL服务 最后,我们可以使用`service`命令来启动MySQL服务: bash service mysqld start 你可以使用`netstat`命令来检查MySQL服务是否正在监听预期的端口(通常是3306): bash netstat -tunlp | grep mysql 四、设置root密码和安全性配置 MySQL安装完成后,默认情况下root用户是没有密码的

    为了安全起见,我们需要尽快为root用户设置一个密码

     首先,将MySQL的bin目录添加到PATH环境变量中,以便我们可以直接调用`mysql`和`mysqladmin`等命令: bash export PATH=/usr/local/mysql/bin:$PATH 然后,使用`mysqladmin`命令为root用户设置密码: bash mysqladmin -u root password new_password 将`new_password`替换为你想要设置的密码

     此外,为了提高MySQ