重要:
- 回滚前建议给整个机器打快照,进行备份,以防回滚之后出现不可预估的无法恢复的情况
- 数据库备份
- 备份 /opt/dataease 目录下所有内容
- 建议技术人员操作,防止误操作
回退版本操作,需要根据自己实际情况修改部分命令:
1 备份数据库
#进入 MySQL 容器
docker exec mysql -it bash
#备份 DataEase 数据库
mysqldump -u root -pPassword -R dataease > dataease20221010_V1.5.sql
2 从容器里将备份数据库备份到服务器中
2.1 查看 MySQL 容器 ID
docker ps
2.2 从容器里将备份数据库备份到服务器中( 211712695ac3 为容器 id )
docker cp 211712695ac3:/dataease20221010_V1.5.sql /dataease20221010_V1.5.sql
3 停止服务
dectl stop
4 备份 15 版本的 /opt/dataease 目录
cp -rf dataease bakV1.15_dataease
5 恢复 14 版本备份的 /opt/dataease 目录内容
mv bakV1.4_dataease/ dataease
6 恢复 MySQL 数据库 V1.4 版本的备份文件
#进入 MySQL 容器
docker exec mysql -it bash
#恢复 1.4 版本备份的数据库
mysql –uroot -pPassword123@mysql -Ddataease < dataease20221010_V1.4.sql
7 查看下载的离线安装包中的镜像,对比镜像与当前回滚镜像版本的差别
#进入下载的待回滚的安装包的镜像目录下
cd /tmp/dataease-v1.14.0-offline/images
#查看文件
ll
#查看当前已有的镜像文件
docker images
8 根据回退版本解压镜像
找出不一样的镜像包,进行解压,这里一般只有 dataease 服务镜像有差别,所以以 dataease 服务镜像回退为例
8.1 有 1.14 版本的镜像,直接解压 1.14 版本的 dataease 服务镜像
#解压回滚版本的镜像
docker load -i dataease:v1.14.0.tar.gz
8.2 无 1.14 版本的镜像,去官网下载需要回退的版本的安装包,上传到服务器并解压
cd /tmp
tar zxvf dataease-v1.14.0-offline.tar.gz
#进入解压的项目目录,解压 1.14 版本的 dataease 服务镜像
cd /tmp/dataease-v1.14.0-offline/images
#解压回滚版本的镜像
docker load -i dataease:v1.14.0.tar.gz
8.3 修改配置文件版本号
查看 docker-compos.yml 对应的版本号是否未本次回退的版本号,如果涉及其它服务回退版本,依次修改其它配置文件的对应版本号
cd /opt/dataease
#编辑 docker-compos.yml 文件,修改为对应版本,如下图所示:
vi docker-compos.yml
9 重启服务
dectl restart