Linux下安装mysql8.0(以tar.xz包安装--编译安装)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。

在Linux系统下通过编译安装MySQL 8.0,采用tar.xz源码包的方式,是一种灵活且控制度高的安装方法。以下是一个详尽的步骤指南,旨在帮助您顺利完成安装过程,并确保安装后的MySQL 8.0能够正常运行。

准备工作

  1. 系统要求:确保您的Linux系统满足MySQL 8.0的最低硬件和软件要求,包括但不限于支持的Linux内核版本、glibc版本等。

  2. 依赖安装:安装必要的开发工具和库,用于编译MySQL源代码。这通常包括 gcc, cmake, openssl-devel, ncurses-devel, bison, flex, libaio-devel等。您可以使用如下命令安装这些依赖(以yum为例):

    sudo yum install gcc gcc-c++ cmake openssl-devel ncurses-devel bison flex libaio-devel
    ​
    

下载MySQL源码包

  1. 访问MySQL官方网站的下载页面(https://dev.mysql.com/downloads/mysql/),找到MySQL 8.0系列的tar.xz源码包。选择适合您系统架构的版本,比如 mysql-8.0.xx-linux-glibc2.12-x86_64.tar.xz

  2. 使用 wget命令直接从网页链接下载到服务器上,例如:

    wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.xx-linux-glibc2.12-x86_64.tar.xz
    ​
    

    其中 xx代表具体版本号,请替换为实际版本号。

解压与配置

  1. 解压缩下载的tar.xz文件:

    sudo tar xvf mysql-8.0.xx-linux-glibc2.12-x86_64.tar.xz
    ​
    
  2. 将解压后的目录移动到一个合适的位置,比如 /usr/local/mysql

    sudo mv mysql-8.0.xx-linux-glibc2.12-x86_64 /usr/local/mysql
    ​
    

配置与编译

  1. 进入MySQL源码目录:

    cd /usr/local/mysql
    ​
    
  2. 执行配置脚本,指定安装路径和其它选项。这里我们指定安装到 /usr/local/mysql,并启用SSL支持:

    sudo cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_SSL=yes
    ​
    
  3. 编译并安装MySQL:

    sudo make
    sudo make install
    ​
    

初始化MySQL

  1. 更改MySQL数据目录的所有权给MySQL用户(如果尚未创建,先创建MySQL用户和组):

    sudo groupadd mysql
    sudo useradd -r -g mysql -s /bin/false mysql
    sudo chown -R mysql:mysql /usr/local/mysql
    ​
    
  2. 初始化MySQL数据库:

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

    注意:初始化过程会输出root用户的临时密码,务必记录下来。

配置系统服务

  1. 创建MySQL服务启动脚本,并将其放置到 /etc/init.d目录下(示例适用于Systemd系统):

    sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    sudo chmod +x /etc/init.d/mysqld
    ​
    
  2. 设置MySQL服务开机启动,并启动MySQL服务:

    sudo systemctl enable mysqld
    sudo systemctl start mysqld
    ​
    

安全性增强

  1. 登录MySQL并修改root用户的密码:

    mysql -u root -p
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';
    ​
    
  2. 执行MySQL的安全脚本以进一步增强安全设置:

    mysql_secure_installation
    ​
    

测试安装

最后,通过简单的查询来测试MySQL是否安装成功:

mysql -u root -p -e "SHOW DATABASES;"
​

如果一切顺利,您将看到MySQL的默认数据库列表,标志着MySQL 8.0已经成功安装并运行在您的Linux系统上了。

总结

通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
23 3
|
7天前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
21 3
|
17天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
63 3
|
1月前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
149 1
|
8天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
23 4
|
6天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
19 1
|
1月前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
61 3
Mysql(4)—数据库索引
|
15天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
81 1
|
17天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
59 2
|
20天前
|
存储 关系型数据库 MySQL
MySQL vs. PostgreSQL:选择适合你的开源数据库
在众多开源数据库中,MySQL和PostgreSQL无疑是最受欢迎的两个。它们都有着强大的功能、广泛的社区支持和丰富的生态系统。然而,它们在设计理念、性能特点、功能特性等方面存在着显著的差异。本文将从这三个方面对MySQL和PostgreSQL进行比较,以帮助您选择更适合您需求的开源数据库。
80 4