使用的是Jira Standalone版本, 安装后默认使用HSQL, 数据量有上限, 于是乎考虑将其转移至Oracle存储.
1. 先在Oracle中新建数据库或者表空间, 并创建个Jira使用的用户, 设置好权限.
2. 进入Jira管理界面, 左侧Import & Export-Backup Data to XML, 填写备份文件名, 点击Backup按钮保存当前数据库的数据.
3. 停止Jira服务, 进入Jira安装目录的conf子目录, 编辑server.xml, 修改Context的username, password, driverClassName和url属性段, 比如:
username="jira"
password="jira"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:scrs/scrs@211.88.26.101:1521:gftdb"
同时还要删除以下两行只适用于HSQL的属性
minEvictableIdleTimeMillis="4000"
timeBetweenEvictionRunsMillis="5000"
再添加上一行以存储大文本, 否则只能储存32K字节大小的文本
connectionProperties="SetBigStringTryClob=true"
4. 修改Jira目录下的atlassian-jira\WEB-INF\classes\entityengine.xml文件
将datasource里的field-type-name改成oracle10g并删除schema-name="PUBLIC", 因为它只适用于HSQL而不适用于Oracle
5. 拷贝Oracle公司发布的JDBC驱动ojdbc14.jar到Jira目录下的common\lib
6. 最后一步, 启动Jira, 打开页面会出现配置向导, 此时选择恢复并填好之前备份好的xml文件名(注意需要填写绝对路径)和index索引目录路径, 确定就完成数据库迁移工作了, 嘿嘿.
附: 似乎备份的数据不包括邮件服务器的设置, 可能恢复后还得手动配置下这个, 还好工作量不大.