HCRM博客

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

在 CentOS 上编译和安装 MySQL,可以通过源码编译的方式来进行,以下是详细的步骤:

基本环境准备

1、系统环境:CentOS 7.6.1810 (Core)

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

2、内核版本:5.2.141.el7.elrepo.x86_64

安装依赖包

1、更新系统并安装基础工具

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

下载 MySQL 源码及解压

1、下载 MySQL 源码

wget https://dev.mysql.com/get/Downloads/MySQL8.0/mysqlboost8.0.17.tar.gz

2、解压文件

tar xf mysqlboost8.0.17.tar.gz
cd mysql8.0.17/

创建用户和目录

1、创建 MySQL 用户和组

groupadd mysql
useradd r g mysql s /sbin/nologin mysql

2、创建安装目录并设置权限

如何在CentOS上编译并安装MySQL?-图2
(图片来源网络,侵权删除)
mkdir p /usr/local/mysql
chown R mysql:mysql /usr/local/mysql
chown R mysql:mysql /data/mysql
chmod R 755 /data/mysql
chmod R 755 /usr/local/mysql

编译安装 MySQL

1、配置编译参数

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

2、编译和安装

make j $(nproc)
sudo make install

初始化数据库

1、初始化数据库文件

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

2、启动 MySQL 服务

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

3、创建 systemd 服务文件

sudo cat > /etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld_safe
Restart=always
RestartSec=10
[Install]
WantedBy=multiuser.target
EOF

4、启用并启动服务

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

登录 MySQL 并设置 root 密码

1、登录 MySQL

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

2、设置 root 密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
EXIT;

FAQs

1、如何检查 MySQL 是否启动成功?:使用命令systemctl status mysqld 可以查看 MySQL 服务的状态,如果显示 "active (running)",则表示 MySQL 已成功启动。

2、如何修改 MySQL 配置文件?:MySQL 的配置文件通常位于/etc/my.cnf,可以使用文本编辑器(如 vi 或 nano)打开并进行编辑,修改后需要重启 MySQL 服务使更改生效,使用命令sudo systemctl restart mysqld

3、如何备份 MySQL 数据库?:可以使用mysqldump 工具进行备份,要备份名为mydatabase 的数据库,可以使用以下命令:mysqldump u root p mydatabase > mydatabase_backup.sql,这将生成一个 SQL 文件,其中包含数据库的所有数据和结构。

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