之前有朋友遇到 离线安装 percona-xtraDB-cluster,具体原因是他在一家国企工作,只能内网操作,不能连外网进行安装,再则有要求要实体机进行安装,导致docker方案也不让用。
上述条件导致他只能选择离线安装。
经过我和他一夜不眠,外加几天的折腾,终于搞成了。
centos镜像
官网的centos镜像下载地址,如果自己没有镜像,或者镜像非官方的原因,则去官网下载官方镜像
一、首先需要制作 一个完整的依赖包
-
首先先准备一个centos7 基础版环境(不带图像界面化的版本,依赖最小化):配置好网络。(需要依靠它制作依赖包(本质上就是将所有会用到的rpm包给下载下来) ) 推荐使用依赖最小化的情况下使用依赖管理下载依赖,这样才能确保在生产环境下不会缺少依赖。 -
根据percona官方提供的文档,将percona集群的rpm仓库源安装一下,经过实验,阿里云、腾讯云、华为云、网易云镜像仓库没有percona的集群依赖文件。官网 标题 Percona XtraDB Cluster 8.0 on CentOS 7 下有详细步骤
自己的电脑上制作
1). 安装仓库
sudo yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm
2). 启用release版本的mysql8.0-pxc集群方案的依赖
sudo percona-release enable-only pxc-80 release
3). 开启相关的release版本的工具依赖
sudo percona-release enable tools release
4). 更新一下yum的rpm索引文件(如果上述文1,2,3步骤出现错误,可以每条命令后都执行一些更新缓存)
yum update -y
- 通过第2.步得到的命令yumdownloader去下载依赖
创建目录,用于存储相关的rpm包 这一步也可以不做,因为后面会自动生成
mkdir -p /opt/pxc/
下面这行命令的作用是将percona-xtradb-cluster 这个依赖下载到/opt/pxc/ 之所以要用到percona-xtradb-cluster 是根据 之前Ubuntu环境下创建pxc集群 的参考,以及官方文档中的命令提示
sudo yum install --downloadonly --downloaddir=/opt/pxc percona-xtradb-cluster -y
执行完后会得到相关的依赖,可能数量不同,会根据你运行的centos的环境变化
会得到下面文件,缺失个别文件,则手动下载一下
下面是过程,会得到22个rpm文件
tar打包和解包命令,需要用到时就用,不需要则跳过
前面通过yum将依赖下载到了/opt/pxc文件夹中,现在将文件夹进行打包 打包命令
tar -zcvf pxc.tar.gz /opt/pxc/
解包命令 解压到当前路径下
tar -xzvf pxc.tar.gz ./
将22个 rpm文件上传到生产环境 下
将这22个文件上传到生产环境上,在22个rpm文件所在的目录打开终端,或者cd过去。 当然你也可以选择打包后上传进行解压缩,总之在这22个文件所在目录下执行下面这行命令就可以安装完成了
yum install *.rpm
如果没有报什么错,如下22个文件都安装上了,则大功告成,如果遇到错误,则只需要根据错误提示进行操作。 比如依赖冲突啥的,去掉冲突的依赖,例如:mariadb,将其卸载重新执行一遍即可
需要注意的点:
因为centos自己本身可能会更新,随着时代的发展,很可能会导致我所用到的环境的centos镜像和你所用到的版本不一致,会导致一些区别,可能会失败。
你只需要按照我博客中讲到的顺序,一步一步来,就可以完成pxc的安装
后续的pxc启动集群
|