Jira アプリケーションの Oracle への接続

ここでは、JIRA を Oracle データベースに接続する方法を解説します。

はじめる前に

  • ご使用の Oracle のバージョンがサポートされていることを確認します。サポート対象プラットフォームを参照してください。
  • 以下の既知の問題を確認してください。
  • Oracle JDBC 12.2.0.1 ドライバを Oracle Web サイトからダウンロードします。このファイルは後で Jira インストール ディレクトリにコピーする必要があります。
  • Jira を他のサーバーに移行する場合は、データのエクスポートを XML バックアップ形式で作成します。その後、「データベースの切り替え」で説明されているように、元のデータベースから新しいデータベースにデータを移行できます。
  • セットアップ ウィザードを実行中の場合を除き、開始する前に Jira をシャットダウンします。

このページの内容:

1. Oracle の設定

  1. Jira で使用できるデータベース インスタンスがあることを確認します (新規作成または既存インスタンスの使用)。
  2. 対象のデータベース インスタンス内で、Jira が接続時に使用するユーザーを作成します。(例: jiradbuser)。
    作成したデータベース ユーザーの名前を覚えておいてください。後述の手順で、このデータベースへの Jira の接続を設定する時に必要になります。

    create user <user> identified by <user_pass> default tablespace <tablespace_name> quota unlimited on <tablespace_name>;
    

    注意:

    • Oracle でユーザーを作成すると、Oracle は自動的に「スキーマ」を作成します。

    • ユーザーの作成時に、表オブジェクト用の表領域を指定する必要があります。

  3. ユーザーが次の権限を持つことを確認します。

    grant connect to <user>;
    grant create table to <user>;
    grant create sequence to <user>;
    grant create trigger to <user>;

    上記に示された権限と完全に一致する権限がユーザーに付与されていることが非常に重要です。Jira ではこれらの権限のみ必要です。適用される権限に過不足がある場合、一部の Jira 機能が正しく動作しない可能性があります。

    Jira の機能が期待どおりに動作するように、ユーザーには特定の権限を付与し、ロールは割り当てないようにすることをお勧めします。

    たとえば、RESOURCE ロールをユーザーに付与し、RESOURCE ロールに SELECT ANY TABLE 権限が付与される場合、Jira の機能は期待どおりに動作しない可能性があります。 

    したがって、上記に示した権限をそのままユーザーに付与することをお勧めします。

  4. データベースに設定された文字エンコード形式が Jira と同じであることを確認します。推奨されるエンコーディングは、AL32UTF8 (Oracle の同等なエンコーディングは Unicode UTF-8) です。

2. Oracle JDBC ドライバのダウンロード

Jira では Oracle JDBC 12.2.0.1 ドライバが必要です。Oracle の Web サイトからダウンロードし、インストール ディレクトリにコピーします。

  1. Oracle JDBC ドライバをダウンロードします

  2. ダウンロードした ojdbc8.jar ファイルを Jira インストール ディレクトリの lib/ ディレクトリに保存します。 

3. Oracle データベースに接続するための Jira サーバーの設定

Oracle データベースに接続するために JIRA サーバーを設定する方法は2つあります。

  • Jira セットアップ ウィザード を使用する — Jira をインストールした直後で、初めて Jira をセットアップする場合はこの方法を使用します。設定は、Jira ホーム ディレクトリdbconfig.xml ファイルに保存されます。
  • Jira 設定ツールを使用する — 既存の Jira インスタンスがある場合はこの方法を使用します。設定は、Jira ホーム ディレクトリdbconfig.xml ファイルに保存されます。

各設定手法の手順説明

Jira セットアップ ウィザード

ブラウザから初めて Jira にアクセスすると、Jira セットアップ ウィザード が表示されます。

  1. 最初の画面 の “Configure Language and Database” で、 “Database Connection” に My own database を選択します。
  2. データベース タイプOracle に設定します。
  3. 下記の データベース接続関連フィールド を参照し、フィールド入力を行います。
  4. 接続をテストし、保存します。

Jira 設定ツール

  1. Jira 設定ツールを次のように実行します。
  2. [Database] タブを選択し、”Database type” に ”Oracle” を設定します。
  3. 下記の データベース接続関連フィールド を参照し、フィールド入力を行います。
  4. 接続をテストし、保存します。Jira と Oracle を手動で設定したときに指定したすべてのカスタム設定 (例: <connection-properties>SetBigStringTryClob=true</connection-properties> の追加) は削除されます。削除された設定は手動で回復させる必要があります。
  5. Jira を再起動します。

データベース接続フィールド

セットアップウィザード / 設定ツール dbconfig.xml 説明
ホスト名

<url> タグに配置されます (下記の例の太字部分):<url>jdbc:oracle:thin:@dbserver:1521/ORCL</url>

Oracle サーバーがインストールされたサーバー マシンのマシン名または IP アドレスです。
ポート

<url> タグに配置されます (下記の例の太字部分):
<url>jdbc:oracle:thin:@dbserver:1521/ORCL</url>

Oracle サーバーがリッスンする TCP/IP ポートです。Oracle に設定されたデフォルト ポート番号は “1521” です。
SID

<url> タグに配置されます (下記の例の太字部分):<url>jdbc:oracle:thin:@dbserver:1521/ORCL</url>

Oracle の「システム識別子」です。多くの Oracle サーバーに対するこのデフォルト値は、”ORCL” です。Oracle Express Edition を使用している場合は、”XE” です。
ユーザ名

<username> タグに配置されます (下記の例の太字部分):
<username>jiradbuser</username>

Jira が Oracle サーバーに接続するために使用するユーザー。上記 ステップ 1 で作成しています。

パスワード <password> タグに配置されます (下記の例の太字部分):
<password>jiradbuser</password>
Oracle サーバーが認証に使用するユーザーのパスワードです。

dbconfig.xml ファイルのサンプル

上記の dbconfig.xml ファイルに含まれる、pool で始まる <jdbc-datasource/> の子要素の詳細については、「データベース接続のチューニング」を参照してください。

<?xml version="1.0" encoding="UTF-8"?>

<jira-database-config>
  <name>defaultDS</name>
  <delegator-name>default</delegator-name>
  <database-type>oracle10g</database-type>
  <jdbc-datasource>
    <url>jdbc:oracle:thin:@dbserver:1521/ORCL</url>
    <driver-class>oracle.jdbc.OracleDriver</driver-class>
    <username>jiradbuser</username>
    <password>password</password>
    <pool-min-size>20</pool-min-size>
    <pool-max-size>20</pool-max-size>
    <pool-max-wait>30000</pool-max-wait>
    <pool-max-idle>20</pool-max-idle>
    <pool-remove-abandoned>true</pool-remove-abandoned>
    <pool-remove-abandoned-timeout>300</pool-remove-abandoned-timeout>
 
    <validation-query>select 1 from dual</validation-query>
    <min-evictable-idle-time-millis>60000</min-evictable-idle-time-millis>
    <time-between-eviction-runs-millis>300000</time-between-eviction-runs-millis>
  
    <pool-test-while-idle>true</pool-test-while-idle>
    <pool-test-on-borrow>false</pool-test-on-borrow>
  </jdbc-datasource>
</jira-database-config>


4. Jira の起動

これで、Oracle データベースに接続するための Jira の設定が完了しました。次のステップでは、これを起動させます。

(tick) これで、Jira を Oracle に接続することができました。

既知の問題

  • カスタム ワークフローや、説明、コメント、またはカスタム フィールドに長いテキスト値を持つ課題の処理で問題が発生する場合、dbconfig.xml ファイルで </jdbc-datasource> 要素の子要素として <connection-properties>SetBigStringTryClob=true</connection-properties> を追加してみてください。この接続プロパティによって問題が解決する可能性があります。設定後に Jira を再起動する必要があります。
最終更新日 2019 年 7 月 2 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.