---
title: 介绍
description: "本文主要介绍如何在使用openEuler或CentOS操作系统的鲲鹏服务器上编译和安装MariaDB。文中将介绍两种安装MariaDB的方式：通过源码编译安装和通过RPM包安装，请根据实际情况选择其中一种安装方式。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/MariaDB/openmind_mariadb1039_03_0001.html
sourcePath: /source/zh/kunpengdbs/ecosystemEnable/MariaDB/openmind_mariadb1039_03_0001.html
indexId: 46d52a8234be89be38023f718ffc32604f74408f4da7bf8a4d80233eba2b289579
---
# 介绍

本文主要介绍如何在使用openEuler或CentOS操作系统的鲲鹏服务器上编译和安装MariaDB。文中将介绍两种安装MariaDB的方式：通过源码编译安装和通过RPM包安装，请根据实际情况选择其中一种安装方式。

openEuler操作系统暂时不支持通过RPM包安装方式，请参见《MariaDB 移植指南(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/MariaDB/openmind_mariadb1039_02_0001.html)》通过源码编译安装MariaDB。

#### 简要介绍

MariaDB数据库管理系统是MySQL的一个分支，主要由开源社区维护，采用GPL授权许可。MariaDB的目的是完全兼容MySQL，包括API和命令行，使之能轻松成为MySQL的替代品。MariaDB还提供了许多更好的新特性。

MariaDB架构如图1所示。

图1 MariaDB逻辑架构

当MariaDB接收到SQL语句时，其详细的执行过程如下：

1. 当客户端连接到MariaDB的时候，会认证客户端的主机名、用户、密码，认证功能可以做成插件。
2. 如果登录成功，客户端发送SQL命令到服务端。由解析器解析SQL语句。
3. 服务端检查客户端是否有权限去获取它想要的资源。
4. 如果查询已经存储在query cache当中，那么结果立即返回。
5. 优化器将会找出最快的执行策略，或者是执行计划，决定哪些表将会被读、哪些索引会被访问以及哪些临时表会被使用，一个好的策略能够减少大量的磁盘访问和排序操作等。
6. 存储引擎读写数据和索引文件，cache用来加速这些操作，其他的诸如事务和外键特性，都是在存储引擎层处理的。
7. 存储引擎在物理层管控数据，它负责数据文件、数据、索引、cache等的管理，这使得管理和读取数据变得更高效，每一张表，都有一个.frm文件，这些文件包含着表的定义。

每一个存储引擎管理、存储数据的方式都是不同的，所支持的特性和性能也不尽相同。例如：

- MyISAM，适合读多写少的环境，且不支持事务，支持全文索引等。
- InnoDB，支持事务，支持行锁和外键等。
- MEMORY，将数据存储在内存当中。
- CSV，将数据存储为CSV格式。

开发语言：C

一句话描述：MySQL开源分支。

关于MariaDB的更多信息请访问MariaDB官网(https://mariadb.org/)。


#### 建议的版本

MariaDB 10.3.8、MariaDB 10.3.9、MariaDB 10.4.17或MariaDB 10.5.8
