CentOS8部署LNMP环境之编译安装mysql8.0.29的教程详解

CentOS8部署LNMP环境之编译安装Mysql8.0.29的教程详解

简介

MySQL 是一个流行的关系型数据库管理系统,常用于 Web 应用程序的开发和部署。本教程将向您介绍如何在 CentOS 8 服务器上编译安装 MySQL 8.0.29。

步骤一:安装编译工具

在安装 MySQL 之前,需先安装编译 MySQL 所需的工具和库文件:

sudo dnf install -y gcc-c++ ncurses-devel cmake

步骤二:安装依赖库

MySQL 编译时需要一些依赖库,先安装这些库:

sudo dnf install -y libevent-devel libaio-devel

步骤三:下载 MySQL

MySQL 官网 下载源代码,本教程使用的版本是 MySQL 8.0.29:

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.29.tar.gz

步骤四:解压源代码

将下载的文件解压:

tar -zxvf mysql-8.0.29.tar.gz

步骤五:编译安装 MySQL

进入源代码目录,使用 cmake 工具进行配置,然后编译安装 MySQL:

cd mysql-8.0.29
sudo cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DWITH_DEBUG=0
sudo make
sudo make install

在编译过程中,-DCMAKE_INSTALL_PREFIX 用于指定 MySQL 的安装目录(默认为 /usr/local/mysql)。

步骤六:创建 MySQL 用户和组

MySQL 应该使用特定的用户和组来运行。然后,我们添加 mysql 用户和 mysql 组:

sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql

步骤七:初始化 MySQL 数据库

使用以下命令初始化 MySQL 数据库:

sudo mkdir -p /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql
sudo /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
  • --initialize-insecure 表示初始化数据库时直接创建空密码的 root 用户,安全性较低,因此不建议在生产环境中使用;
  • --user 指定运行 MySQL 的用户名;
  • --basedir 指定 MySQL 的安装目录;
  • --datadir 指定 MySQL 的数据目录。

步骤八:启动 MySQL

使用以下命令启动 MySQL:

sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

步骤九:设置 MySQL 管理员的密码

用以下命令设置 root 用户的密码:

sudo /usr/local/mysql/bin/mysqladmin -u root password 'new_password'

测试示例

可以使用以下命令测试 MySQL 是否正常工作:

/usr/local/mysql/bin/mysql -u root -p

然后,在 MySQL 提示符下输入以下命令测试:

SHOW DATABASES;

我们可以看到数据库列表,表明 MySQL 安装成功:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

示例说明

在步骤五中,使用了 -DENABLED_LOCAL_INFILE=1,这是为了让 MySQL 支持本地数据导入。这样在导入数据时就不需要使用远程连接了。

在步骤七中使用了 --initialize-insecure,这种方法虽然简单,但不够安全,建议在生产环境中使用 --initialize 命令初始化数据库并设置 root 用户密码。

以上是 CentOS8 部署 LNMP 环境之编译安装 MySQL 的详细过程。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS8部署LNMP环境之编译安装mysql8.0.29的教程详解 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 如何让tomcat服务增加java启动命令

    下面是详细的攻略: 前置条件 在开始配置Tomcat服务之前,需要确保已经按照官方文档正确安装了Tomcat,并且已经能够正常启动Tomcat服务。 步骤一:打开Tomcat服务配置文件 进入Tomcat安装目录下的bin文件夹,找到catalina.sh文件(Linux或MacOS)或catalina.bat文件(Windows)。这个文件用于配置Tomc…

    database 2023年5月22日
    00
  • 快速掌握Node.js环境的安装与运行方法

    下面是快速掌握Node.js环境的安装与运行方法的完整攻略。 安装Node.js环境 Node.js是基于JavaScript的后端编程语言,因此在使用Node.js前需要安装它的环境。 Windows系统 在Node.js的官网(https://nodejs.org/en/)上下载安装包,选择符合你电脑系统的版本。 下载完成后,双击安装包,一直点击“下一步…

    database 2023年5月22日
    00
  • 使用Java编写控制JDBC连接、执行及关闭的工具类

    下面我就给您详细讲解一下使用Java编写控制JDBC连接、执行及关闭的工具类的攻略。 什么是JDBC? JDBC (Java Database Connectivity,Java数据库连接) 是一种用于执行 SQL 语句的 Java API,可以方便的访问各种关系型数据库。 JDBC连接数据库的步骤 JDBC连接数据库主要分成以下几个步骤: 加载数据库驱动:…

    database 2023年5月19日
    00
  • 基于Redis的Setnx实现分布式锁

    一、 redis分布式锁原理     并发 到Redis里变成了串行排队,单线程   二、基于Redis的Setnx实现分布式锁    1、pom     <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-bo…

    Redis 2023年4月13日
    00
  • 宝塔Linux面板之好用免费的中文Linux VPS主机控制面板适合快速建站

    宝塔Linux面板简介 宝塔Linux面板是一个免费的服务器运维面板,适合于Linux服务器,提供了简单易用的管理界面,提供可视化的操作,便于新手用户快速上手,同时也能满足高级用户的使用需求。 宝塔Linux面板安装 安装宝塔Linux面板非常简单,只需要在Linux服务器上运行以下命令即可: curl -sSO http://download.bt.cn/…

    database 2023年5月22日
    00
  • Java文档注释用法+JavaDoc的使用说明

    Java文档注释是一种特殊的注释格式,用于为Java源代码中的类、接口、方法、字段等元素提供说明文档。JavaDoc是Java自带的文档生成工具,可以通过Java代码中的文档注释来生成API文档。 Java文档注释用法 Java文档注释的格式与普通的注释格式略有不同,其中包含了一些特殊的文本标记。一条Java文档注释要以”/*”开头,中间包含注释文本以及标记…

    database 2023年5月21日
    00
  • 在Redhat9上安装Oracle 9.2

    下面是详细的Redhat9上安装Oracle 9.2的攻略: 准备工作 系统需求 Red Hat Linux Advanced Server 2.1, 3.0,或 Red Hat Enterprise Linux AS 3.0 具备 256MB 的内存,并保留 384MB 的虚拟内存空间 必须拥有 root 权限 软件需求 Oracle 9.2 安装程序 R…

    database 2023年5月22日
    00
  • 如何在Python中使用ORM操作MySQL数据库?

    以下是如何在Python中使用ORM操作MySQL数据库的完整使用攻略,包括导入模块、连接数据库、创建模型、执行查询操作等步骤。同时,提供了两个示例以便更好理解如何在Python中使用ORM操作MySQL数据库。 步骤1:导入模块 在Python中,我们需要导入相应的模块来使用ORM操作MySQL数据库。以下是导入SQLAlchemy模块的基本语法: fro…

    python 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部