HCRM博客

如何在CentOS上编译并安装MySQL?

CentOS 编译安装 MySQL

在 CentOS 系统中,通过源码编译安装 MySQL 是一种常见且灵活的方法,尽管这种方法相对复杂,但它能够提供高度的定制性和灵活性,适合需要特定配置或优化的场景,以下是详细的步骤指南:

如何在CentOS上编译并安装MySQL?-图1
(图片来源网络,侵权删除)

基本环境准备

1、检查系统版本和更新软件包

确保操作系统已更新到最新版本:sudo yum update y

查看当前操作系统版本:cat /etc/redhatrelease

2、安装基础依赖包

使用yum 命令安装必需的依赖工具和库:

```bash

如何在CentOS上编译并安装MySQL?-图2
(图片来源网络,侵权删除)

sudo yum y install wget cmake gcc gccc++ ncurses ncursesdevel libaiodevel openssl openssldevel

```

下载并解压 MySQL 源码包

3、下载 MySQL 源码包

从官方 MySQL 网站或其他可信赖的镜像站点下载 MySQL 源码包,下载 MySQL 8.0.29:

```bash

wget HTTPS://cdn.mysql.com//Downloads/MySQL8.0/mysql8.0.29.tar.gz

如何在CentOS上编译并安装MySQL?-图3
(图片来源网络,侵权删除)

```

4、创建目录并解压源码包

创建一个用于存放源码的目录,并将源码包解压到该目录中:

```bash

mkdir /usr/local/src

cd /usr/local/src

tar xzvf mysql8.0.29.tar.gz

cd mysql8.0.29

```

创建用户和目录

5、添加 MySQL 用户和组

创建 MySQL 用户和组,以便后续操作:

```bash

sudo groupadd mysql

sudo useradd r g mysql s /sbin/nologin mysql

```

6、创建必要的目录并设置权限

创建安装目录和数据目录,并设置正确的权限:

```bash

sudo mkdir p /usr/local/mysql

sudo chown R mysql:mysql /usr/local/mysql

sudo mkdir p /data/mysql

sudo chown R mysql:mysql /data/mysql

sudo chmod R 755 /data/mysql

```

编译和安装 MySQL

7、配置编译参数

使用cmake 配置编译选项,以下是一个示例配置:

```bash

cmake . DCMAKE_INSTALL_PREFIX=/usr/local/mysql

DMYSQL_DATADIR=/data/mysql

DSYSCONFDIR=/etc

DMYSQL_TCP_PORT=3306

DWITH_BOOST=~/mysql8.0.12/boost

DDEFAULT_CHARSET=utf8

DDEFAULT_COLLATION=utf8_general_ci

DENABLED_LOCAL_INFILE=ON

DWITH_INNODB_MEMCACHED=ON

DWITH_INNOBASE_STORAGE_ENGINE=1

DWITH_FEDERATED_STORAGE_ENGINE=1

DWITH_BLACKHOLE_STORAGE_ENGINE=1

DWITH_ARCHIVE_STORAGE_ENGINE=1

DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

DWITH_PERFSCHEMA_STORAGE_ENGINE=1

```

8、编译和安装

执行编译和安装命令:

```bash

make j $(nproc)

sudo make install

```

初始化数据库和启动服务

9、初始化数据库

初始化 MySQL 数据库:

```bash

sudo /usr/local/mysql/bin/mysqld initialize user=mysql

```

10、启动 MySQL 服务

使用 systemd 管理 MySQL 服务:

```bash

sudo systemctl enable mysqld

sudo systemctl start mysqld

```

11、登录 MySQL

登录 MySQL 并设置 root 密码

```bash

sudo /usr/local/mysql/bin/mysql u root

ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password';

FLUSH PRIVILEGES;

EXIT;

```

相关FAQs

1、如何检查 MySQL 服务是否正常运行?

使用以下命令检查 MySQL 服务状态:

```bash

sudo systemctl status mysqld

```

如果服务正在运行,你应该会看到 "active (running)" 的状态信息。

2、如何修改 MySQL 配置文件?

MySQL 的主配置文件通常位于/etc/my.cnf,你可以编辑这个文件来更改各种配置选项,如端口号、字符集等,编辑完成后,记得重启 MySQL 服务以使更改生效:

```bash

sudo systemctl restart mysqld

```

3、如何备份和恢复 MySQL 数据库?

你可以使用mysqldump 工具进行数据库备份:

```bash

sudo /usr/local/mysql/bin/mysqldump u root p your_database > backup.sql

```

使用mysqlimport 工具进行数据恢复:

```bash

sudo /usr/local/mysql/bin/mysql u root p your_database < backup.sql

```

分享:
扫描分享到社交APP
上一篇
下一篇