当前位置: 首页 > news >正文

RHEL7.9、RHEL9.3——源码安装MySQL

目录

一、环境部署

 1. 克隆rhel7.9虚拟机

二、源码安装MySQL

 1. 准备工作

 2. 源码部署mysql8.0.40

  1)安装编译mysql所需软件包

  2)编译安装mysql8.0.40

  3)生成启动脚本


一、环境部署

 1. 克隆rhel7.9虚拟机

  • 改名为 “RHEL79_mysql_master” 并修改IP

  • 远程登陆连接
  • 修改主机名
[root@rhel79 ~]# hostnamectl set-hostname mysql-master
[root@rhel79 ~]# reboot

 2. 克隆9.3虚拟机

  • 改名为 “RHEL93_mysql_server” 并修改IP

  • 远程登陆连接
  • 修改主机名
[root@rhel93 ~]# hostnamectl set-hostname mysql-server
[root@rhel93 ~]# reboot

二、源码安装MySQL

 1. 准备工作,二者同步骤

  • 下载安装包8.0.40
    • 链接:https://downloads.mysql.com/archives/community/
  • 上传下载后的安装包
[root@mysql-master ~]# cd /opt/     # 将压缩包上传至该路径下
[root@mysql-master opt]# ll    # 查看压缩包名称
总用量 479008
-rw-r--r-- 1 root root 490502884 9月   2 14:29 mysql-boost-8.0.40.tar.gz
  • 解压缩
[root@mysql-master opt]# tar xf mysql-boost-8.0.40.tar.gz    # 解压[root@mysql-master opt]# ll
总用量 479012
drwxr-xr-x 32 7161 31415      4096 9月  18 2024 mysql-8.0.40
-rw-r--r--  1 root root  490502884 9月 2 14:29 mysql-boost-8.0.40.tar.gz[root@mysql-master opt]# cd mysql-8.0.40/
[root@mysql-master mysql-8.0.40]# ls     # 查看
boost             doxygen_resources    mysql-test         sql
client            extra                MYSQL_VERSION      sql-common
cmake             include              mysys              storage
CMakeLists.txt    INSTALL              packaging          strings
components        libbinlogevents      plugin             support-files
config.h.cmake    libbinlogstandalone  README             testclients
configure.cmake   libchangestreams     router             unittest
CONTRIBUTING.md   libmysql             run_doxygen.cmake  utilities
Docs              libservices          scripts            vio
Doxyfile-ignored  LICENSE              SECURITY.md
Doxyfile.in       man                  share

 2. 源码部署mysql8.0.40

  1)RHEL7.9

  • 安装编译mysql所需软件包
# 安装mysql8的依赖软件----------------------------------------------------------
[root@mysql-master ~]# yum install -y git bison openssl-devel ncurses-devel -y# 安装cmake3-------------------------------------------------------------------
[root@mysql-master ~]# yum list cmake   # 查看可安装的版本
可安装的软件包
cmake.x86_64                  2.8.12.2-2.el7             baseos[root@mysql-master ~]# vim /etc/yum.repos.d/epel.repo
添加如下内容:
[epel]
name=epel
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0[root@mysql-master ~]# yum install  cmake3 -y    # 安装# 安装gcc-11,找到相关的rpm包上传至linux后解压并安装----------------------------
[root@mysql-master ~]# cd /opt/     # 将gcc-11的安装包上传到该路径下
[root@mysql-master opt]#ll
总用量 534764
-rw-r--r--  1 root root   57087061 9月 2 14:44 gcc-11.zip
drwxr-xr-x 32 7161 31415      4096 9月 18 2024 mysql-8.0.40
-rw-r--r--  1 root root  490502884 9月 2 14:29 mysql-boost-8.0.40.tar.gz[root@mysql-master opt]# yum install unzip -y   # 安装unzip
[root@mysql-master opt]# unzip gcc-11.zip   # 解压缩[root@mysql-master opt]# cd gcc-11/
[root@mysql-master gcc-11]# ls[root@mysql-master gcc-11]# yum install ./*.rpm -y   # 安装
[root@mysql-master gcc-11]# source  /opt/rh/devtoolset-11/enable # 生效
[root@mysql-master gcc-11]# cat /opt/rh/devtoolset-11/enable >> ~/.bash_profile   # 读入[root@mysql-master gcc-11]# gcc -v   # 查看版本
gcc version 11.2.1 20220127 (Red Hat 11.2.1-9) (GCC) 
  •  编译安装mysql8.0.40
[root@mysql-master ~]# cd /opt/
[root@mysql-master opt]# cd mysql-8.0.40/[root@mysql-master mysql-8.0.40]# mkdir bld   # 新建目录
[root@mysql-master mysql-8.0.40]# cd bld下列为一串代码,提示语删掉哦
[root@mysql-master bld]# cmake3 .. \   
-DWITH_BOOST=../boost/boost_1_77_0/ \ # 指定MySQL源码编译所依赖的Boost库路径
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \		# 指定安装路径
-DMYSQL_DATADIR=/data/mysql \					# 指定数据目录
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \		# 指定套接字文件
-DWITH_INNOBASE_STORAGE_ENGINE=1 \	# 指定启用INNODB存储引擎,默认用myisam
-DWITH_EXTRA_CHARSETS=all \						# 扩展字符集
-DDEFAULT_CHARSET=utf8mb4 \						# 指定默认字符集
-DDEFAULT_COLLATION=utf8mb4_unicode_ci \		# 指定默认校验字符集
-DWITH_SSL=system					# 指定MySQL使用系统已安装的 SSL 库# 该过程很久,请耐心等待,利用多核 CPU 资源同时运行 2 个编译进程
[root@mysql-master bld]# make  -j 2 [root@mysql-master bld]# make install     # 安装
  • 生成启动脚本
# 生成启动脚本
[root@mysql-master ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld# 修改环境变量
[root@mysql-master ~]# vim ~/.bash_profile
添加如下内容:
export PATH=$PATH:/usr/local/mysql/bin[root@mysql-master ~]# source ~/.bash_profile    # 生效# 建立数据库程序运行用户
[root@mysql-master ~]# useradd -M -s /sbin/nologin mysql# 建立数据库数据目录
[root@mysql-master ~]# mkdir -p /data/mysql/
[root@mysql-master ~]# chown -R mysql:mysql /data/mysql/# 创建配置文件
[root@mysql-master ~]# vim /etc/my.cnf
全部删出,然后添加如下内容:提示语删掉
[mysqld]
datadir=/data/mysql     # 指定数据目录
socket=/data/mysql/mysql.sock     # 指定套接字
server_id=136     # 写该主机的主机号即可
log-bin=binlog# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd[mysqld_safe]
log-error=/data/mysql/master.err
pid-file=/data/mysql/mysql.pid#
# include all files from the config directory
#
!includedir /etc/my.cnf.d----------------------------------------------------------------------
# 数据库初始化建立mysql基本数据,注意在输出中查看临时密码
[root@mysql-master ~]# mysqld --initialize --user=mysql
IjhUEt+J>2n.#启动数据库
[root@mysql-master ~]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/master.err'.
临时密码:. SUCCESS!#修改数据库密码,新密码为123
[root@mysql-master ~]# mysqladmin -uroot -p password  '123'
Enter password: IjhUEt+J>2n.    # 临时密码
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.#使用新密码登录数据库
[root@mysql-master ~]# mysql -uroot -p123
mysql>

 注意:数据库初始化建立mysql基本数据,注意在输出中查看临时密码

  2)RHEL9.3

  • 安装编译mysql所需软件包
# 安装mysql8的依赖软件--------------------------------------------------
[root@mysql-server ~]# yum install -y git bison openssl-devel ncurses-devel -y# 安装cmake3-----------------------------------------------------------
[root@mysql-server ~]# yum list cmake   # 查看版本,是3以上即可
cmake.x86_64                 3.20.2-8.el9               App
若安装,同7.9
# 安装gcc,找到相关的rpm包上传至linux后解压并安装-------------------------
[root@mysql-server ~]# yum list gcc     # 查看版本,是11即可
gcc.x86_64               11.4.1-2.1.el9             App [root@mysql-server ~]# yum install ncurses ncurses-devel make cmake gcc-c++ openssl-devel bison -y[root@mysql-server opt]# yum install ./*.rpm -y   # 安装所需的依赖
  • 编译安装mysql8.0.40
[root@mysql-server ~]# cd /opt/
[root@mysql-server opt]# cd mysql-8.0.40/[root@mysql-server mysql-8.0.40]# mkdir bld   # 新建目录
[root@mysql-server mysql-8.0.40]# cd bld下列为一串代码,提示语删掉哦
[root@mysql-server bld]# cmake .. \   
-DWITH_BOOST=../boost/boost_1_77_0/ \ # 指定MySQL源码编译所依赖的Boost库路径
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \		# 指定安装路径
-DMYSQL_DATADIR=/data/mysql \					# 指定数据目录
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \		# 指定套接字文件
-DWITH_INNOBASE_STORAGE_ENGINE=1 \	# 指定启用INNODB存储引擎,默认用myisam
-DWITH_EXTRA_CHARSETS=all \						# 扩展字符集
-DDEFAULT_CHARSET=utf8mb4 \						# 指定默认字符集
-DDEFAULT_COLLATION=utf8mb4_unicode_ci \		# 指定默认校验字符集
-DWITH_SSL=system					# 指定MySQL使用系统已安装的 SSL 库# 该过程很久,请耐心等待,利用多核 CPU 资源同时运行 2 个编译进程
[root@mysql-server bld]# make  -j 2[root@mysql-server bld]# make install     # 安装
  • 生成启动脚本
# 生成启动脚本
[root@mysql-server ~]# mkdir -p /etc/init.d/
[root@mysql-server ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld# 修改环境变量
[root@mysql-server ~]# vim ~/.bash_profile
添加如下内容:
export PATH=$PATH:/usr/local/mysql/bin[root@mysql-server ~]# source ~/.bash_profile    # 生效# 建立数据库程序运行用户
[root@mysql-server ~]# useradd -M -s /sbin/nologin mysql# 建立数据库数据目录
[root@mysql-server ~]# mkdir -p /data/mysql/
[root@mysql-server ~]# chown -R mysql:mysql /data/mysql/# 创建配置文件
[root@mysql-server ~]# vim /etc/my.cnf
全部删除,然后添加如下内容:
[mysqld]
datadir=/data/mysql   
socket=/data/mysql/mysql.sock    
server_id=134
log-bin=binlog# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd[mysqld_safe]
log-error=/data/mysql/master.err
pid-file=/data/mysql/mysql.pid#
# include all files from the config directory
#
# !includedir /etc/my.cnf.d----------------------------------------------------------------------
# 数据库初始化建立mysql基本数据,注意在输出中查看临时密码
[root@mysql-server ~]# mysqld --initialize --user=mysql
临时密码:slbS3b7HbO/N#启动数据库
[root@mysql-server ~]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/master.err'.SUCCESS!#修改数据库密码,新密码为123
[root@mysql-server ~]# mysqladmin -uroot -p password  '123'
Enter password: slbS3b7HbO/N    # 临时密码
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.#使用新密码登录数据库
[root@mysql-server ~]# mysql -uroot -p123
mysql>
  • 数据库初始化建立mysql基本数据,注意在输出中查看临时密码

http://www.xdnf.cn/news/1469233.html

相关文章:

  • 人工智能领域、图欧科技、IMYAI智能助手2025年8月更新月报
  • 辗转相除法(欧几里得算法)的证明
  • mysql进阶语法(视图)
  • 25高教社杯数模国赛【A题国奖核心成品论文+问题解析】第一弹
  • 如何提升技术架构设计能力?
  • 保姆级 i18n 使用攻略,绝对不踩坑(帮你踩完了)
  • 《C++ printf()函数的深度解析》
  • vue 经常写的echarts图表模块结构抽取
  • 串口通信—UART
  • 大尺度空间模拟预测与数字制图技术
  • 面向制造与装配的公差分析:成本控制与质量提升方法​
  • 拿到一组数据在mars3d上渲染报错排查思路
  • HTML 各种标签的使用说明书
  • 【AI总结】在 Peewee 中基于 MySQL 实现“动态表名”——从连接到查询的完整实战
  • nVisual从入门到精通—用户操作
  • 【Kubernetes】知识点总结5
  • Vue用户管理系统代码逐行详解
  • 【Linux】系统部分——进程间通信1(管道)
  • 从零到上线:直播美颜SDK中人脸美型功能的技术实现与效果优化
  • 【ARDUINO】ESP8266的AT指令返回内容集合
  • 【教程】快速入门golang
  • (计算机网络)DNS解析流程及两种途径
  • 51单片机-串口通信
  • 系统性学习数据结构-第三讲-栈和队列
  • 通信安全员【单选题】考试题库及答案
  • Android的DTBO详解
  • SQL Server 原生备份与第三方备份:哪个更适合您的组织?
  • 服务器测试网速教程:基于iperf进行测试带宽
  • 基于单片机金属探测器设计
  • 「数据获取」《中国包装业发展研究报告(2008)》