记一次服务器迁移,包括jira、svn

2024-06-22 13:18

本文主要是介绍记一次服务器迁移,包括jira、svn,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

公司新买的一个服务器,放在公司内部使用,准备将原来放在阿里云服务器上的jira迁移过来。原先将jira部署在阿里云上是由于公司还没有购买服务器,所以暂时部署在云上,结果用了一段时间之后,同事们经常反映速度太慢,而且jira使用的tomcat服务器占内存凶得很,经常达到800M之多,这个就有点昂贵了,毕竟买云服务器主要是给网站用的,所以必须将其迁移到公司内部,同时迁移的还有VisualSVN配置管理服务。这次迁移可谓是一波三折,折腾了我整整一天,晚上7点才下班(苦逼的IT民工)。

1,在新服务器上安装jira5.2.1,参考安装文档:win2003下安装破解汉化jira5步骤_史上最细节 - Testingba工作室 - 博客频道 - CSDN.NET

2,安装完成之后,将原jira上安装的插件一个不剩地在新jira上安装,这一点很重要,因为在迁移数据之前,我们要保证jira程序的一致性,否则迁移过来的数据可能出现异常。

3,准备完成之后,开始迁移数据。其实jira自己提供了有“导入/导出”功能,用于数据迁移,点击“系统”菜单,选择“导入/导出“,文件名填写备份数据的文件名,文件保存在JIRA的Application Data\JIRA\export目录下,但是这个备份不包括附件、图标、logos等。文件名我们命名为1120,备份完成之后,生成一个文件在export目录下。

4,将文件下载到新服务器上,同样将1120.zip放在”Application Data\JIRA\import“目录下,进入“系统”,“导入/导出”功能,选择“恢复数据”,文件名填写1120.zip,授权码不填,点击“恢复”,结果发现没这么简单,jira报了一个错:无效的授权码。那就增加一个授权码吧,授权码是什么东西,我导出数据的时候并没有要求我提供授权码,或者提供一个授权码给我啊,难道是安装JIRA时License中的那个串号,这个串号在”系统“,”授权“菜单中是可以看到的,那就试试吧,试的结果就是无论是填写新服务器的授权码还是旧服务器的授权码都不行。

5,那就尝试一下使用项目导入的功能吧,这个功能倒是不需要提供授权码,只需要提供备份文件,同样文件还是放在import那个目录下,但是这里要求将这个项目相关的附件放在attachments这个目录下,所以就把旧服务器上的”Application Data\JIRA\data\attachments“下所有项目的附件全部都下载到这个目录下,还是按项目为目录分好。开始导入,选择”下一页“,结果发现这样也不行,JIRA报了一个错误:问题类型****不存在,无法导入

6,尝试了”恢复数据“和”项目导入“都不行,那只有死马当活马医了,直接导入数据库吧,反正新装的JIRA也是空的。先把旧服务器上的jiradb备份下来,进入”SQL Server Management Studio“,选择jiradb数据库,“任务”,“备份”,将备份文件设置为jiradb.bak,下载到本地。

7,在新服务器上的数据库上选择jiradb,”任务“,”还原“,”文件和文件组“,还原的源中选择”源设备“,将jiradb.bak文件添加进来,将列表中的两项都选择,点击”确定“开始还原,结果还是报错,报的好像是3154号错误,那意思就是不在同一个实例上备份的数据无法进行还原,不应该啊。所以就在网上查找解决方案,下面这篇文章很好地解决了这个问题:

SQL2005备份集中的数据库备份与现有的数据库不同,错误号码:3154,解决方法

最后是通过新建一个查询,编写如下的SQL语句解决数据库jiradb到导入问题的,心里一阵窃喜:

RESTORE DATABASE jiradb

FROM DISK = 'F:\download\jirabackup\db.bak'
with replace,
MOVE 'jiradb' TO 'D:\SQLServer\MSSQL.1\MSSQL\DATA\test1.mdf',

MOVE 'jiradb_log' TO 'D:\SQLServer\MSSQL.1\MSSQL\DATA\test1_log.ldf'

8,打开jira服务,浏览器上输入地址打开,结果报了一堆的错误差点让我直接奔溃,到底还是不行啊,是啊,这种到数据库的方法在官方的导入数据说明中都没有提到,估计是不行了,但是我还是不死心,仔细分析了一下报的错误,估计就是打不开数据库,所以我就仔细查了一下用户jira的权限、jira下的dbconfig.xml配置,在数据库中的jira用户的设置中少了jiradb的映射,所以给jira用户的”用户映射“中增加了jiradb,并且角色身份选择为db_owner,将dbconfig.xml中的配置仔细检查了一遍,包括schema-name,用户名、密码、数据库地址。

9,重新打开jira,终于连接上了,看来直接导入数据库还是可以啊。别急,怎么项目问题一个都不在了,刚才导入数据库之后,我还特意看了一下jiraissue这个表,里面问题都在啊,这是怎么回事?估计是jira的索引问题,直接导入数据库,估计有很多关联的数据没有设置,所以导致了问题看不到。怎么办呢,回想刚才进行项目导入时,出现了"问题类型****不存在,无法导入"的错误,现在应该没有这些问题了,因为数据库全部到导进来了,数据应该都存在了,现在就缺少项目问题了,因为其他的比如状态、工作流、问题类型、项目等我检查了一下都存在。

10,重新进行项目导入,选择”系统“,”导入/导出“,”项目导入“,还是刚才jira导出的那个文件1120.zip,点击”下一页“,选择一个项目,导入,又报错,说什么”问题已经存在,无法导入”。那就删除issue表中的数据吧。

11,将jiraissue表中的数据清除,再进行“项目导入”,这下没有报错了,全部成功,检查了一下项目问题,都在,太好了,就按这样子,将一个一个项目都导入进去。至此,jira的数据迁移全部完成。


总结一下:

1,jira的数据迁移最简单的就是采用“导入/导出”的备份和恢复功能,如果这个不行,就采用数据库备份恢复的方式;

2,数据库恢复必须采用新建查询,执行sql语句的方式;

3,数据库恢复之后,单独删除jiraissue表中的所有内容,然后采用“项目导入”的方式,一个一个项目导入问题,这种方式导入的同时,需要将attachments目录下的附件全包拷贝到新jira的Application Data\JIRA\import\attachments目录,这样在恢复问题的同时,就会自动恢复项目的相关附件;

4,除了将数据库和附件恢复之外,还需要手动拷贝两个目录Application Data\JIRA\data\avatars和Application Data\JIRA\logos。



买JIRA上CSDN,特殊折扣购买通道:

http://atlassian.csdn.net/module/btc/atlassian/prduct_detail?project_id=445&module=34&product=9

CSDN开立Atlassian中文技术论坛更多交流分享请点击:

http://bbs.csdn.net/forums/atlassian


博文原创作者:newborn2012

这篇关于记一次服务器迁移,包括jira、svn的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

Conda虚拟环境的复制和迁移的四种方法实现

《Conda虚拟环境的复制和迁移的四种方法实现》本文主要介绍了Conda虚拟环境的复制和迁移的四种方法实现,包括requirements.txt,environment.yml,conda-pack,... 目录在本机复制Conda虚拟环境相同操作系统之间复制环境方法一:requirements.txt方法

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows Server 2025 搭建NPS-Radius服务器的步骤

《WindowsServer2025搭建NPS-Radius服务器的步骤》本文主要介绍了通过微软的NPS角色实现一个Radius服务器,身份验证和证书使用微软ADCS、ADDS,具有一定的参考价... 目录简介示意图什么是 802.1X?核心作用802.1X的组成角色工作流程简述802.1X常见应用802.

使用Nginx配置文件服务器方式

《使用Nginx配置文件服务器方式》:本文主要介绍使用Nginx配置文件服务器方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 为什么选择 Nginx 作为文件服务器?2. 环境准备3. 配置 Nginx 文件服务器4. 将文件放入服务器目录5. 启动 N