项目管理软件JIRA安装时连接Oracle数据库教程

0
JIRA Oracle C/C++ 数据库连接 ico 12476 次浏览

本文主要介绍连接JIRA到Oracle数据库。

首先

  • 检查Oracle的版本是否支持,详见支持的平台
  • 如果是转移JIRA到另一台服务器,先导出数据为XML备份,然后将旧数据库中的数据传输到新的数据库。
  • 在开始前关闭JIRA,除非你正在运行Setup Wizard。

1.配置Oracle

  1. 确保有适合JIRA的数据库实例(新建或使用已存在的)。
  2. 在这个数据库实例里创建一个将与JIRA连接的用户如:jiradbuser
    create user < user> identified by < user_pass> default tablespace < tablespace_name> quota unlimited on < tablespace_name>;
    注意:
    • 当你在Oracle中创建一个用户时,Oracle会自动创建一个'schema'。
    • 当创建用户时,表对象的空间必须被指定。
    • 当创建用户时,只能用Oracle支持的不带引号的字符。至少已有一个已知的使用不支持的字符时出现的问题(Cannot Create XML Backup Due to "Could not get unique fields for table")。
  3. 确保创建的用户有下列权限:
    • grant connect to < user>;
    • grant create table to < user>;
    • grant create sequence to < user>;
    • grant create trigger to < user>;
    (warning)如果权限分配不正确,JIRA实例可能不会正常工作,参考JIRA XML Backup and Restore fails with error: Could not find column <column_name> in previously parsed query里的描述。所以只分配上面提到的权限。
  4. 确保数据库与JIRA配置为使用相同的字符编码,推荐使用AL32UTF8(Oracle等效的为Unicode UTF-8)。

2.将Oracle JDBC驱动程序复制到应用服务器(仅JIRA WAR)

(warning)如果安装的JIRA'Recommended'分布可跳过此步,其中包含Oracle JDBC驱动。而JIRA WAR分布不包含该驱动。

  1. 下载Oracle JDBC驱动(从Oracle网站)。
  2. 添加适当的Oracle JDBC驱动jar(ojdbc6.jar for JDK 1.6)到lib/目录。

注意一些Oracle JDBC驱动版本不能与JIRA一起使用或内在不稳定。已知的Oracle驱动有关的问题如下:

  • 建议使用11.2.x版本的Oracle驱动(是向后兼容的)。许多其他版本的驱动已出现以下问题:
    • 10g版本10.2.0.3.0发布的2JDBC驱动产生ORA-01461的错误,详见Oracle Support网站。
    • 10g版本10.2.0.1.0发布的2JDBC驱动出现有一些数据库挂断的问题。
    • 10g版本10.1.0.4发布的1JDBC驱动虽不挂断,但会抛出ArrayIndexOutOfBoundsExceptions异常。
  • 注意:JDK 1.6不支持JIRA6.0及以后的版本。但可以使用Oracle JDBC驱动JDK 1.7替代JDK 1.6。

3.配置JIRA服务器来连接Oracle数据库

三种连接Oracle数据库的方法:

  • 使用JIRA安装向导(不适用于JIRA WAR)-如果你已经安装JIRA并且是第一次设置,你的设置将被保存到JIRA主目录的dbconfig.xml文件里。
  • 使用JIRA配置工具(不适用于JIRA WAR)-如果有已存在的JIRA实例,你的设置将被保存到JIRA主目录的dbconfig.xml文件里。
  • 手动配置-只有当你有JIRA WAR实例或控制台时使用这种方法链接到JIRA服务器。你需要手动更新JIRA主目录里的dbconfig.xml文件。

每种配置方法的说明:


JIRA setup wizard 当首次在浏览器连接JIRA时,JIRA设置向导就会出现。
  1. 在最开始页面的'Configure Language and Database'设置Database ConnectionMy own database
  2. 设置Database TypeOracle
  3. 按照下面描述的数据库连接字段填写字段。
  4. 测试连接并保存。
JIRA configuration tool
  1. 根据下面运行JIRA配置工具:
    • Windows:打开命令提示符,运行JIRA安装目录的bin子目录文件config.bat。
    • Linux/Unix:打开控制台,运行JIRA安装目录的bin子目录文件config.sh。
    可能会出现失败的错误,参照此文章的解决方法。
  2. 导航到Database选项卡设置Database typeOracle
  3. 按照下面描述的数据库连接字段填写字段。
  4. 测 试连接并保存。当手动在JIRA配置Oracle时任何自定义设置(如adding the < connection-properties>SetBigStringTryClob=true< /connection-properties>)都会被删掉,因此需要手动恢复它们。
  5. 重启JIRA。
Manually
  1. 找到JIRA主目录根目录下的dbconfig.xml文件。
    • 如果该文件不存在,创建该文件,将XML示例代码(如下)复制粘贴到该文件。
  2. 根据下面数据库连接字段描述更新该文件。通过在每一个末端添加'amp;'转义所有'&'字符。
    • 注意:<database-type/>元素必须指定数据库类型,如:oracle10g。如果你忘记指定数据库类型就启动JIRA,那么数据库表将不会被正确创建。若遇到类似问题,参见指定不正确的数据库类型进行解决。
  3. 保存文件并重启JIRA。


数据库连接字段:

setup wizard/configuration tool dbconfig.xml 描述
Hostname 位于< url>标记(例如下面的粗体文字):
< url>jdbc:oracle:thin:@dbserver:1521:ORCL< /url>
安装Oracle服务器的机器名称或IP地址。
Port 位于< url>标记(例如下面的粗体文字):
< url>jdbc:oracle:thin:@dbserver:1521:ORCL< /url>
MySQL服务器正在监听的TCP/IP端口。默认端口号是'1521'。
SID 位于< url>标记(例如下面的粗体文字):
< url>jdbc:oracle:thin:@dbserver:1521:ORCL< /url>
Oracle "System Identifier"。大多数Oracle服务器默认值是'ORCL'。如果使用的是Oracle Express Edition,默认的将会是'XE'。
Username 位于< username>标记(例如下面的粗体字):
< username>jiradbuser< /username>
JIRA用于连接Oracle服务器的用户。应在上面第一步时创建。
Password 位于< password>标记(例如下面的粗体字):
< password>jiradbuser< /password>
用于与Oracle服务器身份验证的用户密码。


dbconfig.xml文件示例:

XML文件示例

4.启动JIRA

现在JIRA连接到Oracle数据库就配置好了。下一步就是启动JIRA。

  • 如果正在使用JIRA的'recommended'分配,启动它,并观察日志中是否存在错误。
  • 如果使用的是JIRA WAR分配,重建并重新部署在应用服务器的Web应用程序。

已知的问题和解决方案:

  • 当 处理自定义工作流或拥有长描述、评论、或自定义字段值的问题时,如果遇到问题,试着在dbconfig.xml文件里添加< connection-properties>SetBigStringTryClob=true< /connection-properties>作为< /jdbc-datasource>元素的子元素。添加此连接属性就可解决这一问题。注意你需要重启来使这一设置产生作用。
转自:JIRA中文教程

请尽量让自己的答案能够对别人有帮助

6个答案

默认排序 按投票排序