
尽管通过 YUM 或 RPM 包管理器安装 MySQL 可以提供快速和便捷的部署方式,但有时候,出于性能优化、特定功能定制或学习目的,从源码编译安装 MySQL显得尤为必要
本文将详细介绍如何在 CentOS7 上从源码编译安装 MySQL,确保每一步都精准无误,以发挥 MySQL 的最大效能
一、准备工作 1. 系统更新 在进行任何安装之前,首先确保你的 CentOS7 系统是最新的
这有助于避免潜在的兼容性问题
bash sudo yum update -y 2. 安装必要的依赖 编译 MySQL 需要一系列开发工具和库文件
以下命令将安装这些依赖: bash sudo yum groupinstall Development Tools -y sudo yum install cmake gcc-c++ ncurses-devel bison -y 3. 创建 MySQL 用户和组 出于安全考虑,MySQL 通常不以 root 用户身份运行
因此,我们需要创建一个专门的用户和组
bash sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql 二、下载 MySQL 源码 1. 访问 MySQL 官方网站 访问【MySQL官方网站】(https://dev.mysql.com/downloads/mysql/),选择适合你的版本的源码包
通常,你会找到`.tar.gz`格式的压缩文件
2. 使用 wget 下载源码 为了简化操作,可以直接在命令行中使用`wget` 命令下载源码包
以下是一个示例命令(请根据实际情况替换版本号): bash wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.xx.tar.gz 3. 解压源码包 下载完成后,解压源码包到指定目录
bash tar -zxvf mysql-8.0.xx.tar.gz cd mysql-8.0.xx 三、配置和编译 MySQL 1. 创建构建目录 为了保持源码目录的清洁,建议在源码目录之外创建一个构建目录
bash mkdir build cd build 2. 运行 cmake 配置 在构建目录中运行`cmake` 命令,指定 MySQL 的安装路径和其他编译选项
这里是一个基本的配置示例: bash cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/path/to/boost 如果系统未安装 Boost,cmake 会自动下载 注意:根据你的需求,可能需要调整上述选项
例如,如果你不需要某些存储引擎,可以将其对应的选项设置为0
3. 编译 MySQL 配置完成后,开始编译过程
这个过程可能会花费一些时间,具体取决于你的系统性能
bash make 4. 安装 MySQL 编译成功后,使用`make install` 命令安装 MySQL
bash sudo make install 四、配置 MySQL 1. 设置目录权限 确保 MySQL 数据目录和安装目录具有正确的权限
bash sudo chown -R mysql:mysql /usr/local/mysql sudo chown -R mysql:mysql /usr/local/mysql/data 2. 初始化数据库 在首次启动 MySQL 服务之前,需要初始化数据库
bash sudo bin/mysqld --initialize --user=mysql 注意:此命令会生成一个临时密码,请务必记录下来,稍后在首次登录 MySQL 时使用
3. 配置 MySQL 服务 为了方便管理,可以创建一个 systemd 服务文件
创建一个名为`/etc/systemd/system/mysqld.service` 的文件,并添加以下内容: ini 【Unit】 Description=MySQL Server After=network.target After=syslog.target 【Service】 User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf LimitNOFILE =5000 【Install】 WantedBy=multi-user.target 4. 启动 MySQL 服务 使用 systemd 启动 MySQL 服务,并设置开机自启
bash sudo systemctl daemon-reload sudo systemctl start mysqld sudo systemctl enable mysqld 5. 安全配置 使用临时密码登录 MySQL,并运行`mysql_secure_installation`脚本进行安全配置,如设置新密码、移除匿名用户、禁止远程 root 登录等
bash /usr/local/mysql/bin/mysql -u root -p 在提示符下输入临时密码,然后按提示完成安全配置
五、验证安装 1. 登录 MySQL 使用新设置的 root 密码登录 MySQL,验证安装是否成功
bash /usr/local/mysql/bin/mysql -u root -p 2. 执行简单查询 登录后,执行一些基本的 SQL 查询以确认 MySQL 运行正常
sql SHOW DATABASES; 如果看到默认的数据库列表(如 information_schema、mysql、performance_schema、sys),则说明 MySQL 已成功安装并运行
六、总结
MySQL连接时长优化指南
CentOS7系统下从零开始安装源码版MySQL教程
MySQL注入:网络攻击中的常见手段吗?
MySQL核心性能指标参数详解
Win系统下修改MySQL配置参数指南
高效处理:MySQL上亿数据删除策略
MySQL中Gz数据压缩技巧揭秘
Win系统下修改MySQL配置参数指南
MySQL5.6.38在Windows系统上的安装与使用指南
如何彻底卸载MySQL:详细步骤与注意事项MySQL作为一款流行的关系型数据库管理系统,在
轻松教程:将MySQL安装为系统服务
Windows系统下快速登录MySQL指南
CentOS7安装MySQL:高效空间分配指南
Windows系统轻松安装MySQL服务指南
企业库存管理系统MySQL实现指南
Win7系统下MySQL数据库下载指南:轻松安装与配置教程
CentOS6.5系统下MySQL5.6数据库安装指南
Linux系统下MySQL自启动设置指南
Deepin系统下MySQL安装指南