【工具相关】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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/434573.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

lv20 QT进程线程编程

知识点&#xff1a;启动进程 &#xff0c;线程 &#xff0c;线程同步互斥 1 启动进程 应用场景&#xff1a;通常在qt中打开另一个程序 process模板 QString program “/bin/ls"; QStringList arguments; arguments << "-l" << “-a";QPro…

Java进阶-IO(4)

前面几篇介绍了java IO的基础部分&#xff0c;现在进入核心内容的学习&#xff0c;如File类、动态读取和序列化等&#xff0c;如下。 一、File类 1、概述 是 java.io 包中唯一代表磁盘文件本身的对象&#xff08;可以通过 File 类操作文件和目录&#xff09;&#xff0c;定义…

【Flutter 】get-cli init报错处理

报错内容 get init 命令跳出,报错内如下 Select which type of project you want to creat Synchronous waiting using dart:cli waitFor Unhandled exceotion . Dart WaitforEvent is deprecated and disabled by default. This feature will be fully removed in Dart 3.4 …

Docker安装MySQL镜像实战分享

今天我们对Docker安装MySQL镜像进行实战分享&#xff0c;以更深入的了解容器的使用场景。我们在云付服务器Ubuntu环境上已经安装好了Docker&#xff0c;接下来我们开始安装mysql5.7版本&#xff0c;安装mysql有两种思路&#xff0c;直接拉取mysql镜像和自己做mysql镜像&#xf…

【python基础学习10课_面向对象、封装、继承、多态】

一、类与对象 1、类的定义 在类的里面&#xff0c;称之为方法。 在类的外面&#xff0c;称之为函数。类&#xff1a;人类&#xff0c;一个族群&#xff0c;是一个群体类的语法规则&#xff1a;class 自定义的类名():属性 -- 变量方法 -- 函数类&#xff0c;首字母大写&#x…

软考-中级-系统集成2023年综合知识(五)

&#x1f339;作者主页&#xff1a;青花锁 &#x1f339;简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java微服务架构公号作者&#x1f604; &#x1f339;简历模板、学习资料、面试题库、技术互助 &#x1f339;文末获取联系方式 &#x1f4dd; 软考中级专栏回顾 专栏…

阿里云服务器配置选择哪个比较好?看花眼了

阿里云服务器配置怎么选择&#xff1f;CPU内存、公网带宽和系统盘怎么选择&#xff1f;个人开发者或中小企业选择轻量应用服务器、ECS经济型e实例&#xff0c;企业用户选择ECS通用算力型u1云服务器、ECS计算型c7、通用型g7云服务器&#xff0c;阿里云服务器网aliyunfuwuqi.com整…

Java常用笔试题,面试java对未来的规划

最重要的话 2021年&#xff0c;真希望行业能春暖花开。 去年由于疫情的影响&#xff0c;无数行业都受到了影响&#xff0c;互联网寒冬下&#xff0c;许多程序员被裁&#xff0c;大环境格外困难。 我被公司裁掉后&#xff0c;便着急地开始找工作&#xff0c;一次次地碰壁&#…

微信jsSDK前端签名错误,巨坑; 前后端分离的一大失误。

微信 JS 接口签名校验工具 1. 确保你后端生成的签名是正确&#xff0c;这个是第一步。否则后面都是白扯。 以用上面微信自带的验证签名工龄进行验证。 确保生成的签名和你的签名是一致的。 2. timestamp需要是字符串类型. 3. 切记&#xff0c;URL不要encode&#xff0c;如果…

9.12零钱兑换(LC518-M)(开始完全背包,与01背包的不同仅在于遍历顺序)

算法&#xff1a; 这是一道典型的背包问题&#xff0c;一看到钱币数量不限&#xff0c;就知道这是一个完全背包。 但本题和纯完全背包不一样&#xff0c;纯完全背包是凑成背包最大价值是多少&#xff0c;而本题是要求凑成总金额的物品组合个数&#xff01; 动规五步曲&#…

剑指offer--c++--n个骰子的点数

目录 题目&#xff1a; 题目分析&#xff1a; 最后编写代码&#xff1a; 输出结果 题目&#xff1a; 把n个骰子扔在地上&#xff0c;所有骰子朝上一面的点数之和为s。输入n&#xff0c;打印出s的所有可能的值出现的概率。 感谢大佬的帮助&#xff1a;https://www.cnblogs.c…

人人都写过的6个bug

大家好&#xff0c;我是知微。 程序员写bug几乎是家常便饭&#xff0c;也是我们每个人成长过程中难以避免的一部分。 为了缓解这份“尴尬”&#xff0c;今天想和大家分享一些曾经都会遇到过的bug&#xff0c;让我们一起来看看这些“经典之作”。 1、数组越界 #include <…

数据库-DDL

show databases; 查询所有数据库 select database(); 查询当前数据库 use 数据库名&#xff1b; 使用数据库 creat database[if not exists] 数据库名…

成都源聚达:开抖音店铺分数需要达到多少

在数字化浪潮中&#xff0c;抖音以其独特的平台魅力吸引了无数商家入驻。但想要开设一家抖音店铺并非随意之举&#xff0c;它需要商家达到一定的评分标准。这如同参加一场考试&#xff0c;只有成绩合格者才有资格入座。那么&#xff0c;这个分数线究竟是多少呢? 据官方数据显示…

力扣hot100:560.和为K的子数组(前缀和+哈希表)

分析&#xff1a; 这个题目乍一看&#xff0c;数据大小用暴力解法大概率会超时&#xff0c;可能想用双指针&#xff0c;但是问题出现在 可能存在负数&#xff0c;也就是说即使是找到了一个答案&#xff0c;后面也可能存在负数和正数抵消&#xff0c;又是答案&#xff0c;因此不…

【Linux】文件传输工具lrzsz的安装与使用

目录 一、关于lrzsz 二、安装lrzsz 三、lrzsz的说明及使用 1、上传命令rz 2、下载命令sz 一、关于lrzsz 在开发的过程中&#xff0c;经常遇到 需要在 Linux 和 Windows 之间上传下载文件的情况 这时&#xff0c;一般都是使用 FTP 或者 WinSCP 工具进行上传下载, 虽然也能…

用ChatGPT计算植被归一化指数NDVI并出图的详细教程

用ChatGPT结合GIS计算植被归一化指数NDVI出图教程 用ENVI计算比较繁琐&#xff0c;如今AI的盛行&#xff0c;我们可以轻松解决计算问题&#xff0c;只需1一分钟变可以出图。 详细教学请看上方视频步骤。 更多ChatGPT教学内容请见&#xff1a;ChatGPT结合GIS&#xff1a;一分钟…

深度学习_18_模型的下载与读取

在深度学习的过程中&#xff0c;需要将训练好的模型运用到我们要使用的另一个程序中&#xff0c;这就需要模型的下载与转移操作 代码&#xff1a; import math import torch from torch import nn from d2l import torch as d2l import matplotlib.pyplot as plt# 生成随机的…

服务器为什么会卡顿,出现卡顿情况怎么办

从维护服务器的角度来看&#xff0c;服务器卡顿是一种常见的问题&#xff0c;但服务器卡顿可能会影响到网站、游戏或平台的正常访问和运行&#xff0c;所以出现卡顿问题首先需要对服务器进行全面的检查&#xff0c;确定卡顿原因&#xff0c;然后选取适合的解决方案&#xff0c;…

基于Spring Boot的秒杀系统(附项目源码+论文)

摘要 社会发展日新月异&#xff0c;用计算机应用实现数据管理功能已经算是很完善的了&#xff0c;但是随着移动互联网的到来&#xff0c;处理信息不再受制于地理位置的限制&#xff0c;处理信息及时高效&#xff0c;备受人们的喜爱。本次开发一套基于Spring Boot的秒杀系统&am…