如何在服务器上编译并部署MySQL?

服务器编译部署MySQL

服务器编译部署mysql

一、前言

MySQL作为广泛使用的开源关系型数据库管理系统,在企业中得到了广泛应用,本文将详细介绍如何在Linux服务器上通过源码编译的方式安装和部署MySQL,并探讨其与使用RPM包安装的优缺点。

二、关于MySQL的安装方式

MySQL一般可以采用以下几种安装方式:

Yum安装:简单方便,适用于能访问网络的环境。

离线源码编译安装:可定制,适用性强,适用于无网络环境或需要定制MySQL的场景。

RPM包安装:简单方便,适用于RedHat系统。

服务器编译部署mysql

通用二进制包安装:简单好维护,适用于大多数环境。

三、部署规划

服务器规划

服务器 操作系统版本 CPU架构 MySQL安装方式
node6 CentOS Linux release 7.4.1708 x86_64 源码编译安装MySQL
node7 CentOS Linux release 7.4.1708 x86_64 通用二进制包安装MySQL
node8 CentOS Linux release 7.4.1708 x86_64 RPM包安装MySQL
node9 CentOS Linux release 7.4.1708 x86_64 yum安装MySQL

数据库目录规划

文件类型 文件部署位置
数据目录datadir /data/data(确保该目录足够大)
配置文件my.cnf /etc/my.cnf
错误日志log-error /data/log/mysql_error.log
二进制日志log-bin /data/binlogs/mysql-bin(用于数据库恢复和主从复制)
慢查询日志slow_query_log_file /data/log/mysql_slow_query.log
套接字文件socket /data/run/mysql.sock
进程ID文件mysql.pid /data/run/mysql.pid

四、准备工具

MySQL通用二进制包:mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz

下载地址: https://dev.mysql.com/downloads/mysql/5.7.html#downloads

MySQL RPM包:mysql-community-client-5.7.28-1.el7.x86_64.rpm

下载地址: https://dev.mysql.com/downloads/mysql/5.7.html#downloads

服务器编译部署mysql

MySQL源码包:mysql-boost-5.7.28.tar.gz

下载地址: https://dev.mysql.com/downloads/mysql/5.7.html#downloads

MySQL的Yum源:mysql57-community-release-el7-10.noarch.rpm

下载地址: http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm

五、源码编译安装MySQL

准备工作

确保你的CentOS 7系统已更新到最新状态,并安装了必要的编译工具,可以使用以下命令进行更新和安装工具:

sudo yum update -y
sudo yum install -y gcc-c++ cmake make

下载MySQL源码

从MySQL官方网站下载MySQL的源代码包,假设我们要安装MySQL 8.0.29,可以使用如下命令:

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.29.tar.gz
tar -zxvf mysql-8.0.29.tar.gz
cd mysql-8.0.29

配置编译参数

在编译MySQL之前,需要配置编译参数,这一步非常重要,因为它决定了MySQL的功能和性能。

cmake 
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DDEFAULT_CHARSET=utf8mb4 
    -DDEFAULT_COLLATION=utf8mb4_unicode_ci 
    -DWITH_EXTRA_CHARSETS=all 
    -DWITH_MYISAM_STORAGE_ENGINE=1 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_PARTITION_STORAGE_ENGINE=1 
    -DWITH_READLINE=1 
    -DWITH_ZLIB=system 
    -DWITH_LIBWRAP=0 
    -DWITH_DEBUG=0 
    -DENABLED_LOCAL_INFILE=1 
    -DWITH_SSL=system 
    -DWITH_EMBEDDED_SERVER=1 
    -DWITH_PLUGIN_DIR="/usr/local/mysql/lib/plugin" 
    .

编译和安装

配置完成后,可以开始编译和安装MySQL。

make -j $(nproc)
sudo make install

配置MySQL

创建MySQL用户和组

sudo groupadd mysql
sudo useradd -r -g mysql mysql

初始化MySQL数据库

sudo chown -R mysql:mysql /usr/local/mysql
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql

启动MySQL服务

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

创建MySQL服务

为了让MySQL服务在系统启动时自动启动,需要创建一个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=multi-user.target
EOF

然后启用并启动MySQL服务:

sudo systemctl enable mysqld
sudo systemctl start mysqld

登录MySQL

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

设置root密码:

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

六、与RPM包安装的比较

灵活性:

编译源码可以让你根据需要选择不同的编译选项,从而获得更符合需求的功能和性能,而RPM包安装则无法提供这种灵活性。

兼容性:

编译源码时可以确保MySQL与现有系统环境的兼容性,RPM包安装可能会因为依赖问题导致不兼容。

复杂性:

编译源码安装相对复杂,需要更多的时间和专业知识,而RPM包安装则相对简单快捷。

维护:

使用RPM包安装的MySQL更容易维护和更新,因为可以通过包管理器轻松升级,而编译源码安装需要手动管理更新过程。

以上内容就是解答有关“服务器编译部署mysql”的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/715175.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-12-08 02:42
Next 2024-12-08 02:45

相关推荐

  • 使用asp服务器的优势有哪些

    ASP服务器的优势包括易于使用、灵活性高、与Windows系统兼容性好,以及支持多种编程语言。

    2024-02-09
    0168
  • ubuntu怎样切换到root用户

    在Ubuntu系统中,切换到root用户的方法有很多种,这里我们介绍一种常用的方法:使用`su`命令加上`-c`选项,后面跟上需要执行的命令,这种方法可以让你在不输入密码的情况下切换到root用户,但请注意,这样做存在一定的安全风险,因为root用户拥有系统的最高权限,在使用完毕后,请尽快切换回普通用户以保证系统安全。下面是具体的操作……

    2023-11-27
    0221
  • 虚拟主机搭建app

    厦门虚拟主机搭建前的准备工作1、选择合适的虚拟主机服务商在搭建虚拟主机之前,首先要选择一个合适的虚拟主机服务商,可以选择国内知名的阿里云、腾讯云等服务商,也可以选择一些国外的服务商,如GoDaddy、SiteGround等,在选择时,要根据自己的需求和预算来决定,同时要注意服务商的稳定性、技术支持和售后服务等方面的评价。2、准备域名域……

    2024-01-15
    0117
  • 如何在Steam平台上创建自己的游戏服务器?

    要在steam上创建游戏服务器,请先打开steam客户端,然后点击左上角的“视图”菜单,选择“设置”,在弹出的窗口中选择“远程的玩”,勾选“启用远程的玩”,然后点击“确认”。找到您想要创建服务器的游戏,右键点击它,选择“属性”,在弹出的窗口中选择“设置启动选项”,在文本框中输入“-console”并点击“确定”。返回主界面,点击左上角的“游戏”菜单,选择“创建服务器”,按照提示完成服务器的创建。

    行业资讯 2024-10-22
    015
  • 主机双系统怎么进虚拟机系统

    要进入虚拟机系统,首先需要确保虚拟机已经安装并设置完毕。然后在主机上选择并启动虚拟机系统,等待其自动安装完成后即可使用。对于双系统主机,通常在开机时通过BIOS设置选择启动的系统。如果主机是Windows系统,且采用VMware Workstation等虚拟化软件来运行Ubuntu等虚拟机系统,可以在开机时选择"Boot Menu"或"Boot Manager",在出现的启动菜单中选择虚拟机系统来启动。

    2024-03-12
    0210
  • 什么是分布式负载均衡架构?

    分布式负载均衡架构一、引言随着互联网的快速发展和用户数量的急剧增加,高并发访问和海量数据处理成为了现代网络应用面临的重大挑战,为了应对这些挑战,分布式系统架构应运而生,而负载均衡作为分布式系统中的重要技术,通过将工作负载分布到多个服务器或资源上,提高了系统的可用性、可靠性和性能,本文将深入探讨分布式负载均衡架构……

    2024-11-26
    04

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入