【工具相关】zentao用例管理平台部署实践

2024-03-07 12:28

本文主要是介绍【工具相关】zentao用例管理平台部署实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 一、备份还原
      • 1、数据备份
        • 1.1、前言
        • 1.2、版本备份
        • 1.3、数据备份
      • 2、数据恢复
        • 2.1、版本恢复
        • 2.2、数据恢复
    • 二、问题处理
      • 1、ERROR: SQLSTATE[HY000] [2002] Connection refused

一、备份还原

1、数据备份

1.1、前言

禅道系统从10.6版本以后,新增数据备份设置功能,允许管理员可以按自己实际需求来备份指定文件和目录。

  • 定时任务
    访问入口:后台系统定时
    注:默认情况下,每天凌晨00:30定时进行备份任务操作(备份数据和附件),可根据实际情况配置定时任务启动时间

  • 任务列表

小时命令备注最后执行状态操作
300***moduleName=backup&methodName=backup备份数据和附件20-07-07 00:30:07运行中禁用 编辑
  • 备份配置
    访问入口:后台数据备份
    注:默认情况下,每天定时将数据备份到/opt/zbox/app/zentao/tmp/backup/目录下,可根据实际情况配置备份目录和保留时间
1.2、版本备份

当禅道进行数据恢复时,需要搭建相同版本禅道环境(保证网页可正常访问),之后方可进行数据导入恢复操作,此处记录两种版本恢复方法
–官方下载版本:从官方下载相同禅道版本
–人为备份版本:人为手动备份当前禅道版本

  • 官方下载版本

禅道 12.0.stable 版本发布,新增年度总结,将版本库部分功能移植到开源版,修复Bug

示例环境使用禅道12.0 开源版版本环境,Linux一键安装包64位下载地址详见官方下载源

  • 人为备份版本

停止zbox服务进程,对/opt/zbox/整个目录进行全量备份

/opt/zbox/zbox stop
tar zcf /mnt/zbox_system_backup/`date "+%Y-%m-%d"`-zbox.tar /opt/zbox
/opt/zbox/zbox start
1.3、数据备份
  • 预先将备份空间备份到挂载到/mnt/zbox_system_backup/目录下
  • 设置备份目录为/mnt/zbox_system_backup/,备份时间为14

在这里插入图片描述

[root@node40 ~]# ll /mnt/zbox_system_backup/
total 187468
drwxr-xr-x 10 nobody nogroup       160 Oct 26 16:38 202010261638031.code
drwxr-xr-x  5 nobody nogroup        68 Oct 26 16:38 202010261638031.file
-rw-r--r--  1 nobody nogroup  81509397 Oct 26 16:38 202010261638031.sql.php

2、数据恢复

官方提供两种备份方案如下,示例使用方案二
.
禅道后台-备份 备份还原操作步骤:
方案一:
1、搭建相同版本号的禅道,保证网页可以正常访问;
2、拷贝备份文件到新禅道相同目录,分配读写权限;
3、网页登录新禅道 后台-备份 点击还原按钮进行还原。
方案二:
1、搭建相同版本号的禅道,保证网页可以正常访问;
2、将备份文件 sql.php 用文本编辑器打开删除开头的 ,然后重命名去掉.php,然后导入禅道数据库中;
3、将附件文件 file.zip.php 用文本编辑器打开删除开头的 ,然后重命名去掉.php,然后解压放到新禅道 www/data/upload/ 下面。

2.1、版本恢复
[root@node41 ~]# tar -zxvf ZenTaoPMS.12.0.stable.zbox_64.tar.gz -C /opt/
[root@node41 ~]# /opt/zbox/zbox -ap 8001 -mp 3307
[root@node41 ~]# /opt/zbox/zbox start
[root@node41 ~]# lsof -i:8001
[root@node41 ~]# curl -i http://127.0.0.1:8001/zentao/

注:
1、修改apache端口为8001(-ap 8001),修改mysql端口为3307(-mp 3307)
2、禅道环境搭建成功后,检查端口启动及网页是否可以正常访问

2.2、数据恢复

预先将最新的备份文件拷贝到目标禅道系统下

[root@node41 zbox_system_backup]# ll
total 79600
drwxr-xr-x 10 root root      160 Oct 26 17:17 202010261638031.code
drwxr-xr-x  5 root root       68 Oct 26 17:17 202010261638031.file
-rw-r--r--  1 root root 81509397 Oct 26 17:17 202010261638031.sql.php
  • 代码文件恢复

1)、将代码文件覆盖到禅道系统目录下/opt/zbox/app/zentao/

[root@node41 zbox_system_backup]# \cp -rf /mnt/zbox_system_backup/202010261638031.code/* /opt/zbox/app/zentao/
  • 数据库恢复

1)、重命名数据库文件xx.sql.php,去掉.php后缀

 [root@node41 zbox_system_backup]# cp 202010261638031.sql.php 202010261638031.sql

2)、修改数据库文件xx.sql.php,删除第一行信息<?php die();?>

[root@node41 zbox_system_backup]# sed -i -e '/<?php die();?>/d' 202010261638031.sql

3)、导入禅道zentao数据库内

[root@node41 zbox_system_backup]# /opt/zbox/bin/mysql -u root -P 3306 -p zentao < 202010261638031.sql

注:禅道默认用户名为root,默认密码为空或者123456

4)、检查数据库导入情况,默认情况下,禅道数据库文件存放于/opt/zbox/data/mysql/zentao/目录下

[root@node41 ~]# ls -la /opt/zbox/data/mysql/zentao/zt_* | wc -l
198
  • 附件恢复
[root@node41 zbox_system_backup]# \cp -rf  202010261638031.file/* /opt/zbox/app/zentao/www/data/

二、问题处理

本篇主要记录在使用禅道过程中出现的一些问题及对应处理措施

1、ERROR: SQLSTATE[HY000] [2002] Connection refused

  • **问题描述:**访问http://127.0.0.1:8001 可以访问成功,但访问http://127.0.0.1:8001/zentao 时访问失败

在这里插入图片描述

  • **原因分析:**查看mysql服务进程启动端口为3307(mysql.sock --port=3307),但zentao配置文件记录的访问端口却是3308(config->db->port = ‘3308’;),zentao访问mysql端口与实际mysql端口不一致,导致zentao访问失败
[root@node41 ~]# ps -ef | grep mysql
mysql      10606       1  0 Oct10 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
mysql      11419   10606  1 Oct10 ?        06:00:32 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
root     2395121       1  0 09:09 pts/0    00:00:00 /bin/sh /opt/zbox/run/mysql/mysqld_safe --defaults-file=/opt/zbox/etc/mysql/my.cnf
nobody   2395367 2395121  0 09:09 pts/0    00:00:01 /opt/zbox/run/mysql/mysqld --defaults-file=/opt/zbox/etc/mysql/my.cnf --basedir=/opt/zbox/run/mysql --datadir=/opt/zbox/data/mysql --plugin-dir=/opt/zbox/run/lib/mysql/plugin --user=nobody --log-error=/opt/zbox/logs/mysql_error.log --pid-file=/opt/zbox/tmp/mysql/mysqld.pid --socket=/opt/zbox/tmp/mysql/mysql.sock --port=3307
root     2423575 2378263  0 09:22 pts/0    00:00:00 grep --color=auto mysql
[root@node41 ~]# cat /opt/zbox/app/zentao/config/my.php 
<?php
$config->installed       = true;
$config->debug           = false;
$config->requestType     = 'PATH_INFO';
$config->db->host        = '127.0.0.1';
$config->db->port        = '3308';
$config->db->name        = 'zentao';
$config->db->user        = 'zentao';
$config->db->password    = '123456';
$config->db->prefix      = 'zt_';
$config->webRoot         = getWebRoot();
$config->default->lang   = 'zh-cn';
  • **处理措施:**修改/opt/zbox/app/zentao/config/my.php配置文件,将zentao访问端口改为3307
    重启zentao服务进程,再次访问可正常访问
[root@node41 ~]# cat /opt/zbox/app/zentao/config/my.php | grep port
$config->db->port        = '3307';
[root@node41 ~]# /opt/zbox/zbox restart

这篇关于【工具相关】zentao用例管理平台部署实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783512

相关文章

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

python uv包管理小结

《pythonuv包管理小结》uv是一个高性能的Python包管理工具,它不仅能够高效地处理包管理和依赖解析,还提供了对Python版本管理的支持,本文主要介绍了pythonuv包管理小结,具有一... 目录安装 uv使用 uv 管理 python 版本安装指定版本的 Python查看已安装的 Python

深入理解Apache Kafka(分布式流处理平台)

《深入理解ApacheKafka(分布式流处理平台)》ApacheKafka作为现代分布式系统中的核心中间件,为构建高吞吐量、低延迟的数据管道提供了强大支持,本文将深入探讨Kafka的核心概念、架构... 目录引言一、Apache Kafka概述1.1 什么是Kafka?1.2 Kafka的核心概念二、Ka

基于Python打造一个全能文本处理工具

《基于Python打造一个全能文本处理工具》:本文主要介绍一个基于Python+Tkinter开发的全功能本地化文本处理工具,它不仅具备基础的格式转换功能,更集成了中文特色处理等实用功能,有需要的... 目录1. 概述:当文本处理遇上python图形界面2. 功能全景图:六大核心模块解析3.运行效果4. 相

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Python 中的 with open文件操作的最佳实践

《Python中的withopen文件操作的最佳实践》在Python中,withopen()提供了一个简洁而安全的方式来处理文件操作,它不仅能确保文件在操作完成后自动关闭,还能处理文件操作中的异... 目录什么是 with open()?为什么使用 with open()?使用 with open() 进行