MySQL源码安装配置,如何正确完成Linux环境下的详细步骤?一文看懂

MySQL 源码安装配置指南(以 Ubuntu 为例)

安装依赖

sudo apt update
sudo apt install -y cmake build-essential 
libssl-dev libncurses5-dev libreadline-dev 
zlib1g-dev libboost-all-dev

下载源码

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.33.tar.gz
tar -zxvf mysql-boost-8.0.33.tar.gz
cd mysql-8.0.33

配置编译选项

mkdir build
cd build
cmake .. 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DMYSQL_DATADIR=/usr/local/mysql/data 
-DWITH_BOOST=../boost 
-DSYSCONFDIR=/etc 
-DDEFAULT_CHARSET=utf8mb4 
-DDEFAULT_COLLATION=utf8mb4_0900_ai_ci 
-DENABLED_LOCAL_INFILE=ON 
-DWITH_SSL=system

编译安装

make -j$(nproc)  # 使用所有CPU核心加速编译
sudo make install

创建系统用户和目录

sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
sudo mkdir -p /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql

初始化数据库

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

注意:保存输出的临时 root 密码(格式:[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 临时密码

mysql源码安装配置

配置文件设置

sudo cp support-files/mysql.server /etc/init.d/mysql
sudo vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
[client]
socket=/tmp/mysql.sock

启动服务

sudo /etc/init.d/mysql start

修改 root 密码

bin/mysql -u root -p  # 输入临时密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
FLUSH PRIVILEGES;

设置环境变量

echo 'export PATH=/usr/local/mysql/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

验证安装

mysql -V
# 输出: mysql  Ver 8.0.33 for Linux on x86_64 (Source distribution)

常见问题解决

  1. CMake 错误

    • 检查缺失的依赖包,根据错误提示安装对应开发包
    • 清除 CMake 缓存:rm CMakeCache.txt
  2. 启动失败

    mysql源码安装配置

    tail -f /usr/local/mysql/data/主机名.err  # 查看错误日志
  3. 连接问题

    sudo ln -s /tmp/mysql.sock /var/run/mysqld/mysqld.sock

卸载方法

sudo /etc/init.d/mysql stop
sudo rm -rf /usr/local/mysql
sudo rm -rf /etc/my.cnf /etc/init.d/mysql
sudo userdel mysql
sudo groupdel mysql

注意

mysql源码安装配置

  1. 编译过程可能耗时较长(30分钟至数小时)
  2. 确保系统有足够内存(建议 >2GB)
  3. 不同版本 Boost 要求不同,MySQL 8.0 要求 Boost 1.77.0
  4. 生产环境建议添加防火墙规则:sudo ufw allow 3306

通过以上步骤,您已完成 MySQL 的源码编译安装,可根据需要进一步优化配置参数。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/288292.html

(0)
上一篇 2026年2月8日 21:27
下一篇 2026年2月8日 21:35

相关推荐

  • SSH用户名配置时,是否遇到了哪些具体问题或困惑?

    SSH 用户名配置指南SSH简介SSH(Secure Shell)是一种网络协议,用于计算机之间的安全通信和数据传输,它提供了强大的加密功能,可以确保数据传输的安全性,在远程登录服务器时,SSH是常用的安全协议之一,本文将详细介绍SSH用户名的配置方法,SSH用户名配置步骤生成SSH密钥对在本地计算机上生成一对……

    2025年10月31日
    01140
  • 安全数据上传异常是什么原因导致的?

    数据上传异常的基本概念在数字化时代,数据传输已成为企业运营和个人网络活动的核心环节,“安全数据上传异常”这一术语频繁出现在技术日志、系统提示或用户反馈中,许多人对它的具体含义感到困惑,安全数据上传异常指的是数据在从本地设备向云端、服务器或其他目标端传输过程中,因安全机制触发或传输故障导致的数据完整性、保密性或可……

    2025年11月28日
    01080
  • 分布式服务器操作系统更新步骤是怎样的?

    分布式服务器操作系统的更新是一项复杂且关键的任务,涉及技术、流程、风险控制等多个维度,与单机系统更新不同,分布式环境下的节点数量庞大、服务依赖关系复杂,任何操作不当都可能导致服务中断或数据异常,科学、系统的更新方法是保障系统稳定运行的核心,以下从更新策略、技术实现、风险控制、自动化工具四个方面展开分析,制定科学……

    2025年12月18日
    0820
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 关于HRP配置的疑问解答,如何正确配置以提升系统效率?

    人力资源规划(HRP)是企业战略落地的核心支撑,通过系统化配置,可实现人才需求预测、招聘、培训、绩效等环节的协同管理,本文将从基础配置、流程配置、数据管理、系统集成等维度,详细解析HRP配置的关键步骤与最佳实践,并结合酷番云的实战经验,提供具体案例,帮助企业构建高效的人力资源规划体系,HRP基础配置:组织架构与……

    2026年1月23日
    0400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注