JIRA數據庫的遷移,從HSQL到MYSQL/Oracle


Jira數據庫遷移,從HSQL到MYSQL

  1. 通過JIRA管理員登錄,進入“管理員頁面”,“系統”--“導入&導出”,以XML格式備份數據。
  2. 在MySQL中創建Schema,命名為jira
  3. 關閉JIRA服務
  4. 備份一下JIRA的安裝目錄和數據目錄
  5. 在JIRA的數據目錄下刪除文件:dbconfig.xml
  6. 重新啟動JIRA服務
  7. 再訪問JIRA,會再次出現第一次安裝時候的數據庫配置。在這里輸入MySQL的地址、用戶名、密碼、數據庫名稱等,測試連接成功后,點擊下一步
  8. 選擇“import your existing data”,將第一步導出的XML導入,至此完成數據庫遷移。


JIRA使用自帶的嵌入式數據庫還是比較快的,不過占用內存太大。

1.將項目導出成XML文件。

2、停止JIRA服務。

3.安裝MYSQL,最好將MYSQL的字符集設置為UTF-8.在服務啟動所使用的my.ini中修改。

default-character-set=utf8

4.創建MYSQL數據庫,create database jiradb character set utf8;,如果不是UTF8的字符集,長的文本導入時會報錯,無法導入。

5.創建連接用戶,密碼。 如果連接的是遠程的數據庫,請在用戶配置中HOSTNAME這一欄,標明應用服務器的IP。(我用Navicat mysql配置MYSQL數據庫的)

6.修改conf/server.xml

<Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false">
          <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
            username="[enter db username]"
            password="[enter db password]"
            driverClassName="com.mysql.jdbc.Driver"
            url="jdbc:mysql://localhost/jiradb?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=UTF8"
           [ 刪除這兒的 minEvictableIdleTimeMillis 和 timeBetweenEvictionRunsMillis 參數配置]        />

7、配置 JIRA Entity Engine

<!-- DATASOURCE - You will need to update this tag for your installation.

-->
  <datasource name="defaultDS" field-type-name="mysql"
     [ 如果這句存在的話,請刪除。schema-name="PUBLIC" ]

8.MySQL driver

 將MySQL JDBC 驅動 (mysql-connector-java-3.x.x-bin.jar) 放在common/lib/ 目錄下,否則會報連接不到數據庫的錯誤。注意,在CLASSPATH不要放Debug版本的驅動 (mysql-connector-java-3.x.x-bin-g.jar) 否則會引起這個錯誤(JRA-8674).

9.啟動JIRA,看一下有沒有錯誤。一般如果報用戶名密碼不對,嘗試三次連接的,請檢查你的用戶密碼。報連接不到MYSQL的,請檢查你的MYSQL 驅動。啟動完成后,進入JIRA安裝頁面,將備份的XML文件導入就OK了。

 

 

遷移到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
 
注意: 按照官方網站說明, 選擇10.1.0.5版的驅動最佳, 其它版本的可能會導致掛起或者數據恢復時異常問題. 下載頁面: http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc101040.html, 選中Accept點擊下載 ojdbc14.jar (1,378,346 bytes) - classes for use with JDK 1.4 這個就對了.
 
6. 最后一步, 啟動Jira, 打開頁面會出現配置向導, 此時選擇恢復並填好之前備份好的xml文件名(注意需要填寫絕對路徑)和index索引目錄路徑, 確定就完成數據庫遷移工作了, 
 
附: 似乎備份的數據不包括郵件服務器的設置, 可能恢復后需要重新進行手動配置


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM