使用源码进行MySQL安装

一、下载MySQL源码

要进行MySQL的源码安装,首先需要从官方网站https://dev.mysql.com/downloads/mysql/下载合适的MySQL源码包。如果要安装的是MySQL 8.0版本,可以下载一个tar.gz格式的源码包,例如mysql-8.0.21.tar.gz。

下载完成后,将源码包复制到要安装MySQL的服务器上,并解压到一个合适的目录中:

# mkdir /usr/local/src/mysql
# tar -zxvf mysql-8.0.21.tar.gz -C /usr/local/src/mysql

二、安装MySQL所需依赖

在安装MySQL前,需要先安装MySQL所需的一些依赖库和工具,包括cmake、gcc、ncurses和openssl等。

以CentOS 7系统为例,可以通过以下命令安装所需的依赖:

# yum install cmake gcc ncurses-devel openssl-devel -y

三、配置MySQL编译选项

通过cmake对MySQL进行编译时,需要对编译选项进行配置。以下是一些常用的编译选项:

  • -DCMAKE_INSTALL_PREFIX:指定MySQL的安装路径,默认为/usr/local/mysql。
  • -DMYSQL_DATADIR:指定MySQL的数据文件存放目录,默认为安装目录下的data目录。
  • -DDEFAULT_CHARSET:指定MySQL的默认字符集。
  • -DDEFAULT_COLLATION:指定MySQL的默认排序规则。
  • -DWITH_BOOST:启用BOOST库支持。
  • -DWITH_INNOBASE_STORAGE_ENGINE:启用InnoDB存储引擎。
  • -DWITH_MYISAM_STORAGE_ENGINE:启用MyISAM存储引擎。
  • -DWITH_ARCHIVE_STORAGE_ENGINE:启用Archive存储引擎。

以下是一个例子,指定MySQL的安装路径为/usr/local/mysql,数据文件存放在/var/mysql:

# cd /usr/local/src/mysql/mysql-8.0.21
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/mysql -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_BOOST=boost -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1

四、编译MySQL源码

进行完配置后,就可以进行MySQL源码的编译了:

# make -j $(nproc)

五、安装MySQL

编译完成后,就可以安装MySQL了。以下是安装命令:

# make install

六、初始化MySQL数据库

安装完成后,需要对MySQL进行数据库的初始化:

# cd /usr/local/mysql
# bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/var/mysql

–initialize-insecure选项表示不启用密码验证,需要在之后进行修改。

七、启动MySQL服务

初始化完成后,可以启动MySQL服务:

# bin/mysqld_safe --user=mysql &

如果需要在后台运行,可以加上–daemonize选项。

八、修改MySQL管理员密码

MySQL管理员密码默认为空,需要进行设置:

# bin/mysql -u root
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yournewpassword';
mysql> FLUSH PRIVILEGES;
mysql> exit;

九、配置MySQL开机自启

为了让MySQL在每次启动时自动运行,可以将MySQL服务加入系统启动项中。以下是CentOS 7系统的示例:

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# chmod +x /etc/init.d/mysql
# chkconfig --add mysql
# chkconfig mysql on
# systemctl daemon-reload

十、总结

以上就是使用源码进行MySQL安装的全部过程,需要注意的是,使用源码进行安装需要具备一些Linux基础知识和操作经验,否则容易出现错误。此外,在进行安装时,应该根据实际情况进行自定义配置,以满足实际需求。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/239135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 12:14
下一篇 2024-12-12 12:15

相关推荐

  • 如何修改mysql的端口号

    本文将介绍如何修改mysql的端口号,方便开发者根据实际需求配置对应端口号。 一、为什么需要修改mysql端口号 默认情况下,mysql使用的端口号是3306。在某些情况下,我们需…

    编程 2025-04-29
  • 云智直聘 源码分析

    本文将会对云智直聘的源码进行分析,包括前端页面和后端代码,帮助读者了解其架构、技术实现以及对一些常见的问题进行解决。通过本文的阅读,读者将会了解到云智直聘的特点、优势以及不足之处,…

    编程 2025-04-29
  • Python操作MySQL

    本文将从以下几个方面对Python操作MySQL进行详细阐述: 一、连接MySQL数据库 在使用Python操作MySQL之前,我们需要先连接MySQL数据库。在Python中,我…

    编程 2025-04-29
  • MySQL递归函数的用法

    本文将从多个方面对MySQL递归函数的用法做详细的阐述,包括函数的定义、使用方法、示例及注意事项。 一、递归函数的定义 递归函数是指在函数内部调用自身的函数。MySQL提供了CRE…

    编程 2025-04-29
  • MySQL bigint与long的区别

    本文将从数据类型定义、存储空间、数据范围、计算效率、应用场景五个方面详细阐述MySQL bigint与long的区别。 一、数据类型定义 bigint在MySQL中是一种有符号的整…

    编程 2025-04-28
  • Python网站源码解析

    本文将从多个方面对Python网站源码进行详细解析,包括搭建网站、数据处理、安全性等内容。 一、搭建网站 Python是一种高级编程语言,适用于多种领域。它也可以用于搭建网站。最常…

    编程 2025-04-28
  • MySQL左连接索引不生效问题解决

    在MySQL数据库中,经常会使用左连接查询操作,但是左连接查询中索引不生效的情况也比较常见。本文将从多个方面探讨MySQL左连接索引不生效问题,并给出相应的解决方法。 一、索引的作…

    编程 2025-04-28
  • 源码是什么

    源码是一段计算机程序的原始代码,它是程序员所编写的可读性高、理解性强的文本。在计算机中,源码是指编写的程序代码,这些代码按照一定规则排列,被计算机识别并执行。 一、源码的组成 源码…

    编程 2025-04-27
  • Go源码阅读

    Go语言是Google推出的一门静态类型、编译型、并发型、语法简单的编程语言。它因具有简洁高效,内置GC等优秀特性,被越来越多的开发者所钟爱。在这篇文章中,我们将介绍如何从多个方面…

    编程 2025-04-27
  • CentOS 7在线安装MySQL 8

    在本文中,我们将介绍如何在CentOS 7操作系统中在线安装MySQL 8。我们会从安装环境的准备开始,到安装MySQL 8的过程进行详细的阐述。 一、环境准备 在进行MySQL …

    编程 2025-04-27

发表回复

登录后才能评论