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_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_HOME进行替换是最简单的方式,也可以只将attachments等所需要的信息进行替换后再重启。
方式2:通过数据库直接导入
如果有之前导出的sql,因为sqldump对表操作的方式是:drop -> create ->lock ->insert ->unlock,所以可以直接对新的环境的jira的mysql数据库进行导入,可使用如下命令: mysql -u用户名 -p用户密码 数据库名称 < jirabackup.sql
然后替换JIRA_HOME等后重启服务
方式3
替换mysql的数据库文件/JIRA_HOME等后重启服务
总结
以上方式在实际迁移的时候可以结合进行,另外license的信息虽然在数据库表中有所保存,在迁移之前进行妥善保存,建议两者可以同时运行,新版运行成功之后再考虑删除旧版。