JIRA实践基础(3):数据迁移方式

时间:2024-05-20 13:01:57

Jira的需要迁移的数据主要存在数据库和HOME目录下的data文件夹下,另外Jira还提供了从页面进行数据备份和恢复的快捷方式,结合使用一般即可完成。

备份数据源

一般Jira需要备份的数据主要有如下内容:

数据 说明
数据库 外接数据库中存储的数据,参看前文使用mysql安装的详细信息,即jira数据库
附件 JIRA_HOME/data/attachments
头像 JIRA_HOME/data/avatars
JIRA_HOME /var/atlassian/jira

数据导出(备份)

方式1:通过Jira提供的功能进行备份

管理员身份登录之后,在 系统 -> 备份系统 菜单可进行备份操作,输入备份文件名称,数据将会导出成xml形式,整体的文件信息会打成一个zip文件
JIRA实践基础(3):数据迁移方式
然后在对JIRA_HOME和附件等信息进行备份

方式2: 直接对数据库进行备份

使用sqldump直接对数据库进行备份,可使用如下命令
mysqldupm -u用户名 -p用户密码 数据库名称 --hex-blob >jirabackup.sql

然后在对JIRA_HOME和附件等信息进行备份

方式3: 直接对数据库文件进行备份

mysql中的数据库文件直接进行保存,在新的数据库中展开即可
同时对JIRA_HOME和附件等信息进行备份

数据导入(恢复)

方式1:通过Jira提供的功能进行备份

如果使用Jira导出的zip文件,这里可以接着使用jira提供的菜单进行导入。但是目前的版本经常容易出错。管理员身份登录之后,在 系统 -> 恢复系统 菜单可进行备份操作,事前将用户恢复的备份文件保存到JIRA_HOME/import目录下。输入备份zip文件,数据将会导入进去
JIRA实践基础(3):数据迁移方式
同时将JIRA_HOME进行替换是最简单的方式,也可以只将attachments等所需要的信息进行替换后再重启。

方式2:通过数据库直接导入

如果有之前导出的sql,因为sqldump对表操作的方式是:drop -> create ->lock ->insert ->unlock,所以可以直接对新的环境的jira的mysql数据库进行导入,可使用如下命令:
mysql -u用户名 -p用户密码 数据库名称 < jirabackup.sql

然后替换JIRA_HOME等后重启服务

方式3

替换mysql的数据库文件/JIRA_HOME等后重启服务

总结

以上方式在实际迁移的时候可以结合进行,另外license的信息虽然在数据库表中有所保存,在迁移之前进行妥善保存,建议两者可以同时运行,新版运行成功之后再考虑删除旧版。