LoginSignup
0
0

More than 5 years have passed since last update.

JIRAのデータベースを変更する

Last updated at Posted at 2014-08-28

きっかけ & やりたいこと

最近JIRAを使っておりますが、まだ運用経験を蓄積する段階です。
(どこにデータが溜まるのか、とか、停止時になにが起こるか、とか…)

さて、セットアップはしたものの、本当はDBを HSQLではなくPostgreSQLに指定したかったのに うっかりHSQLでウィザードを進めてしまった…というケースが数回ありました(^^;

レアケースだとは思いますが、実際にどうしたかをアップします。

DBの切替方法

HSQLでデータをいくらか蓄積してしまっていた場合

切替を行う前に、すでにいくらか設定やチケットを作ってしまっていた場合は、いったん綺麗なDBで構成してから、論理バックアップ(XML)を使って復元することができます。

  • とりあえずDBを切り替える前に、XMLでのバックアップを取得します。
  • PostgreSQLやMySQLでセットアップを完了したあと、『バックアップから復元』を指定して、データをインポートします。

では、以下はDB切替の方法を2つご紹介。

新規にJIRAをインストールして、正しいDB設定でウィザードを完了

つまり、やり直しってことです。
一応、既存のインストールディレクトリはrenameしておきましょう…。

設定変更用のスクリプトを実行する

インストーラーを使わずに設定変更したい…と思ったのですが、最初は気がつかず、上記の再インストールを実施しました。
が、なにやら JIRA configuration tool というのがあるそうです!

今回、(またもDB設定忘れを経験したため)、ここを参考にして切替ました。

では、手順を。

# sh config.sh 
No JRE_HOME or JAVA_HOME environment variable is set - attempting to just run java command
Loading application properties from /opt/atlassian/jira/atlassian-jira/WEB-INF/classes/jira-application.properties
Reading database configuration from /data/application-data/jira/dbconfig.xml
No graphics display available; using console.
----------------------
JIRA Configurator v1.1
----------------------

--- Main Menu ---
  [H] Configure JIRA Home
  [D] Database Selection
  [W] Web Server (incl. HTTP/HTTPs configuration)
  [A] Advanced Settings
  [S] Save and Exit
  [X] Exit without Saving

Main Menu> D

DBの設定変更に進みます。

--- Database Selection ---
  Database Type : HSQL
  Instance      : (unused)
  Connect As    : sa / (no password)

* [H] HSQL (not for production use)
  [M] MySQL
  [O] Oracle
  [P] PostgreSQL
  [S] SQL Server (MS-SQL)

  [X] Return to Main Menu

Database Selection [H]> P

PostgreSQLを選びます。
すると、コマンドラインでDBの設定ウィザードが。

『接続テストしますか?』まで聞いてくれます!

PostgreSQL Database Configuration.
Hostname (localhost)> localhost
Port (5432)> 
Database (jira)> jiradb
Username (jira)> jira
Password (*****)> 
Test Connection  ([Y]/N)? > Y
Attempting to connect to localhost:5432/jiradb
Connection successful!

--- Database Selection ---
  Database Type : PostgreSQL
  Instance      : localhost:5432/jiradb
  Connect As    : jira / *****

  [H] HSQL (not for production use)
  [M] MySQL
  [O] Oracle
* [P] PostgreSQL
  [S] SQL Server (MS-SQL)

  [X] Return to Main Menu

メインメニューに戻ってSAVE。

--- Main Menu ---
  [H] Configure JIRA Home
  [D] Database Selection
  [W] Web Server (incl. HTTP/HTTPs configuration)
  [A] Advanced Settings
  [S] Save and Exit
  [X] Exit without Saving

Main Menu> S
Storing database configuration in /data/application-data/jira/dbconfig.xml
Settings saved successfully.

設定ファイルが下記変わった模様です!

いよいよ起動!

initスクリプトで起動させてみると….。
あれれ?
エラーになってます!

change-after.png

The schema-name="PUBLIC" only works for a field-type-name of "hsql".

と、文句を言われています..。

別環境ですでに稼働しているJIRA / PostgreSQLの設定を確認すると、schema-name="public" と小文字。
早速修正してプロセス再起動をすると….。

めでたく起動すると、セットアップウィザードの画面が出ますが、ここではDBの選択ダイアログは出て来ません。
ちゃんとPostgreSQLを使う前提になっている模様です :)

jira-setup.png

※なお、dbconfig.xmlを修正しても、再起動しないと反映されませんでした。

セットアップ完了後に確認

基本のセットアップが終わったので、管理画面の『システム情報』から確認してみます。

jira-config.png

ちゃんとDBがPostgreSQLになっています :)
よかった良かった。

備考

上記、ツールからの設定変更は後から知ったので、それまでは設定用のxmlファイルを調整してあれこれいじったり、インストールツールから最初からやりなおしていました….

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0