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

[特殊字符] CentOS 7 离线安装 MySQL 5.7 实验

🐧 CentOS 7 离线安装 MySQL 5.7 实验

针对企业无互联网环境的系统,设计了如何在 CentOS 7 系统中,使用一台可以联网的主机(NodeA)为另一台无法联网的主机(NodeB)安装 MySQL 5.7 数据库及其依赖。


🧩 一、实验环境介绍

节点名称主机名操作系统IP配置
🌐NodeAcentos7_onlineCentOS 7 (x86_64)NAT: 192.168.234.153HostOnly: 192.168.75.131
📴NodeBcentos7_offlineCentOS 7 (x86_64)HostOnly: 192.168.75.132

📌 说明:使用 VMware 设置虚拟机,NodeA 联网,NodeB 与 NodeA 在同一内网中通信。


🔧 二、NodeA 配置及准备工作(联网主机)

1️⃣ 配置静态 IP 地址

NAT接口(ens32):

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=noDEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
UUID=03175594-4270-41a1-abfb-51a8872467cf
DEVICE=ens32ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.234.153
NETMASK=255.255.255.0
GATEWAY=192.168.234.2
DNS1=192.168.234.2

HostOnly接口(ens33):

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens32
DEVICE=ens32ONBOOT=yes
IPADDR=192.168.75.131
GATEWAY=192.168.75.1
PREFIX=24

重启网络服务并修改主机名:

systemctl restart network
hostnamectl set-hostname online.hy

centos7_offline 的配置也参考这一步,配置 ens32,IP更改为 132:

ONBOOT=yes
IPADDR=192.168.75.132
GATEWAY=192.168.75.1
PREFIX=24systemctl restart network
hostnamectl set-hostname offline.hy

2️⃣ 替换 YUM 源(推荐使用阿里云镜像)

sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sudo yum clean all && sudo yum makecache

🛠️ 三、在 NodeA 下载 MySQL 离线安装包

1️⃣ 安装辅助工具

sudo yum install -y yum-utils createrepo epel-release

2️⃣ 创建存放文件的目录

mkdir -p ~/offline-mysql57
cd ~/offline-mysql57

3️⃣ 配置 MySQL 官方源

wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
sudo yum-config-manager --enable mysql57-community

4️⃣ 下载 MySQL 5.7 所有依赖包

repotrack --arch=x86_64 --download_path=. \mysql-community-server \mysql-community-client \mysql-community-common \mysql-community-libs \mysql-community-libs-compat

5️⃣ 生成本地 YUM 仓库索引

createrepo .

6️⃣ 打包并传输至 NodeB

tar czvf mysql57_offline_centos7.tar.gz *
scp mysql57_offline_centos7.tar.gz root@192.168.75.132:/root/

💻 四、在 NodeB 安装 MySQL 5.7(离线主机)

1️⃣ 解压接收到的安装包

mkdir -p ~/offline-mysql57
cd ~/offline-mysql57
mv /root/mysql57_offline_centos7.tar.gz .
tar xzvf mysql57_offline_centos7.tar.gz

2️⃣ 禁用原有远程仓库,配置本地离线源

sudo yum-config-manager --disable '*' || \sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/*.reposudo tee /etc/yum.repos.d/mysql57-local.repo > /dev/null <<EOF
[mysql57-local]
name=Local MySQL 5.7 Repo
baseurl=file://$HOME/offline-mysql57
enabled=1
gpgcheck=0
EOFsudo yum clean all && sudo yum repolist

3️⃣ 安装 MySQL 服务

sudo yum install -y mysql-community-server

4️⃣ 查看安装结果(可选)

yum info mysql-community-server.x86_64
rpm -qa | grep mysql

5️⃣ 启动服务并设置开机自启动

sudo systemctl enable mysqld --now

6️⃣ 获取初始 root 密码

sudo grep 'temporary password' /var/log/mysqld.log

7️⃣ 登录并修改 root 密码

mysql -uroot -p
# 输入上面查到的临时密码mysql> set global validate_password_policy=LOW;
mysql> set global validate_password_length=6;
mysql> set password = password('123456');
mysql> flush privileges;

🔓 8️⃣ 添加远程访问权限

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
3 rows in set (0.00 sec)mysql> update user set host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
+-----------+---------------+
3 rows in set (0.00 sec)mysql> exit;
Bye

✅ 五、实践总结

📌 离线安装 MySQL 5.7 的关键步骤:

  1. 使用 repotrack 下载完整 RPM 依赖
  2. 使用 createrepo 构建本地仓库索引
  3. 打包 .tar.gz 并通过 SCP/U盘发送至 NodeB
  4. 在 NodeB 禁用远程源,配置本地 YUM 仓库
  5. 安装并初始化 MySQL 服务
  6. 修改 root 密码并添加远程访问权限
http://www.dtcms.com/a/282728.html

相关文章:

  • 【PTA数据结构 | C语言版】列出叶结点
  • vivo S30评测:用设计诠释科技,以性能书写情怀
  • MybatisPlus-11.IService的批量新增
  • 坐标系和相机标定介绍,张正友标定法原理,opencv标定
  • keepalived+Haproxy 高可用配置
  • 中科米堆CASAIM-IM自动化3D扫描系统扫描电脑主机背板产品外观尺寸
  • Apache RocketMQ + “太乙” = 开源贡献新体验
  • Java 大视界 -- 基于 Java 的大数据分布式存储在云计算数据中心数据管理与调度中的应用(348)
  • Web前端:JavaScript和CSS实现的基础登录验证功能
  • k8s集群搭建
  • 【AI智能体】Dify 基于知识库搭建智能客服问答应用详解
  • Redis分布式锁深度剖析:从原理到高可用实践
  • MongoDB复杂查询 聚合框架
  • 个人笔记(linux/sort与uniq命令)
  • ETL还是ELT,大数据处理怎么选更靠谱?
  • GIT : early EOF invalid index-pack output
  • Jmeter socket接口测试
  • C#——循环(while循环和do-while循环)
  • Python 与JA3 库的应用
  • 在 Linux 系统中实现 Spring Boot 程序自动启动的最佳实践
  • STM32 GPIO
  • 【深度学习】神经网络-part2
  • 架构设计之计算高性能——单体服务器高性能
  • 算法训练营DAY34 第九章 动态规划part02
  • 告别定位盲区!低成本组合导航系统ER-GNSS/MINS-05的实战能力
  • 不安全的 SSL:主机名验证功能被禁用与修复方案
  • WP Force SSL Pro – HTTPS SSL Redirect Boost Your Website‘s Trust in Minutes!
  • 使用token调用Spring OAuth2 Resource Server接口错误 insufficient_scope
  • 服务攻防-Java组件安全数据处理FastJsonJackSonXStream自动BP插件CVE漏洞
  • 多级缓存架构与热点探测系统核心技术解析