Ubuntu上手动安装MySQL tar包教程
ubuntu安装mysql的tar

首页 2025-07-18 13:25:52



在Ubuntu上安装MySQL从Tar包开始的深度指南 在Linux操作系统中,Ubuntu以其用户友好和强大的社区支持而闻名

    MySQL,作为一款开源的关系型数据库管理系统(RDBMS),广泛应用于各种Web应用和数据存储解决方案中

    尽管Ubuntu的官方软件仓库提供了MySQL的预编译包,通过APT(Advanced Package Tool)可以方便地安装,但在某些情况下,你可能需要从源代码(即tar包)手动编译和安装MySQL

    这种做法通常用于特定的性能调优、定制功能或解决依赖性问题

    本文将详细指导你如何在Ubuntu上从tar包安装MySQL,确保每一步都清晰且具有说服力

     一、准备工作 1. 系统更新 在开始之前,确保你的Ubuntu系统是最新的

    这有助于避免在安装过程中遇到由于系统过时而导致的兼容性问题

     bash sudo apt update sudo apt upgrade -y 2. 安装必要的依赖 编译MySQL需要一系列开发工具和库

    这些依赖项确保你有编译环境、必要的库文件等

     bash sudo apt install -y build-essential cmake libncurses5-dev libssl-dev bison -`build-essential`:包含了编译C/C++程序所需的编译器、链接器和构建工具

     -`cmake`:用于配置和生成构建系统

     -`libncurses5-dev`:提供终端处理库,MySQL的某些组件依赖于它

     -`libssl-dev`:OpenSSL开发库,用于加密功能

     -`bison`:一个语法分析器生成器,MySQL的源代码使用它来解析SQL语法

     二、下载MySQL源代码 访问MySQL的官方网站或其官方的GitHub仓库,找到最新稳定版本的源代码压缩包(通常以`.tar.gz`格式提供)

     bash wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.xx.tar.gz 将`xx`替换为实际的版本号

    下载完成后,验证文件的完整性,通常通过MD5或SHA256校验和来确认

     bash sha256sum mysql-8.0.xx.tar.gz 将上述命令输出的校验和与MySQL官方提供的校验和进行比较

     三、解压并配置MySQL源代码 解压下载的tar包到指定目录

     bash tar -zxvf mysql-8.0.xx.tar.gz cd mysql-8.0.xx 进入解压后的目录,使用`cmake`进行配置

    这一步非常关键,因为它决定了MySQL编译时的各种选项和依赖

     bash mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_SSL=system -DWITH_BOOST=boost -DDOWNLOAD_BOOST=1 -DWITH_EDITLINE=1 -DWITH_EMBEDDED_SERVER=1 这里解释一下常用的配置选项: -`-DCMAKE_INSTALL_PREFIX`:指定MySQL的安装目录

     -`-DWITH_SSL=system`:使用系统提供的SSL库

     -`-DWITH_BOOST=boost` 和`-DDOWNLOAD_BOOST=1`:自动下载并使用Boost库,MySQL的某些组件依赖于它

     -`-DWITH_EDITLINE=1`:启用命令行编辑功能

     -`-DWITH_EMBEDDED_SERVER=1`:包含嵌入式服务器库

     根据你的具体需求,可能需要调整这些选项

     四、编译与安装 配置完成后,开始编译过程

    这一步可能需要一些时间,具体取决于你的硬件配置

     bash make sudo make install 编译成功后,执行`make install`将MySQL安装到之前指定的目录

     五、初始化数据库 安装完成后,需要初始化MySQL的数据目录

     bash cd /usr/local/mysql sudo bin/mysqld --initialize --user=mysql 注意,这里的`--user=mysql`指定了运行MySQL服务的系统用户

    如果`mysql`用户不存在,你需要先创建它

     bash sudo useradd -m -s /bin/false mysql 初始化过程中,MySQL会生成一个临时密码,请记下这个密码,因为你将在首次登录时使用它

     六、配置MySQL服务 为了方便管理,可以创建一个systemd服务文件

     bash sudo nano /etc/systemd/system/mysql.service 在文件中添加以下内容: ini 【Unit】 Description=MySQL Server After=network.target 【Service】 User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf LimitNOFILE =5000 【Install】 WantedBy=multi-user.target 确保`my.cnf`配置文件路径正确,并包含必要的配置信息

    然后,重新加载systemd配置并启动MySQL服务

     bash sudo systemctl daemon-reload sudo systemctl start mysql sudo systemctl enable mysql 七、安全配置与初始登录 使用初始化时生成的临时密码登录MySQL

     bash sudo /usr/local/mysql/bin/mysql_secure_installation 按照提示,你将能够更改root密码、删除匿名用户、禁止远程root登录、删除测试数据库以及重新加载权限表

     八、环境变量与路径设置 为了方便,可以将MySQL的bin目录添加到系统的PATH环境变量中

     bash echo export PATH=$PATH:/usr/local/mysql/bin ] ~/.bashrc source ~/.bashrc 九、验证安装 最后,通过登录MySQL服务器来验证安装是否成功

     bash mysql -u root -p

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